Swt/Jface中提供的dialog
Swt/Jface中提供的dialog
Swt/Jface中提供了各种各样的Dialog,一般情况下就能满足我们的需求,现在把这些dialog介绍一下,
下一篇文章再继续将如何自定义Dialog
一、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
使用方法:
if(inputDialog.open() == InputDialog.OK){
String value = dialog.getValue();
}
注意最后一个参数是"验证器",如果想验证数据可以提供一个验证器,并在这里使用。验证其的写法:
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的数";
}
}
}
然后改写定义语句为
二、上边说了MessageDialog不能自动调整大小,那什么能自动调整大小呢?答案是MessageBox.
同样继承自Dialog.
1,使用方法:MessageBox的使用方法稍微复杂,需要3句
mb.setMessage("提示信息");
mb.open();
2,MessageBox同样可以控制图标和按钮数
是通过new的时候加入式样来实现的,例如
做过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中遍地都是的用法。
RGB rgb = dialog.open();
if(rgb != null){
Color color = new Color(shell.getDisplay(),rgb);
}
注意color使用过后要dispose();
四、字体选择对话框
有了上边的一些经验其实在有eclipse这种编辑器的帮助下猜着就可以写了
FontData fontData = dialog.open();
if (fontDate != null){
Font font = new Font(shell.getDisplay(),fontData);
}
同样在结束后font.dispose();
五、打印对话框,同上的使用方法,同上的需要dispose
PrintData printData = dialog.open();
if (printDate != null){
Printer printer = new Printer(printerData);
}
六、文件选择对话框:同上
1,实现方法
dialog.setFilterPath("c:\windows");//设置初始路径
String fileName = dialog.open();//返回的全路径(路径+文件名)
2,如果想选择多个文件,加上SWT.MULTI
String fileName = dialog.open();//返回最后一个选择文件的全路径
String[] fileNames = dialog.getFileNames();//返回所有选择的文件名,不包括路径
String path = dialog.getFilterPath();返回选择的路径,这个和fileNames配合可以得到所有的文件的全路径
3,加入filter
dialog.setFilterNames(new String[]{"可执行文件(*.exe),"Excel(*.xls),"所有文件""});
dialog.setFilterExtensions(new String[]{"*.exe","*.xls","*.*"});
//接受方法同2中的写法,不同就是加入了过滤器。
4,保存对话框
保存对话框并不提供保存功能,这个需要自己实现,它只提供界面,并得到用户选择的目录和输入的文件名
String fileName = dialog.open();
Swt/Jface中提供的dialog相关推荐
- 关于SWT/JFace中其他常用的事件
1.addSelectionListener:这个监听器最常用. 这个addSelectionListener是一个方法,addSelectionListener(SelectionListener ...
- JFace中Dialog类的使用方法
2019独角兽企业重金招聘Python工程师标准>>> cyper的例子: 注意dialog.open()返回Dialog.OK而不是SWT.OK 窗体代码: public clas ...
- 如何在Eclipse 3.6.2中安装swt/JFace
如何在Eclipse 3.6.2中安装swt/JFace 原文http://blog.csdn.net/nkliming/article/details/7790288 我之前一直想安装过swt,但是 ...
- 关于JFace中的右键菜单Action类,ActgionGroup类,MenuManager类
Action类,ActionGroup类,MenuManager类介绍 SWT中菜单是Menu类,菜单项用MeauItem类来实现.但是在实际开发中,同一种功能会有多中表现形式, 例如:Eclipse ...
- Eclipse 3.7 3.x SWT/Jface 开发环境搭建
Eclipse 3.7 3.x SWT/Jface 开发环境搭建 原文http://blog.csdn.net/kimsoft/article/details/7239651 1.准备工作 1.1.下 ...
- SWT/JFACE表格Table可编辑
SWT/JFACE表格Table可编辑 2009-10-12 22:52 今天刚好遇到了这个问题写了个例子,. public class Test { public static String []N ...
- java的布局管理器_Java中提供了几种布局管理器
近日,很多网友都在关注Java中提供了几种布局管理器这个话题,那么Java中提供了几种布局管理器具体情况是怎么样的呢?Java中提供了几种布局管理器的相关信息有哪些?下面的内容是小编为大家找到的关于J ...
- Django中提供的6种缓存方式
由于Django是动态网站,所有每次请求均会去数据进行相应的操作,当程序访问量大时,耗时必然会更加明显,最简单解决方式是使用: 缓存,缓存将一个某个views的返回值保存至内存或者memcache中, ...
- SQL Server 2005 中提供的隔离级别
SQL Server 2005 中提供的隔离级别 隔离级别 脏读(可能的情况) 非可重复读取(可能的情况) Phantom(可能的情况) 并发控制 读取未提交 是 是 是 (无) 读取已提交 否 是 ...
最新文章
- 向Python女神推荐这些年我追过的经典书籍
- 关于Configuration.ConfigurationManager
- 深度学习在美图个性化推荐的应用实践
- 转载——CVE-2019-0807
- python中用于标识字符串的定界符_001.python-基础-Template的字符串格式化
- php怎么分割页面,用html如何把页面分割成多个文件,由多个文件拼接而成?
- java静态方法和非静态方法的区别_史上最全阿里 Java 面试题总结
- CA7 ROLL B 选项
- Mac版IntelliJ IDEA上手的一些必要设置
- 管理员说:CSDN博客,一天访问量1000就很好了
- WINCC 7.4 SP1 7.5 博图v16 硬件学习补丁
- LibFetion 应用程序
- 熟练操作mac系统只需十分钟(Mac新手必看)!!
- PHP 获取图片信息exif
- android设备当广告屏使用方法,Android手机与电视无线HDMI同屏器使用教程
- 域服务器安全策略应用,ad域服务器组策略命令
- AWS Lambda学习2:通过S3事件触发调用Lambda函数,实现缩略图地生成
- c语言怎样处理lrc文件格式,lrc文件的一般格式是什么_教你如何打开lrc文件 - 驱动管家...
- BI是什么意思?在企业应用中有哪些好处?
- Python爬虫之bili站的正确打开方式
热门文章
- 服务器文件储存,文件储存服务器
- 利用高带宽无线代替电缆应用于脑机接口信号传输
- mysql100万数据一键下载csv_使用PHP来导入包含100万条数据的csv文件,请问你最快多久能全部导入mysql 数据库?...
- 英伟达吞并Arm失败!英美欧盟一齐干涉,老黄还要给孙正义12.5亿美元分手费
- 放话挑战GPT-3!以色列推出参数多30亿、词条多5倍的新语言模型|公测不用排队...
- 北京对无人车的热情,华尔街都感受到了
- 谷歌自动重建了完整果蝇大脑神经图:40万亿像素,可在线交互,用了数千块TPU...
- 美国邮政署将展开测试自驾卡车运输服务
- 商务部数据揭示了零售行业的哪些新趋势?
- Silverlight 控件的验证