我的意思是:
JFrame frame = new JFrame("Hello swing");
JPanel panel = new JPanel();
panel.add(new JButton("A"));
frame.add(panel);
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
但是这段代码显示了这个
有没有办法在启动后立即显示这样的内容?
我的意思是可以看到整个标题。
答案 0 :(得分:3)
使用:
panel.setPreferredSize(new Dimension(WIDTH, HEIGHT));
展开你的框架
答案 1 :(得分:3)
使用标题的长度并将其应用于所使用的新维度。但是我还没有对它进行测试,你必须自己玩这些数字。只是给你一个想法。
JFrame frame = new JFrame("Hello swing");
JPanel panel = new JPanel();
int len = frame.getTitle().length();
Dimension dimension = new Dimension(200 + 7*len, 200);
panel.setPreferredSize(dimension);
我想使用数字7
作为常数将是最好的。但请注意主要使用宽(wwww..
)或窄字母(iiii...)
,因为它们以不同的宽度显示。要获得确切的长度,您必须使用Graphics.getFontMetrics
和FontMetrics.stringWidth
之类的方法。
看看我的代码在顶部的示例: