<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功能這個(gè)問題,搜遍了國(guó)內(nèi)網(wǎng)站,也沒有個(gè)好結(jié)果,終于多天后在一個(gè)國(guó)外的svn服務(wù)器上找到了一段代碼,解決了問題
    1、為TextViewer添加TextViewerUndoManager來管理記錄

    protected TextViewer textViewer;
         
    protected TextViewerUndoManager undoManager;
         
          
    //20是保存記錄的數(shù)量。
         undoManager = new TextViewerUndoManager(20);
         
         
    //綁定對(duì)textViewer控件的數(shù)據(jù)進(jìn)行管理
         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) 評(píng)論(3)  編輯  收藏 所屬分類: eclipse plugIn


    FeedBack:
    # re: 為org.eclipse.jface.text.TextViewer添加undo、redo 并添加Ctrl+z,與Ctrl+y功能
    2008-04-16 14:47 | 張凱
    不錯(cuò),學(xué)習(xí)了  回復(fù)  更多評(píng)論
      
    # re: 為org.eclipse.jface.text.TextViewer添加undo、redo 并添加Ctrl+z,與Ctrl+y功能
    2013-06-11 21:43 | yumin_999@163.com
    反復(fù)測(cè)試,還是不好使,奇怪。yumin_999@163.com  回復(fù)  更多評(píng)論
      
    # 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());才好使  回復(fù)  更多評(píng)論
      

    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    <2007年7月>
    24252627282930
    1234567
    891011121314
    15161718192021
    22232425262728
    2930311234

    常用鏈接

    留言簿(2)

    隨筆分類

    隨筆檔案

    framework

    j2me

    java

    linux

    web

    其他

    友情鏈接

    素材

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    主站蜘蛛池模板: 久久黄色免费网站| 日韩va亚洲va欧洲va国产| 一级毛片**不卡免费播| 亚洲av无码有乱码在线观看| 亚洲国产精华液网站w| 国产禁女女网站免费看| 成年黄网站色大免费全看| 中文字幕在线视频免费观看| mm1313亚洲国产精品无码试看| 亚洲综合激情视频| 亚洲va久久久噜噜噜久久天堂 | 麻豆亚洲av熟女国产一区二| 亚洲精品国产高清嫩草影院| 日韩一区二区免费视频| 67194熟妇在线永久免费观看| 无码人妻精品中文字幕免费| 中文字幕一区二区三区免费视频| 国产成人亚洲午夜电影| 国产亚洲精品影视在线| 亚洲六月丁香六月婷婷色伊人| 亚洲图片一区二区| 亚洲AV无码精品色午夜在线观看| 国产精品V亚洲精品V日韩精品| 免费在线一级毛片| 国产成人高清精品免费软件| 午夜寂寞在线一级观看免费| 成人免费毛片内射美女APP| 成人免费观看一区二区| 日本免费xxxx色视频| 2021国内精品久久久久精免费| 久久精品人成免费| 98精品全国免费观看视频| 久久午夜免费鲁丝片| 免费无码VA一区二区三区 | 亚洲一区二区三区首页| 亚洲成AV人片天堂网无码| 久久亚洲精品视频| 亚洲一区二区三区夜色| 亚洲黄色网址在线观看| 亚洲最大在线视频| 国产精品亚洲精品青青青|