java – JSpinner:增加编辑框的长度
发布时间:2020-05-24 19:07:51 所属栏目:Java 来源:互联网
导读:我有一个JSpinner显示从0.0到999.0的十进制值.它似乎工作正常,除了它在编辑器框中显示一个长度为四位数的数字,例如123.4;然后它会切断部分最后一位数,因为它不够长. 所以我的问题是:有谁知道如何增加JSpinner编辑器窗口的长度? 谢谢! 您可以访问实际上是JF
|
我有一个JSpinner显示从0.0到999.0的十进制值.它似乎工作正常,除了它在编辑器框中显示一个长度为四位数的数字,例如123.4;然后它会切断部分最后一位数,因为它不够长. 所以我的问题是:有谁知道如何增加JSpinner编辑器窗口的长度? 谢谢! 解决方法您可以访问实际上是JFormattedTextField的文本字段>首先在JSpinner上调用getEditor()来获取微调器的编辑器 编辑:正如trashgod所述,使用适当的布局是至关重要的,并确保您使用的布局是最好的可能是解决此问题的最佳方法. 编辑2:以上是错误的,因为设置文本字段的首选大小什么都不做.但是,您可以设置编辑器本身的首选大小,这是有效的.例如, import java.awt.Dimension;
import javax.swing.*;
public class SpinnerBigTextField {
private static void createAndShowGui() {
JSpinner spinner = new JSpinner(new SpinnerNumberModel(0.0,0.0,999.0,0.5));
JPanel panel = new JPanel();
panel.setPreferredSize(new Dimension(300,100));
panel.add(spinner);
JComponent field = ((JSpinner.DefaultEditor) spinner.getEditor());
Dimension prefSize = field.getPreferredSize();
prefSize = new Dimension(200,prefSize.height);
field.setPreferredSize(prefSize);
JFrame frame = new JFrame("SpinnerBigTextField");
frame.setDefaultCloSEOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().add(panel);
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
createAndShowGui();
}
});
}
} (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
