我浏览过,并没有找到专门针对我的情况定制的解决方案.我有一个面板,我在对话框中显示:
//create dialog panel
JPanel panel = new JPanel();
panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));
panel.add(headerPanel);
panel.add(type1Panel);
panel.add(type2Panel);
panel.add(type3Panel);
panel.add(type4Panel);
panel.add(type5Panel);
panel.add(type6Panel);
int result = JOptionPane.showConfirmDialog(null, panel, "Please enter values.", JOptionPane.OK_CANCEL_OPTION);
Run Code Online (Sandbox Code Playgroud)
最后两个面板的大小,类型5和类型6,大小相同,所以它们看起来很好.但是,标题和前4个面板的大小不同,我希望它们全部左对齐.到目前为止,我还没有找到一个很好的解决方案,如何解决这个问题.
问题是,我怎么能保持对齐前5个面板,而不是最后2个?如果不是,我怎么能将它们全部对齐?setalignmentx()不适用于面板.我已经使用网格布局尝试过,但随后的GUI的主窗口的宽度相当大,不能很好地适应屏幕,因此BoxLayout的沿Ÿaxis.Thanks任何帮助或建议.
我在创建对话框时遇到问题.它包含了切断边框标题和输入框的所有内容.我已经尝试设置面板和组件的大小,但无济于事; 大小永远不变.在修改对话框的尺寸方面,我们将不胜感激.
JTextField account = new JTextField(6);
account.setDocument(new JTextFieldLimit(6));
account.setBorder(new TitledBorder("account"));
String[] firstDigitList = {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9"};
JComboBox firstDigitCombo = new JComboBox(firstDigitList);
firstDigitCombo.setSelectedIndex(0);
firstDigitCombo.setBorder(new TitledBorder("Leading Digit Change"));
JPanel panel = new JPanel();
panel.add(account);
panel.add(firstDigitCombo);
int result = JOptionPane.showConfirmDialog(null, panel, "Please Enter Values", JOptionPane.OK_CANCEL_OPTION);
Run Code Online (Sandbox Code Playgroud) 我有一个星期一的真实案例.我正在尝试根据我正在寻找的条目遍历结果表.例如,页面一次显示15个结果,并且可以有n个结果.我无法通过逻辑来遍历这些页面.我想这样做:如果输入不是1-15则转到第2页,如果不是16-30则转到第3页,等等.直到我到达该条目所在的页面.另一个例子:我正在寻找的条目是300个条目中的64个,所以我需要到第5页查看条目.
我用15的倍数,模数等做了不同的事情,并且不能让它起作用.
任何有关这方面的帮助将不胜感激,再喝一杯咖啡......
我有一个JOptionPane:
JOptionPane.showMessageDialog(null, text);
Run Code Online (Sandbox Code Playgroud)
文字是一个刺痛:
String text = "Hello world."
Run Code Online (Sandbox Code Playgroud)
我想要做的是改变文本的颜色,特别是单个单词,让我们说'你好'.所以我试过的是:
String t1 = "Hello";
String t2 = "world."
Font serifFont = new Font("Serif", Font.BOLD, 12);
AttributedString as = new AttributedString(t1);
as.addAttribute(TextAttribute.FONT, serifFont);
as.addAttribute(TextAttribute.FOREGROUND, Color.red);
JOptionPane.showMessageDialog(null, as+t2);
Run Code Online (Sandbox Code Playgroud)
我不熟悉attributiontext(),这不会工作.它这样做:
"java.text.AttributedString@479c479cworld"
我缺少一步吗?这不是正确的方法吗?有什么建议?