`
乌拉蕾
  • 浏览: 73488 次
  • 性别: Icon_minigender_2
  • 来自: 杭州
社区版块
存档分类
最新评论

【转】SWT/JFace的对话框

    博客分类:
  • java
 
阅读更多

 

一、MessageDialog  
    1 ,MessageDialog的用法很简单  
    MessageDialog.openInfomation(shell,title,message);  
    MessageDialog.openConfirm(shell,title,message);  
    MessageDialog.openQuestion(shell,title,message);  
    MessageDialog.openError(shell,title,message);  
     
    2 ,这四个的不同之处有三点:  
                       提示的图标、     显示的按钮、         返回值  
   openInfomation     类似i的图标       一个确定            void 
   openConfirm        问号图标         确定和取消          boolean 
   openQuestion       问号图标         是和否              boolean 
   openError         一个X的图标       确定                void 
    
   最后说一下,MessageDialog的大小不能根据内容自动调整,对于少量提示信息的时候显得大了些。  
   3 ,InputDialog输入的dialog  
   使用方法:  
   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(new Text).floatValue();  
            }catch(NumberFormatException e){  
               return "错误:请输入数值";  
            }  
           if(value>0 && value<100){  
               return null;  
            }else{  
               return "错误:请输入大于0,小于100的数";  
            }  
        }  
   }  
    
   然后改写定义语句为  
   InputDialog inputDialog = new InputDialog(shell,"标题","提示信息","默认值",new MyValidator());  
   二、上边说了MessageDialog不能自动调整大小,那什么能自动调整大小呢?答案是MessageBox.  
   同样继承自Dialog.  

   1 ,使用方法:MessageBox的使用方法稍微复杂,需要3句  
   MessageBox mb = new MessageBox(shell);  
   mb.setMessage("提示信息");  
   mb.open();  
   2 ,MessageBox同样可以控制图标和按钮数  
   是通过new的时候加入式样来实现的,例如  
   MessageBox mb = new MessageBox(shell,SWT._ICON_QUEST|SWT.YES|SWT.NO);  
    
   做过SWT开发的人对这种格式应该不陌生,到处都是。  
    
   图标的种类:  
   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  
   仔细看一下就是我们平时经常看到的各种对话框。  
   三、颜色选择对话框  
   不多说,使用方法几乎在swt中遍地都是的用法。  
   ColorDialog dialog = new ColorDialog(shell);  
   RGB rgb = dialog.open();  
   if(rgb != null){  
        Color color = new Color(shell.getDisplay(),rgb);  
   }  
    
   注意color使用过后要dispose();  
   四、字体选择对话框  
   有了上边的一些经验其实在有eclipse这种编辑器的帮助下猜着就可以写了  
   FontDialog dialog = new FontDialog(shell);  
   FontData fontData = dialog.open();  
   if (fontDate != null){  
        Font font = new Font(shell.getDisplay(),fontData);  
   }  
    
   同样在结束后font.dispose();  
   五、打印对话框,同上的使用方法,同上的需要dispose  
   PrintDialog dialog = new PrintDialog(shell);  
   PrintData printData = dialog.open();  
   if (printDate != null){  
        Printer printer = new Printer(printerData);  
   }  
    
   六、文件选择对话框:同上  
   1 ,实现方法  
   FileDialog dialog = new FileDialog(shell,SWT.OPEN);  
   dialog.setFilterPath("c:\windows");//设置初始路径  
   String fileName = dialog.open();//返回的全路径(路径+文件名)  
   2 ,如果想选择多个文件,加上SWT.MULTI  
   FileDialog dialog = new FileDialog(shell,SWT.OPEN|SWT.MULTI);  
   String fileName = dialog.open();//返回最后一个选择文件的全路径  
  String[] fileNames = dialog.getFileNames();//返回所有选择的文件名,不包括路径  
  String path = dialog.getFilterPath();返回选择的路径,这个和fileNames配合可以得到所有的文件的全路径  
  3 ,加入filter  
  FileDialog dialog = new FileDialog(shell,SWT.OPEN|SWT.NULTI);  
  dialog.setFilterNames(new String[]{"可执行文件(*.exe),"Excel(*.xls),"所有文件""});  
  dialog.setFilterExtensions(new String[]{"*.exe","*.xls","*.*"});  
  //接受方法同2中的写法,不同就是加入了过滤器。  
  4 ,保存对话框  
  保存对话框并不提供保存功能,这个需要自己实现,它只提供界面,并得到用户选择的目录和输入的文件名  
  FileDialog dialog = new FileDialog(shell,SWT.SAVE);  
  String fileName = dialog.open();  
  注:保存对话框并不提供保存功能,这个需要自己实现,它只提供界面,并得到用户选择的目录和输入的文件名  

分享到:
评论

相关推荐

    swt/jface.jar

    3. `org.eclipse.jface_3.3.1.M20070910-0800b.jar`:JFace的主要库,包含了诸如对话框、表视图、字段编辑器等高级UI组件的实现。 4. `org.eclipse.core.commands_3.3.0.I20070605-0010.jar`:提供命令框架,使得...

    SWT/Jface API 3.4

    2. **JFace**:JFace 是在 SWT 之上的高级接口,它的目的是为了简化 GUI 开发,提供数据绑定、视图、对话框、表单等高级功能。JFace 的一个重要特点是它支持模型-视图-控制器(MVC)设计模式,使得代码更加结构化...

    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》这本书的相关内容,提供一个全面的知识框架。 SWT是...

    eclipse swt/jface核心应用源码

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

    swt/jface实例开发

    【SWT/JFace实例开发】是一份针对Java GUI编程的学习资源,主要聚焦于SWT(Standard Widget Toolkit)和JFace这两个强大的图形用户界面库。SWT是Eclipse项目的一部分,它提供了一套与操作系统直接交互的原生控件,...

    SWT/JFace从入门到精通

    【SWT/JFace从入门到精通】 SWT(Standard Widget Toolkit)和JFace是Eclipse平台下用于构建图形用户界面(GUI)的两个关键库。它们为Java开发者提供了丰富的控件和高级UI功能,使创建桌面应用程序变得简单而强大。...

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

    JFace则是建立在SWT之上的一个高级UI框架,它简化了SWT的使用,提供了数据绑定、对话框、视图、表和树等控件的抽象。JFace通过模型-视图-控制器(MVC)的设计模式,帮助开发者更好地组织代码,减少重复工作,并且...

    SWT/JFace 3.5 API (HTML)

    JFace提供了数据绑定、视图、对话框和事件处理等功能,帮助开发者创建更复杂的用户界面结构。 3. API(Application Programming Interface):API是一组预先定义的函数、类、接口和常量,允许开发者通过调用这些...

    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核心应用源码(带视频)

    JFace 是建立在SWT之上的一个抽象层,它提供了一些高级服务,如数据绑定、视图和对话框的构建器,以及模型-视图-控制器(MVC)的设计模式,这使得开发者可以更专注于业务逻辑,而不是GUI的细节。JFace还引入了视图、...

    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 GUI应用程序的强大工具,它们与Eclipse IDE紧密集成,提供了一套丰富的控件和抽象层,使得开发者能够创建出功能丰富的桌面应用。本压缩包包含的"全部...

    swt/jface api帮助文档

    SWT (Standard Widget Toolkit) 和 JFace 是两个与Java GUI编程密切相关的库,它们是Eclipse项目的一部分。本文将深入探讨这两个库的核心概念、功能以及API的使用。 SWT是Java的一个GUI(图形用户界面)工具包,它...

    swt.rar_java swt_jface_swt/jface

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

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

    JFace包括数据绑定、视图管理、对话框和服务等组件,它将许多复杂的SWT操作进行了封装,例如表格和树的数据模型、表单编辑器等。通过研究JFace的源代码,开发者可以学习到如何优雅地组织用户界面,提高代码的可读性...

    swt/Jface中文教程

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

    Eclipse SWT/JFACE 核心应用 配套源代码

    2. **JFace**:JFace是在SWT基础上构建的一个高级UI框架,它简化了SWT的使用,提供了数据绑定、对话框、视图管理等功能。JFace的目的是减少代码量,提高代码的可读性和可维护性。源代码中可能包含JFace的使用示例,...

Global site tag (gtag.js) - Google Analytics