我应该创建一个显示消息的窗口,但是我的消息不会显示,只是一个空窗口。
import javax.swing.*;
import java.awt.*;
public class MessageFrame extends JFrame{
public MessageFrame(){
setTitle("Message in a Bottle");
setSize(500, 500);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel message = new MessagePanel();
add(message);
setVisible(true);
JLabel messageLabel = new JLabel("Help me please im not having fun with this assignment.", JLabel.CENTER);
messageLabel.setAlignmentX(0);
messageLabel.setAlignmentY(0);
add(messageLabel);
}
public static void main(String[] args){
new MessageFrame();
}
}
我需要怎么做才能使其显示?
答案 0 :(得分:0)
正确的方法如下:
在您的main方法中,您调用MessageFrame()的实例,其中的“框架”或您选择的任何对象名称都将其设置为setVisible(true)。
MessageFrame frame = new MessageFrame();
frame.setVisible(true);
frame.setLocationRelativeTo(null);
现在在您的公共MessageFrame()方法中,您可以这样设置标题,大小,关闭操作和消息标签:
public MessageFrame() {
setTitle("Message in a Bottle");
setSize(500, 500);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JLabel messageLabel = new JLabel("Help me please im not having fun with this assignment.", JLabel.CENTER);
messageLabel.setAlignmentX(0);
messageLabel.setAlignmentY(0);
add(messageLabel);
}
简而言之,在您的main方法内部,您调用其他方法的实例。
整个代码应如下所示:
public class MessageFrame extends JFrame {
public static void main(String[] args) {
MessageFrame frame = new MessageFrame();
frame.setVisible(true);
frame.setLocationRelativeTo(null);
}
}
public MessageFrame() {
setTitle("Message in a Bottle");
setSize(500, 500);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JLabel messageLabel = new JLabel("Help me please im not having fun with this assignment.", JLabel.CENTER);
messageLabel.setAlignmentX(0);
messageLabel.setAlignmentY(0);
add(messageLabel);
}
}
我希望这会有所帮助。
答案 1 :(得分:0)
您似乎是Swing
的初学者。因此,要显示消息对话框,您可以使用开箱即用的实现:
JOptionPane.showMessageDialog(frame, "Eggs are not supposed to be green.");
您可以在How to Make Dialogs上找到更多详细信息和配置设置