5

我一直在努力更新我的 Java 知识,并且我一直在构建一个小型 GUI 程序,但我遇到了一些问题。

基本上,我有一个JList我目前正在用来自我的一个类的对象的字符串填充它,该类实现AbstractListModel了我们可以调用我的ItemList类。它包含一个实现ArrayList类型的对象。ItemSerializable

但是,我想做的不是JList用一堆字符串填充我,而是用某种字符串+JTextField组合填充它,这样我就可以看到每个Item对象的一个​​属性,同时还能够更新另一个属性通过改变JTextField.

现在,我正在寻找的是最简单的方法,并且我假设有一种(相对)简单的方法可以做到这一点,因为在 GUI 应用程序中想要做的事情很常见(尽管我不会不要把它放在 Java 和 Swing 之后,让它变得复杂和复杂)。

那么,这样做的正确方法是什么?

4

1 回答 1

10

无需使用String对象。反而:

  • Item对象放入JList.
  • 将一个添加ListCellRenderer到列表中,以Item最用户友好的方式显示对象。
  • 当用户选择一个项目时,在不同的地方显示详细信息(我在想一个有 2 列标签和文本字段的面板,以及两行 - 每个属性一个,也许还有一个按钮Save

编辑控件最好封装在一个面板中,然后可以在不需要时隐藏,并放在各种地方,例如

  • 在列表下方
  • 在 GUI 的主要部分
  • 以 aJOptionPane或 a 显示(模态或非模态)JDialog

这是将“查看/编辑面板”(文件详细信息)放置在选择组件(表格)下方的示例

于 2012-07-29T01:08:06.130 回答