Java JFrame.setsize()不执行任何操作
出于某种原因,我似乎无法让它发挥作用:Java JFrame.setsize()不执行任何操作,java,swing,jframe,Java,Swing,Jframe,出于某种原因,我似乎无法让它发挥作用: public class App { public static void main(String[] args){ JFrame frame = new JFrame("Hi"); frame.setSize(300, 400); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame
public class App {
public static void main(String[] args){
JFrame frame = new JFrame("Hi");
frame.setSize(300, 400);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
无论传递给setSize()的大小如何,运行程序时得到的窗口仍然很小。有什么建议吗?你试试这段代码,会得到一个JFrame。并在程序中查看设置首选方法
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class JFrameDemo {
public static void main(String s[]) {
JFrame frame = new JFrame("JFrame Source Demo");
frame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
JLabel jlbempty = new JLabel("");
jlbempty.setPreferredSize(new Dimension(175, 100));
frame.getContentPane().add(jlbempty, BorderLayout.CENTER);
frame.pack();
frame.setVisible(true);
}
}
这是你的完整代码吗?因为这应该很好(对我来说是这样)。您确定没有调用
frame.pack()代码>某个地方?对我来说,它正在工作。问题是什么?要更快地获得更好的帮助,请发布or。问题似乎出在上面没有显示的代码中。请注意,应在EDT上创建和更改GUI。请验证您的程序是否正在编译,以及您是否正在运行新编译的代码。您粘贴的代码片段似乎工作正常jlbempty.setPreferredSize(新维度(175100))代码>猜测(关于大小)。添加所需大小的EmptyBorder
,停止猜测。另见(是)