尝试使用Swing重新创建Skype会话面板

时间:2012-03-17 22:47:17

标签: java swing skype

我正在尝试使用Swing组件重新创建Skype处理即时消息。我正在使用带有自定义ListCellRenderer的JList来呈现列表中的每个单元格。 ListCellRenderer扩展了一个JPanel,JPanel只包含一个标签(我将放置用户名)和一个JTextArea,这是用户消息的去向。 JTextArea就是我遇到的问题。

这是我现在所拥有的一张图片 -

  • 我删除了netbeans中textarea自动附带的滚动窗格。
  • 我在此图片中显示了导航器,设计视图和实际程序(列表中有两个元素)。

enter image description here

  1. textarea中的文本实际上比此图像中的文本长得多,但它不是自动换行。我已经在此textarea的属性框中将lineWrap和wrapStyleWord设置为true,但它似乎没有任何效果。然后,我尝试使用属性框设置最大大小,但也没有任何效果。

  2. 有没有办法用netbeans gui designer控制组件周围的填充/边距。它为组件之间的间距提供的自动放置是几个像素太小或两个大。我需要精确放置在列表的单元组件上。

  3. 这里参考skype的convesation面板看起来如何(我添加了红色的“Brian cs”,因为我将如何在我的程序中这样做)。正如您所看到的那样,句子包裹并且单元格之间存在适当的空间。所以任何人都知道如何使用Swing实现这一目标?

    enter image description here

1 个答案:

答案 0 :(得分:0)

JTextarea不是问题。 JList设置每行的高度。请参阅JList.setFixedCellHeigth或setPrototypeCellValue