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

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

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

    DANCE WITH JAVA

    開發(fā)出高質(zhì)量的系統(tǒng)

    常用鏈接

    統(tǒng)計

    積分與排名

    好友之家

    最新評論

    給自定義Dialog加入保留對話框值的功能

    有的時候我們需要這樣的功能,記下Dialog中的值,當(dāng)再次打開這個Dialog的時候,還原這些值。這就需要把這些Dialog的值保存起來。Dialog的IDialogSettings類提供了這個功能。下邊是使用方法:
    在上例"自定義Dialog"的代碼上加入三個函數(shù):
    public void saveState(){
            
    if (text.getText() == null || text.getText().equals("")){
                
    return ;
            }

            IDialogSettings topSettings 
    = getTopSettings();
            IDialogSettings settings 
    =  topSettings.getSection("TestDialog");
            
    if(settings == null)settings = topSettings.addNewSection("TestDialog");
            settings.put(
    "value", text.getText());
            
    try{
                topSettings.save(
    "content/system.xml");
            }
    catch(IOException e){
                System.out.println(e.getMessage());
            }

        }

        
    public void restoreState(){
            IDialogSettings topSettings 
    = getTopSettings();
            IDialogSettings settings 
    =  topSettings.getSection("TestDialog");
            
    if(settings == nullreturn;
            
    if (text.getText() == null || text.getText().equals("")){
                text.setText(settings.get(
    "value"));
            }

        }

        
    public IDialogSettings getTopSettings(){
            IDialogSettings topSettings 
    = new DialogSettings("system");
            
    try{
                topSettings.load(
    "content/system.xml");
            }
    catch(IOException e){
                System.out.println(e.getMessage());
            }

            
    return topSettings;
        }

    然后在覆寫的buttonPressed函數(shù)中調(diào)用save
    protected void buttonPressed(int button){
            saveState();
        }
    在createDialogArea函數(shù)中加入取出數(shù)據(jù)
    protected Control createDialogArea(Composite parent) {
            Composite container 
    = (Composite) super.createDialogArea(parent);
            container.setLayout(
    new RowLayout());
            text 
    = new Text(container, SWT.BORDER);
            text.setLayoutData(
    new RowData(100,-1));
            
    //加入這一句
            if (text.getText() == null || text.getText().equals("")){
                restoreState();
            }

            
    return container;
        }
    最后,記得建立需要的文件,在當(dāng)前workspace下建立文件夾content,然后在文件夾下建立system.xml文件。當(dāng)然你也可以利用程序來實現(xiàn)。
    運行一下看看吧,是不是記住了上次填入的內(nèi)容.
    source下載:http://www.tkk7.com/Files/dreamstone/jface-record.rar

    posted on 2007-08-09 18:13 dreamstone 閱讀(2543) 評論(1)  編輯  收藏 所屬分類: SWT和插件開發(fā)

    評論

    # re: 給自定義Dialog加入保留對話框值的功能 2007-10-25 06:34 QuandeLiu

    謝謝你,寫的非常好 .

    簡單易懂,又很實用  回復(fù)  更多評論   

    主站蜘蛛池模板: 人成电影网在线观看免费| 99精品在线免费观看| 亚洲国产精品无码久久久秋霞2| 久久久久成人片免费观看蜜芽| 亚洲va成无码人在线观看| 亚洲成a人在线看天堂无码| 免费无码VA一区二区三区| 亚洲国产成人久久精品软件| 亚洲中文字幕无码久久精品1| 无码乱肉视频免费大全合集| 青娱乐在线视频免费观看| 亚洲av永久无码精品国产精品| 好大好深好猛好爽视频免费| GOGOGO免费观看国语| 国产.亚洲.欧洲在线| 国产亚洲精品xxx| 国产在线19禁免费观看国产| 99久久免费观看| 一级成人毛片免费观看| 亚洲一级毛片在线观| 亚洲精品国产字幕久久不卡| 日本不卡高清中文字幕免费| 91制片厂制作传媒免费版樱花| 成人精品综合免费视频| 亚洲综合精品成人| 久久精品国产亚洲77777| 亚洲小说区图片区另类春色| 国产一区二区三区免费视频| 99精品国产免费久久久久久下载 | 亚洲精品视频免费观看| 亚洲一区二区观看播放| 久久久国产精品亚洲一区| 国产成人A亚洲精V品无码| 国产精品成人免费综合| 国产免费av片在线看| 99久久综合精品免费| 亚洲免费视频网站| 久久精品成人免费看| 成人精品视频99在线观看免费| 老司机午夜在线视频免费| 亚洲最大无码中文字幕|