java如何防止轻量级组件接收鼠标事件?
我有一些JTextComponent
和一些CaretEvent
。我需要禁用所有组件,以防止在某个操作之后进行用户交互,并且当该操作完成时,重新启用这些JTextComponent
,以允许用户再次与GUI交互。显然,当用户点击一个JTextComponent
时,插入符号监听器会执行它的操作,我想防止这种情况发生
我目前删除了CaretListener
以防止出现这种情况,在我的内部操作完成后,我重新添加了这些CaretListener
有没有其他方法可以防止这种情况?是否删除这些组件的MouseEvent
并在以后重新分配
# 1 楼答案
禁用用户交互的一种方法是不允许文本组件接收程序的焦点:
然后,当您想重新允许交互时,使用明显的
true
参数进行相同的调用: