如何使一个主窗口足够大,以显示完整的标题

时间:2016-04-20 16:20:19

标签: java string swing

我的意思是:

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);

但是这段代码显示了这个

Short

有没有办法在启动后立即显示这样的内容?

Long

我的意思是可以看到整个标题。

2 个答案:

答案 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.getFontMetricsFontMetrics.stringWidth之类的方法。

看看我的代码在顶部的示例:

enter image description here