【问题标题】:JTextField scrollable with no JScrollBarJTextField 可滚动,没有 JScrollBar
【发布时间】:2014-12-28 12:04:05
【问题描述】:

是否可以在不使用JScrollBar 的情况下让JTextField 滚动。 例如,我将字段定义为最大大小120,但只有40 可见, rest 是可滚动的(左/右)。 类似,HTML INPUT TEXT 有效。

【问题讨论】:

  • 普通的 JTextField 是这样工作的
  • 但它可以永远滚动吗? new JTextField(40) 将显示 40 个字符,而其他字符将被滚动。但我想限制他们在第 120 位被填满后停止滚动。
  • 这就是我在这里问的。没有这样的方法,除了setColumns,它与调用构造函数的大小相同。
  • 你打开上一条评论中的链接了吗?有答案。

标签: java swing jtextfield scrollable jscrollbar


【解决方案1】:

如果您想限制用户在文本字段中输入 120 个字符,那么您可以使用 DocumentFilter。请阅读 Implementing a DocumentFilter 上的 Swing 教程中的部分以获取工作示例。

【讨论】:

  • 我会将它与DocumentListener(相同教程)结合使用,以在达到最大字符数时提醒用户。例如,您可以在字符数达到最大值时将警告JLabel 设为可见,在字符数较少时将其设为不可见。
  • 我猜也可以使用动作监听器来做到这一点。我不知道为什么这样的泛型方法没有在更高的 Java 版本中扩展功能,因为这是制作 GUI 时非常常见的需求。
猜你喜欢
  • 1970-01-01
  • 2013-02-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-17
  • 1970-01-01
  • 2016-06-21
相关资源
最近更新 更多