我想在点击列表项时更改打开JOptionPane
的图标属性。 (它们将相互对应)
这是否相当于ActionListener
?我知道如何为按钮编码,遗憾的是这些操作并不容易?
JOptionPane.showInputDialog(null,
"SELECT A PRIMARY WEAPON FROM THE LIST",
"ARMOURY",
JOptionPane.OK_CANCEL_OPTION,
get.getIcon("shield_and_swords.png"),
character.weaponList(),
"Absolix Polearm")
答案 0 :(得分:1)
这是不可能的。 JOptionPane.showInputDialog
文档声明:
由UI决定如何最好地表示selectionValues,但通常会使用JComboBox,JList或JTextField。
这意味着所使用的实际GUI元素是实现定义的,因此实际上并不存在访问它的一般方法,或者它的一致动作接口(例如,它甚至可能不是可点击的列表框) 。基本上,你调用showInputDialog()
然后你得到一个结果,但除此之外它是一个黑盒子,实际的GUI可以是任何东西 - 没有保证。
在大多数情况下,也许你可能会想出一些非常脏的对象树黑客来找到GUI元素,但是......考虑创建一个你可以控制的可预测GUI的自定义对话框。