简单,在java swing中包装红色验证消息

时间:2014-04-30 22:57:27

标签: java swing validation validationmessage

所以我已经开发了10年的网络应用程序,但是对于在我之前获得帮助的入门编程课程相关的小型应用程序的工作有着美好的回忆。我通常喜欢构建swing / java UI,尤其是使用体面的UI构建器。但是,在此期间,当表单上的数据无效时,我已经习惯于提供可变长度和数字的清晰红色错误消息。有时使用图标,有时在场上使用标记等。在网络世界中很容易做到的非常常见的东西,并且非常有用并且提高了可用性。

今天我试图找到一种方法在我的挥杆形式的顶部或底部显示一个很好的错误消息列表,图标和字段标记可以在以后出现,但是现在我只想要一个很好的可变大小的事物列表需要纠正的,红色。

乍一看,这似乎很容易,但是......

  • JLabel没有换行,所以隐藏了很长的文字,或者你必须使表格超宽
  • JText Area具有相同的问题,除非您定义了多个列,并且我想填充可用空间。设定数量的列不会调整大小。
  • JTextPane包装但据我所知它不会变红,除非你在复杂的StyledDocument位上进入整个过程。我不想做任何比改变文字颜色更复杂的事情,所以这看起来有点矫枉过正。

还有一个小问题,即推出窗口空间,可以调用pack(),但Id喜欢只增加表单的高度并包装文本而不是将对话框更改为消息的宽度(创建如果单个长消息加宽宽度,则会出现很多紧张的布局和死区。

我也不想在消息区域或整个表单中使用滚动条。

这肯定是一个已经发明的轮子,那么以摆动形式显示红色(但未格式化的)错误信息列表的正确方法是什么?

1 个答案:

答案 0 :(得分:4)

  

标签没有换行,所以隐藏了很长的文字,或者你必须制作   形成超宽

  

除非您定义了多个列,否则JText Area会出现同样的问题,   我想填补可用的空间。一定数量的列赢了   调整大小。

  • 使用word and line wrap
  

设定数量的列不会调整大小。和#34;我也不是真的想要滚动条"

  • 将JTextArea放到JScrollPane,禁用JScrollBars,从JScrollPane为Borders设置null
  

JTextPane包裹,但据我所知,除非你,否则它不会变红   深入了解复杂的StyledDocument位。我没有   想做更复杂的事情,而不是改变文字颜色   这看起来有点矫枉过正。

  • 使用HighLighter,但有关StyledDocument
  • 问题的发布说明中没有任何明确规定