<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 31,  comments - 31,  trackbacks - 0

           前兩天遇到為org.eclipse.jface.text.TextViewer添加undo、redo 并添加Ctrl+z,與Ctrl+y功能這個問題,搜遍了國內網站,也沒有個好結果,終于多天后在一個國外的svn服務器上找到了一段代碼,解決了問題
    1、為TextViewer添加TextViewerUndoManager來管理記錄

    protected TextViewer textViewer;
         
    protected TextViewerUndoManager undoManager;
         
          
    //20是保存記錄的數量。
         undoManager = new TextViewerUndoManager(20);
         
         
    //綁定對textViewer控件的數據進行管理
         undoManager.connect(textViewer);
         textViewer.setUndoManager(undoManager);


    2、添加Ctrl+z,與Ctrl+y事件

    StyledText styledText = textViewer.getTextWidget();
    styledText.addKeyListener(
    new KeyListener( ) {
                
    public void keyPressed( KeyEvent e )
                
    {
                    
    if ( isUndoKeyPress( e ) )
                    
    {
                        textViewer.doOperation( ITextOperationTarget.UNDO );
                    }

                    
    else if ( isRedoKeyPress( e ) )
                    
    {
                        textViewer.doOperation( ITextOperationTarget.REDO );
                    }

                }

                
    private boolean isUndoKeyPress( KeyEvent e )
                
    {
                    
    // CTRL + z
                    return ( ( e.stateMask & SWT.CONTROL ) > 0 )
                    
    && ( ( e.keyCode == 'z' ) || ( e.keyCode == 'Z' ) );
                }

                
    private boolean isRedoKeyPress( KeyEvent e )
                
    {
                    
    // CTRL + y
                    return ( ( e.stateMask & SWT.CONTROL ) > 0 )
                    
    && ( ( e.keyCode == 'y' ) || ( e.keyCode == 'Y' ) );
                }

                
    public void keyReleased( KeyEvent e )
                
    {
                    
    // do nothing
                }

            }
    );
    posted on 2007-07-16 10:49 小平 閱讀(1869) 評論(3)  編輯  收藏 所屬分類: eclipse plugIn


    FeedBack:
    # re: 為org.eclipse.jface.text.TextViewer添加undo、redo 并添加Ctrl+z,與Ctrl+y功能
    2008-04-16 14:47 | 張凱
    不錯,學習了  回復  更多評論
      
    # re: 為org.eclipse.jface.text.TextViewer添加undo、redo 并添加Ctrl+z,與Ctrl+y功能
    2013-06-11 21:43 | yumin_999@163.com
    反復測試,還是不好使,奇怪。yumin_999@163.com  回復  更多評論
      
    # re: 為org.eclipse.jface.text.TextViewer添加undo、redo 并添加Ctrl+z,與Ctrl+y功能
    2013-06-11 22:15 | yumin_999@163.com
    找到原因了,必須加textViewer.setDocument(new Document());才好使  回復  更多評論
      
    <2007年7月>
    24252627282930
    1234567
    891011121314
    15161718192021
    22232425262728
    2930311234

    常用鏈接

    留言簿(2)

    隨筆分類

    隨筆檔案

    framework

    j2me

    java

    linux

    web

    其他

    友情鏈接

    素材

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲一级毛片免费看| 亚洲美日韩Av中文字幕无码久久久妻妇| 182tv免费视视频线路一二三| 国产精品成人免费一区二区| 亚洲精品视频在线观看免费| 免费在线观看自拍性爱视频| 99久久99久久精品免费观看| 婷婷亚洲久悠悠色悠在线播放 | 亚洲AV色欲色欲WWW| 人妻免费一区二区三区最新| 国产成人亚洲精品狼色在线 | 在线观看成人免费视频不卡| 亚洲成a人片在线观看播放| 在免费jizzjizz在线播| 在线亚洲午夜片AV大片| 日韩免费视频播播| 一个人免费观看视频在线中文| 亚洲中文字幕无码久久2017| 99久久综合精品免费| 亚洲天堂免费在线| 美女被cao网站免费看在线看| 又粗又硬又大又爽免费视频播放| 亚洲成a人片在线观看无码专区| 国产精品亚洲精品久久精品 | 免费高清A级毛片在线播放| 国产91精品一区二区麻豆亚洲| 免费a级毛片无码a∨免费软件| 亚洲精品视频观看| 国产美女无遮挡免费视频| 成人自慰女黄网站免费大全| 亚洲永久中文字幕在线| 在线观看91精品国产不卡免费| 三年片免费观看大全国语| 亚洲第一页在线播放| 免费日本黄色网址| 亚洲人成人网站18禁| 人成午夜免费视频在线观看| 亚洲精品自拍视频| 国产成人高清精品免费鸭子| 四虎国产成人永久精品免费| 亚洲熟妇无码八V在线播放|