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

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

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

    Feeling

        三人行,必有我師焉

       ::  :: 新隨筆 :: 聯系 ::  :: 管理 ::
      185 隨筆 :: 0 文章 :: 392 評論 :: 0 Trackbacks
    自定義控件通常是從一個Composite或者Canvas繼承而來,但是缺省狀態下,這兩個控件都無法通過鍵盤的Tab鍵得到焦點。通過對SWT的debug,我發現要實現該事件,必須滿足一個必要條件:為自定義控件安裝一個KeyEvent的監聽器

    實際上我個人認為這出自于SWT的實現者自己的考慮,可能認為如果沒有KeyListener,也就意味著沒有Key的操作,那么也無需通知Travserse事件,Travserse事件的前提就是Key操作。但是在某些特定情況下我們不需要KeyListener,也可以模擬出KeyEvent的效果,比如通過TraverseListener的keyTraversed方法。總而言之,想通過鍵盤為某一個自定義控件獲取焦點,就老老實實的給控件加一個KeyListener吧。

    此處附加一些和Traverse相關的小知識:

    1、如何通過鍵盤的Tab鍵跳出 Multiple Style 的Text?
            請使用 Ctrl+Tab 組合鍵。

    2、如何通過鍵盤操作讓上一個控件獲取焦點?
            請使用 Shift+Tab 或者 Ctrl+Shift+Tab 組合鍵。

    3、Button 可以通過回車鍵和空格鍵激活。所以如果有些地方無法使用回車鍵(比如按鈕在Dialog中),可以考慮使用空格鍵。

    4、一些特殊的KeyCode:
            回車鍵:SWT.KEYPAD_CR
            小鍵盤的回車鍵:SWT.TRAVERSE_RETURN
            方向鍵:SWT.ARROW_UP,SWT.ARROW_DOWN,SWT.ARROW_LEFT,SWT.ARROW_RIGHT
    posted on 2009-04-07 11:22 三人行,必有我師焉 閱讀(2246) 評論(2)  編輯  收藏

    評論

    # re: SWT中自定義控件Traverse實現的必要條件 2009-04-09 13:46 genjuro
    呵呵,就是這樣,javadoc里還是說得很明白的  回復  更多評論
      

    # re: SWT中自定義控件Traverse實現的必要條件[未登錄] 2009-05-27 08:54 wyl
    你還活著啊?呵呵
    項目做好人就消失了
    tnnd
      回復  更多評論
      


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    GitHub |  開源中國社區 |  maven倉庫 |  文件格式轉換 
    主站蜘蛛池模板: 国产亚洲精品a在线观看| 国产在线a不卡免费视频| 久久精品国产精品亚洲蜜月| 日亚毛片免费乱码不卡一区| 又大又硬又爽免费视频| 亚洲国产成人综合精品| 成人免费无码大片A毛片抽搐色欲 成人免费无码大片a毛片 | 亚洲AV综合色一区二区三区| 一级做α爱过程免费视频| va亚洲va日韩不卡在线观看| 羞羞视频免费观看| 亚洲av日韩片在线观看| 免费无毒a网站在线观看| 亚洲精品国产va在线观看蜜芽| 成年大片免费视频播放一级| 亚洲中文无韩国r级电影| XXX2高清在线观看免费视频| 亚洲精品成人片在线观看精品字幕| 国产午夜精品理论片免费观看| 国产V亚洲V天堂无码久久久| 96免费精品视频在线观看| 亚洲国产日韩在线成人蜜芽| 国产免费av片在线看| 老司机免费午夜精品视频| 亚洲男人av香蕉爽爽爽爽| 黄色网址在线免费| 亚洲精品视频在线免费| 天天摸天天操免费播放小视频| 国产精品亚洲综合网站| 亚洲精品国产品国语在线 | 91热久久免费精品99| 亚洲国产日韩精品| 亚洲黄片毛片在线观看| 久久久久国色av免费看| 亚洲色图激情文学| 亚洲福利视频一区二区| 久久成人免费大片| 亚洲成AV人片在WWW| 国产V亚洲V天堂A无码| 国产99视频精品免费观看7| 免费人成再在线观看网站|