问题如题,我想可以重写processKeyEvent涵数解决问题,但很难实现,望高手帮下小弟的忙。在下万分感谢,送上100分了。

解决方案 »

  1.   

    ...............怎么又是你
    我上次的代码不能屏蔽Ctrl+X、Ctrl+C、Ctrl+V、Ctrl+H等系统热键 
    ???????没必要重写事件分发
      

  2.   

    用InputMap和ActionMap是有很多小问题的,我认为应该在JTextArea中找解决问题的方法。
      

  3.   

    jdk自带的记事本例子中有很好的解释,看那个例子后什么都明白了.
      

  4.   

    Inhibitory() ( ) 信誉:100    Blog   加为好友  2007-06-27 15:56:49  得分: 0  
     
     
       jdk自带的记事本例子中有很好的解释,看那个例子后什么都明白了.
      
     
    ====================你自己都没看过吧
    自带的那个notepad根本没有添加过监听 都是用jtextarea自带的快捷键
      

  5.   

    用InputMap和ActionMap是有很多小问题的,我认为应该在JTextArea中找解决问题的方法。======不知道你所说的小问题是指什么?
      

  6.   

    自带的那个notepad根本没有添加过监听 都是用jtextarea自带的快捷键
    在JTextArea里面已经映射好了那几个快捷键的事件,然后在document中监听的,可以自己修改,那个源码以前我读过一遍.
      

  7.   

    关于InputMap和ActionMap的小问题,我在这里不想多谈,我只想问下是否能通过改改JTextArea或其基类中的方法来达到目的。
      

  8.   

    ....
    干嘛不说
    说不定我以后也会遇到这种小问题JTextarea有个getActionMap的方法
    返回所有Action的Map 你把不想要的给put自己的Action就可以了cut-to-clipboard   Ctrl+X
    copy-to-clipboard  Ctrl+C
    paste-from-clipboard  Ctrl+VCtrl+H 的Action是哪个不清楚
      

  9.   

    重载JTextArea的copy()和paste()方法使其变成空方法,就可以屏蔽CTRL+C和CTRL+V,另外两个热键我不知道有什么用,就没有办法喽.呵呵.
      

  10.   

    感觉重写copy()和paste()方法方法意义不大。因为这只能代表复制和粘贴,而JTextArea还用到了许多系统热键。希望有高人想个全面的方法。
      

  11.   

    很简单的
    重写这个对象类我有完整的代码参考http://ishome.kilu3.de/bbs/index.php?gid=53或者MSN联系