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

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

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

    kooyee ‘s blog

    開源軟件, 眾人努力的結晶, 全人類的共同財富
    posts - 103, comments - 55, trackbacks - 0, articles - 66
       :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    『SWT』選項卡的激活與非激活狀態

    Posted on 2008-06-11 22:58 kooyee 閱讀(1678) 評論(0)  編輯  收藏 所屬分類: GUI骨衣
    當存在多個容器或選項卡容器時,其中一個選項卡在激活(選擇時)與非激活時標簽的顏色變化。 例如eclipse中點擊周圍的小窗口上的選項卡后,主窗口的選項卡標簽由藍色變為白色,反之亦然。

    我琢磨出來實現這個效果的方法是,首先給選項卡中的控件加入focusLost事件(如果表現背景使用了漸變色,在這里改變成新的背景色的話,也要使用同樣的Method和值為null的Color array來清空原來的背景色或定義新的顏色)
    text.addFocusListener(new org.eclipse.swt.events.FocusAdapter() {   
                
                
    public void focusLost(org.eclipse.swt.events.FocusEvent e) {
                    Color[] c 
    = {nullnull,null};
                    
    int[] i = {10,100};
                    tab.setSelectionBackground(c,i);
                tab.setSelectionForeground(Display.getCurrent().getSystemColor(SWT.COLOR_BLACK));
                }

    其次當再次選擇非激活的選項卡時,再改變會激活狀態的顏色。給選項卡中的控件加入focusGained事件并且選項卡加入selection和mouseDown事件。
    selection和mouseDown事件分別是當選項卡被點擊和選擇時focus選項卡中的控件, focusGained事件改變標簽顏色
    tab2.addSelectionListener(new org.eclipse.swt.events.SelectionAdapter() {
                
    public void widgetSelected(org.eclipse.swt.events.SelectionEvent e) {
                    text.forceFocus();
                }

            }
    );
            tab2.addMouseListener(
    new org.eclipse.swt.events.MouseAdapter() {
                
    public void mouseDown(org.eclipse.swt.events.MouseEvent e) {
                    text.forceFocus();
                }

            }
    );

    private void disactive (CTabFolder arg0){
            Color[] c 
    = {nullnull,null};
            
    int[] i = {10,100};
            arg0.setSelectionBackground(c,i);
            arg0.setSelectionForeground(Display.getCurrent().getSystemColor(SWT.COLOR_BLACK));
        }

        
        
    private void active (CTabFolder arg0){
            Color[] color
    =new Color[4];
            color[
    0]=new Color(Display.getCurrent(), 078255);
            color[
    1]=new Color(Display.getCurrent(), 098255);  
            color[
    2]=Display.getCurrent().getSystemColor(SWT.COLOR_TITLE_BACKGROUND_GRADIENT);    
            color[
    3]=Display.getCurrent().getSystemColor(SWT.COLOR_TITLE_BACKGROUND_GRADIENT);      
            
    int[] intArray=new int[]{50,70,100};
            arg0.setSelectionBackground(color, intArray, 
    true);
            arg0.setSelectionForeground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));
        }

    控件的focusGained事件
    text.addFocusListener(new org.eclipse.swt.events.FocusAdapter() {   
                
    public void focusGained(org.eclipse.swt.events.FocusEvent e) {
                    active(tab2);
                }

            }
    );
    主站蜘蛛池模板: 久久久久久久综合日本亚洲| 亚洲国产一区在线| 国内精品免费久久影院| 亚洲免费在线视频| 无码人妻精品中文字幕免费东京热| 亚洲xxxx18| 亚洲人成无码网WWW| 99久久国产免费中文无字幕| 亚洲卡一卡二卡乱码新区| 亚洲Av无码乱码在线观看性色| 一级毛片免费毛片一级毛片免费| 亚洲午夜无码久久久久软件| 国产亚洲自拍一区| 久久久久国产精品免费免费搜索 | 国产羞羞的视频在线观看免费| 亚洲日本香蕉视频观看视频| 国产在线观看免费完整版中文版| 国产精品白浆在线观看免费| 亚洲国产精品久久久久秋霞小| 亚洲第一AAAAA片| 国产一级一片免费播放| 久久国产色AV免费看| 产传媒61国产免费| 久久夜色精品国产噜噜亚洲a| 亚洲精品无码久久久久去q | 成人精品视频99在线观看免费| 亚洲av无码国产综合专区| 亚洲欭美日韩颜射在线二| 成年人性生活免费视频| a在线免费观看视频| 亚洲AV无码一区二区三区久久精品| 久久亚洲免费视频| 亚洲第一区精品观看| 9久9久女女免费精品视频在线观看| eeuss免费影院| 久久亚洲AV成人无码国产电影| 亚洲福利电影在线观看| 亚洲午夜福利AV一区二区无码| 国产乱弄免费视频| 国内精品免费视频自在线| 国产大片免费网站不卡美女|