`
zhongkem
  • 浏览: 152547 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

SWT/Jface中的对话框

阅读更多

应该说,在gui开发中最常碰到的就是对话框了。。在这里进行了一些总结。

一、MessageDialog  用法很简单,但是大小不能根据内容自动调整,可用于简单的信息提示


MessageDialog.openInfomation(shell,title,message);  
MessageDialog.openConfirm(shell,title,message);   
MessageDialog.openQuestion(shell,title,message);   
MessageDialog.openError(shell,title,message);  

 
二、InputDialog 基本用法如下: 

InputDialog inputDialog = new InputDialog(shell,"标题","提示信息","默认值",null);    
if(inputDialog.open() == InputDialog.OK){    
     String value = dialog.getValue();    
}  

 

 

 

注意最后一个参数是验证器,如果想验证数据可以提供一个验证器,并在这里使用。验证其的写法:

public class MyValidator implements IInputValidaor{    
    public String isValid(String newText){    
        float value = 0;    
        try{    
             value = Float.valueOf(newText).floatValue();    
         }catch(NumberFormatException e){    
            return "错误:请输入数值";    
         }    
        if(value>0 && value<100){    
            return null;    
         }else{    
            return "错误:请输入大于0,小于100的数";    
         }    
     }    
}  

  

然后改写定义语句为   
InputDialog inputDialog = new InputDialog(shell,"标题","提示信息","默认值",new MyValidator());   

 三、MessageBox  和MessageDialog相似但是可以改变大小,用法也稍微复杂些

MessageBox mb = new MessageBox(shell);    
mb.setMessage("提示信息");    
mb.open();  

  
当然了,也可以控制图标和按钮数  
图标的种类:   
SWT.ICON_ERROR   
SWT.ICON_INFORMATION   
SWT.ICON_QUESTION   
SWT.ICON_WARNING 
按钮的组合:  
SWT.OK   
SWT.OK|SWT.CANCEL   
SWT.YES|SWT.NO   
SWT.YES|SWT.NO|SWT.CANCEL   
SWT.RETRY|SWT.CANCEL   
SWT.ABORT|SWT.RETRY|SWT.IGNORE   

 

四、ColorDialog 颜色选择对话框  

 

ColorDialog dialog = new ColorDialog(shell);    
RGB rgb = dialog.open();    
if(rgb != null){    
     Color color = new Color(shell.getDisplay(),rgb);    
} 

 

注意color使用过后要dispose(); 

五、FontDialog 字体选择对话框

FontDialog dialog = new FontDialog(shell);    
FontData fontData = dialog.open();    
if (fontDate != null){    
     Font font = new Font(shell.getDisplay(),fontData);    
} 

  

同样要注意dispose()

六、PrintDialog 打印对话框

PrintDialog dialog = new PrintDialog(shell);    
PrintData printData = dialog.open();    
if (printDate != null){    
     Printer printer = new Printer(printerData);    
} 

 

 

七、FileDialog 文件选择对话框 

FileDialog dialog = new FileDialog(shell,SWT.OPEN);    
dialog.setFilterPath("c:\windows");//设置初始路径    
String fileName = dialog.open();//返回的全路径(路径+文件名)

 

 

如果想选择多个文件,加上SWT.MULTI

FileDialog dialog = new FileDialog(shell,SWT.OPEN|SWT.MULTI);    
String fileName = dialog.open();//返回最后一个选择文件的全路径    
String[] fileNames = dialog.getFileNames();//返回所有选择的文件名,不包括路径    
String path = dialog.getFilterPath();返回选择的路径,这个和fileNames配合可以得到所有的文件的全路径    

   
加入filter

 

 

 

FileDialog dialog = new FileDialog(shell,SWT.OPEN|SWT.NULTI);    
dialog.setFilterNames(new String[]{"可执行文件(*.exe),"Excel(*.xls),"所有文件""});    
dialog.setFilterExtensions(new String[]{"*.exe","*.xls","*.*"});    

 

 

 

保存对话框
     保存对话框并不提供保存功能,这个需要自己实现,它只提供界面,并得到用户选择的目录和输入的文件名   
     FileDialog dialog = new FileDialog(shell,SWT.SAVE);   
     String fileName = dialog.open();   
   注:保存对话框并不提供保存功能,这个需要自己实现,它只提供界面,并得到用户选择的目录和输入的文件名  

 

分享到:
评论

相关推荐

    swt/jface.jar

    标题中的"swt/jface.jar"是一个关键组件,它在Java开发环境中用于构建用户界面。SWT(Standard Widget Toolkit)是IBM开发的一个开源GUI库,它提供了与原生操作系统更紧密集成的图形用户界面控件。JFace是建立在SWT...

    SWT/Jface API 3.4

    4. **Dialogs 和 Wizards**:在 SWT/Jface API 3.4 中,提供了丰富的对话框和向导类,如 MessageDialog、InputDialog、FileDialog 等,帮助开发者快速创建常见的用户交互。向导(Wizard)则是一种引导用户完成多步骤...

    SWT/Jface 开发入门指南

    - 接下来需要导入SWT和JFace的库文件到项目的classpath中。这些文件包括org.eclipse.swt, org.eclipse.jface和org.eclipse.core.runtime等jar包。这些jar包的版本号需要与你的Eclipse版本相对应。 3. **SWT部件...

    SWT/JFace专题 --- SWT/JFace概述

    SWT (Standard Widget Toolkit) 和 JFace 是两个在Java中用于构建图形用户界面(GUI)的重要库,尤其在开发Eclipse插件时被广泛应用。它们是开源项目,由Eclipse基金会维护,为开发者提供了丰富的控件和高级UI设计...

    SWT/JFACE客户端登录窗口例子

    SWT (Standard Widget Toolkit) 和 JFace 是 Eclipse 开发框架中的两个重要组件,它们主要用于构建图形用户界面(GUI)。SWT 是一个底层的 GUI 工具包,它提供了与操作系统直接交互的能力,使得应用程序能够拥有原生...

    swt/jface in action +中文版+英文版+源码 下载

    SWT (Standard Widget Toolkit) 和 JFace 是两个与Java GUI编程密切相关的库,它们由Eclipse项目维护。...无论你是初学者还是有经验的开发者,都能从《SWT/JFace in Action》这本书中找到有价值的内容。

    eclipse swt/jface核心应用源码

    Eclipse SWT/JFace是Eclipse框架中的两个关键组件,它们为构建用户界面提供了强大的支持。SWT(Standard Widget Toolkit)是Eclipse的本机GUI库,而JFace是基于SWT构建的更高层次的抽象层,它简化了UI开发过程。 ...

    swt/jface实例开发

    8. **案例分析**:通过实际开发示例,演示SWT和JFace在实际项目中的应用。 对于初学者来说,这份资源的实践性强,配合源代码学习,有助于快速掌握SWT和JFace的使用,提升Java GUI编程能力。通过深入理解和实践这些...

    SWT/JFace从入门到精通

    - 扩展Eclipse:学习如何创建Eclipse插件,将SWT/JFace应用到Eclipse插件开发中。 5. 关键概念 - Display:Eclipse中的主显示对象,所有SWT组件都必须在其上创建。 - Composite:SWT中的容器类,可以包含其他SWT...

    Eclipse SWT/JFace 核心应用光盘源码

    Eclipse SWT(Standard Widget Toolkit)和JFace是Java开发中用于构建图形用户界面(GUI)的库,尤其在开发Eclipse插件和RCP(Rich Client Platform)应用程序时非常重要。这两个库提供了丰富的组件和框架,使得...

    Eclipse SWT/JFace 书中 全部实例

    Eclipse SWT(Standard Widget Toolkit)和JFace是用于构建Java GUI应用程序的强大工具,它们与Eclipse IDE紧密集成,提供了一套丰富的控件和抽象层,使得开发者能够创建出功能丰富的桌面应用。本压缩包包含的"全部...

    swt/Jface中文教程

    ### SWT/JFace中文教程知识点详解 #### 1.1 SWT/JFace概览 - **SWT与JFace的目的**:SWT(Standard Widget Toolkit)和JFace是Eclipse平台提供的两个核心工具包,用于构建高性能的图形用户界面(GUI)。SWT主要...

    swt/jface api帮助文档

    在"SWT-JFace-3.4-API-.chm"这个帮助文档中,你会找到以下关键知识点: 1. **SWT组件**:包括各种基本和复杂控件,如Button、Label、Text、Shell、Composite等。每个控件都有其特定的属性、方法和事件。 2. **事件...

    SWT/JFace 3.5 API (HTML)

    SWT(Standard Widget Toolkit)和JFace是Eclipse开源项目中的两个重要库,主要用于构建图形用户界面(GUI)。它们提供了一种与平台无关的方式来创建Java应用程序的用户界面,特别是对于开发IDE和其他复杂的桌面应用...

    Eclipse SWT/JFace 核心应用

    Eclipse SWT(Standard Widget Toolkit)和JFace是Java开发中用于构建桌面应用程序的两个关键库。它们都是Eclipse IDE的一部分,提供了丰富的用户界面组件和高级功能,帮助开发者创建美观、高效的图形用户界面(GUI...

    Eclipse SWT/JFace 开发实战精解+完美书签+光盘源码完整版

    Eclipse SWT(Standard Widget Toolkit)和JFace是Java开发领域中的两个重要库,主要用于构建桌面应用程序。它们都是Eclipse IDE的重要组成部分,提供了丰富的图形用户界面(GUI)组件和设计模式,使得开发者能够...

    Eclipse swt/jface核心应用源码(带视频)

    在"eclipse swt/jface核心应用源代码"中,我们可以期待看到如何使用SWT和JFace来创建Eclipse插件或RCP应用的实际示例。这些源代码通常会涵盖以下关键知识点: 1. **组件创建**:如何使用SWT类创建基本的UI元素,如`...

    SWT/JFACE API

    SWT (Standard Widget Toolkit) 和 JFace 是两个用于构建Java图形用户界面(GUI)的开源库,它们在Java开发领域中被广泛使用,特别是在Eclipse IDE及其插件开发中。SWT是底层的UI库,提供了与操作系统原生控件直接...

    Eclipse SWT/JFace 核心应用的全部源代码

    Eclipse SWT(Standard Widget Toolkit)和JFace是Java开发中用于构建桌面应用程序的两个关键库。它们都是Eclipse IDE的一部分,提供了丰富的用户界面组件和框架,使得开发者可以创建功能强大的图形化应用程序。在这...

    swt.rar_java swt_jface_swt/jface

    【标签】"java_swt jface swt/jface" 这些标签明确了内容的主题,"java_swt" 关注的是Java与SWT的结合,"jface" 强调了JFace库的使用,"swt/jface" 表明两者都将被讨论,特别是它们如何协同工作来构建复杂的Java应用...

Global site tag (gtag.js) - Google Analytics