`
Beaver's
  • 浏览: 390423 次
  • 性别: Icon_minigender_2
  • 来自: 天津
社区版块
存档分类
最新评论

SWT实现浏览文件对话框

阅读更多
package cn.edu.tju.ikse.sn.parser.wsdl;

import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.FileDialog;
import org.eclipse.swt.widgets.MessageBox;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Label;
import com.swtdesigner.SWTResourceManager;
import org.eclipse.swt.widgets.Text;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.widgets.Group;

public class WSDLParseGUI {

	protected Shell shell;
	private Text text_file;

	/**
	 * Launch the application.
	 * @param args
	 */
	public static void main(String[] args) {
		try {
			WSDLParseGUI window = new WSDLParseGUI();
			window.open();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	/**
	 * Open the window.
	 */
	public void open() {
		Display display = Display.getDefault();
		createContents();
		shell.open();
		shell.layout();
		while (!shell.isDisposed()) {
			if (!display.readAndDispatch()) {
				display.sleep();
			}
		}
	}

	/**
	 * Create contents of the window.
	 */
	protected void createContents() {
		shell = new Shell();
		shell.setSize(500, 200);
		shell.setText("解析WSDL");
		
		text_file = new Text(shell, SWT.BORDER);
		text_file.setBounds(80, 33, 290, 24);
		//实现文件浏览功能
		Button browseButton = new Button(shell,SWT.PUSH);
		browseButton.setText("浏览...");
		browseButton.setFont(SWTResourceManager.getFont("Tahoma", 12, SWT.NORMAL));
		browseButton.setBounds(383, 33, 80, 24);
		browseButton.addSelectionListener(new SelectionAdapter(){

			public void widgetSelected(SelectionEvent e){
				 FileDialog dialog = new FileDialog (shell, SWT.OPEN);
				 dialog.setText("Source Folder Selection");
				 dialog.setFilterExtensions(new String[] {"*.xml","*.wsdl","*.asmx","*.*"});
				 String filePath = dialog.open();
				 if(dialog!=null){
					 text_file.setText(filePath);
				 }
			}
		});
		Button button_exe = new Button(shell, SWT.NONE);
		button_exe.addSelectionListener(new SelectionAdapter() {
			@Override
			public void widgetSelected(SelectionEvent e) {
				MessageBox msgbox = new MessageBox(shell,
					SWT.ICON_QUESTION | SWT.OK);
				msgbox.setText("提示");
				
				String file = "";
				file = text_file.getText();
				if(file.equals("") || file == null){
					msgbox.setMessage("WSDL文件不能为空");
					msgbox.open();
					return;
				}
				
				if(WSDLValidator.validate("file:\\"+ file)){
					ParseWSDL1 p = new ParseWSDL1(file);
					msgbox.setMessage("WSDL文件解析完毕!");
				}
				else{
					msgbox.setMessage("WSDL文件无效");
					msgbox.open();
					return;
				}

				msgbox.open();
		
			}
		});
		button_exe.setFont(SWTResourceManager.getFont("Tahoma", 12, SWT.NORMAL));
		button_exe.setBounds(214, 133, 87, 23);
		button_exe.setText("\u6267\u884C");
		
		Group group = new Group(shell, SWT.NONE);
		group.setBounds(10, 10, 472, 117);
		
		Label label = new Label(group, SWT.NONE);
		label.setBounds(10, 23, 105, 24);
		label.setFont(SWTResourceManager.getFont("Tahoma", 12, SWT.NORMAL));
		label.setText("源文件:");
		

	}
}


运行结果:



点击“浏览”按钮:

  • 大小: 7.8 KB
  • 大小: 34.3 KB
分享到:
评论
2 楼 Beaver's 2012-11-20  
荣仔521 写道
SWTResourceManager无法找到这个类


SWT 应该是eclipse 自带的
1 楼 荣仔521 2012-09-14  
SWTResourceManager无法找到这个类

相关推荐

    JAVA上百实例源码以及开源项目

     Java实现HTTP连接与浏览,Java源码下载,输入html文件地址或网址,显示页面和HTML源文件,一步步的实现过程请下载本实例的Java源码,代码中包括丰富的注释,对学习有帮助。 Java实现的FTP连接与数据浏览程序 1个...

    java源码包---java 源码 大量 实例

     Java实现HTTP连接与浏览,Java源码下载,输入html文件地址或网址,显示页面和HTML源文件,一步步的实现过程请下载本实例的Java源码,代码中包括丰富的注释,对学习有帮助。 Java实现的FTP连接与数据浏览程序 1个...

    java源码包2

     Java实现HTTP连接与浏览,Java源码下载,输入html文件地址或网址,显示页面和HTML源文件,一步步的实现过程请下载本实例的Java源码,代码中包括丰富的注释,对学习有帮助。 Java实现的FTP连接与数据浏览程序 1个...

    java源码包3

     Java实现HTTP连接与浏览,Java源码下载,输入html文件地址或网址,显示页面和HTML源文件,一步步的实现过程请下载本实例的Java源码,代码中包括丰富的注释,对学习有帮助。 Java实现的FTP连接与数据浏览程序 1个...

    Visual C++ 编程资源大全(源码 窗体)

    1,pic_open.zip 带位图预览的打开文件对话框(4KB)<END><br>2,bmpdlg.zip 一个位图对话框类 (11KB)<END><br>3,folder.zip 只显示文件夹信息的文件对话框(2KB)<END><br>4,dir_pic.zip 文件目录搜集工具...

    java源码包4

     Java实现HTTP连接与浏览,Java源码下载,输入html文件地址或网址,显示页面和HTML源文件,一步步的实现过程请下载本实例的Java源码,代码中包括丰富的注释,对学习有帮助。 Java实现的FTP连接与数据浏览程序 1个...

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    Java实现的FTP连接与数据浏览程序 1个目标文件 摘要:Java源码,网络相关,FTP Java实现的FTP连接与数据浏览程序,实现实例化可操作的窗口。 部分源代码摘录: ftpClient = new FtpClient(); //实例化FtpClient对象 ...

    成百上千个Java 源码DEMO 3(1-4是独立压缩包)

    Java实现的FTP连接与数据浏览程序 1个目标文件 摘要:Java源码,网络相关,FTP Java实现的FTP连接与数据浏览程序,实现实例化可操作的窗口。 部分源代码摘录: ftpClient = new FtpClient(); //实例化FtpClient对象 ...

    JAVA上百实例源码以及开源项目源代码

     Java实现HTTP连接与浏览,Java源码下载,输入html文件地址或网址,显示页面和HTML源文件,一步步的实现过程请下载本实例的Java源码,代码中包括丰富的注释,对学习有帮助。 Java实现的FTP连接与数据浏览程序 1个...

Global site tag (gtag.js) - Google Analytics