在JTextPane中选择一些文本时如何启用/禁用JButton?

时间:2018-10-02 13:10:46

标签: java swing jbutton

我正在使用Swing在Java中创建一个简单的记事本应用程序。

我已经使用JMenu创建了“新建”,“打开”,“退出”,“剪切”,“复制”,“粘贴”功能的菜单选项,还使用JToolBar创建了“新建”,“打开”,“退出”,“剪切”,“复制”,“粘贴”图标。对于图标,我使用了JButton组件。

我的预期情况: 我想在选择JTextPane中的某些文本时启用剪切和复制图标。如果未选择任何文本,则应禁用“剪切和复制”图标。请提供示例代码。

谢谢。

1 个答案:

答案 0 :(得分:0)

您可以将CaretListener添加到文本组件的Caret中。

无论何时生成CaretEvent,您都可以使用事件的getDot()getMark()方法。

如果值相同,则不会选择任何文本。

  

对于图标,我使用了JButton组件。

您应该在按钮上添加Action。然后,您可以根据需要启用/禁用Action。阅读Swing教程中有关如何使用动作的部分,以获取更多信息。

此外,DefaultEditorKitStyledEditorKit将提供您需要执行的许多操作。请查看Text Component Features上的Swing教程,以获取使用这些操作的有效示例。