我在如何在JavaSwing中创建右键单击上下文菜单中看到了答案?看看我如何创建菜单。然而,当我将它与文本区域关联时,不管它上面是否写了什么,它总是显示菜单。
我使用文本区域来显示我从一个特定类(保存在ArrayList中)创建了多少对象。我需要的是一个菜单,当单击特定的文本行时,它可以在ArrayList中拥有对象的索引,并使用该菜单从ArrayList编辑/删除指定的对象。这可能与文本区域有关吗?还是我应该使用不同类型的显示组件?
例如:
文本区域:
对象1。
对象2。
对象3。
例如,当我右键单击选择"对象1"时,它会显示带有"编辑和删除"的菜单。但当我没有选择任何一个时,菜单就不会显示。当它显示时,它可以访问对象的索引(对象1->索引0,对象2->索引1,等等)
非常感谢你的帮助,Nhekas
我使用文本区域来显示我从特定类创建了多少对象
不要使用JTextArea。
相反,我建议您应该使用JList
。阅读Swing教程中关于如何使用列表的部分,了解更多信息和示例。
JList
有一个locationToIndex(...)
方法,它将为您提供单击鼠标的行。然后您可以从列表中获取对象。