【问题标题】:Java JTextField view from the Right右侧的 Java JTextField 视图
【发布时间】:2018-09-06 02:13:16
【问题描述】:
我有一个JTextField,我正试图从右侧自动查看(不与右侧对齐),因此如果文本对于JTextField 来说太长,它将显示最后一个字符字符串而不是开头。
我一直在寻找试图找到答案的年龄,但一直在想出对齐方式。
下面的 2 张图片显示了我得到的和我想要的,文字是“123456789_123”,JTextField 仅大到足以包含“123456789”但我想看到“56789_123”而不是必须专注于该领域。 (如果需要,我可以使用 JTextField 以外的其他东西,尝试了 JTextArea 但遇到了同样的问题)。
What i Get
What I'm after
我不能只使字段变大,因为我受到程序中其他对象的限制。通常文字很合适,但有时它太大了。
【问题讨论】:
标签:
java
view
jtextfield
visibility
【解决方案1】:
找到了解决办法。
您创建一个 JScrollPane,通过将其尺寸设置为 0,0 使其垂直和水平条不可见。然后使用“setValue”滚动到最大。
希望这对尝试做类似事情的人有所帮助。
JTextArea editArea2 = new JTextArea(5,5);
editArea2.setText("123456789_12345");
editArea2.setAlignmentX(CENTER_ALIGNMENT);
asd = new Dimension();
asd.height = 20;
asd.width = 70;
JScrollPane scrollPane = new JScrollPane();
scrollPane.setViewportView(editArea2);
scrollPane.setMinimumSize(asd);
scrollPane.setMaximumSize(asd);
scrollPane.getVerticalScrollBar().setPreferredSize (new Dimension(0,0));
scrollPane.getHorizontalScrollBar().setPreferredSize (new Dimension(0,0));
scrollPane.getVerticalScrollBar().setMinimumSize(new Dimension(0, 0));
scrollPane.getVerticalScrollBar().setMinimumSize(new Dimension(0, 0));
scrollPane.getVerticalScrollBar().setMaximumSize(new Dimension(0, 0));
scrollPane.getVerticalScrollBar().setMaximumSize(new Dimension(0, 0));
scrollPane.getHorizontalScrollBar().setValue( scrollPane.getHorizontalScrollBar().getMaximum() );