`
Beaver's
  • 浏览: 396400 次
  • 性别: 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无法找到这个类

相关推荐

    SWT/JFACE实现的带浏览器的记事本

    综上所述,"SWT/JFACE实现的带浏览器的记事本"是一个充分利用了 SWT 的原生组件特性和 JFace 的高级功能的综合项目,它不仅提供了基本的文本编辑功能,还创新性地融合了浏览网页的能力,为用户提供了一个全面且便捷...

    eclipse swt包

    这个压缩包包含了支持Java浏览器内嵌功能的组件,这意味着开发者可以利用SWT来在他们的应用程序中集成Web浏览功能。 标签中的“eclipseswt”、“eclipse”和“swt api jar”进一步明确了这个包与Eclipse IDE的关系...

    swt api chm格式

    3. **对话框(Dialogs)**:如消息对话框(MessageDialog)、文件选择对话框(FileDialog)等,提供常见的用户交互功能。 4. **图像处理**:支持位图(Bitmap)、图标(Image)的加载和显示,以及颜色、字体等图形...

    SWT开发组件demo

    开发者可以利用这些组件实现更复杂的应用场景,如文件选择对话框(FileDialog)、颜色选择对话框(ColorDialog)等。 本包的“SWTdemo”提供了这些组件的实例代码,通过实际运行和调试,开发者可以更深入地理解每个...

    swt-4.4.2-win32-win32-x86_64.zip

    - `swt.jar`:这是SWT的核心库文件,包含了实现GUI组件和事件处理的类。 - `.project`:这是Eclipse项目的配置文件,定义了项目的构建设置、Natures和Builders等信息。 - `src.zip`:源代码的ZIP文件,可能包含了...

    SWT examples

    文件浏览功能通常涉及文件对话框,如`FileDialog`,用于打开和保存文件。开发者会学习如何使用这些对话框,以及如何处理文件路径和文件选择事件。同时,可能还会涉及到文件和目录的操作,如读取、创建和删除。 6. ...

    SWT/JFace 3.5 API (HTML)

    标题“SWT/JFace 3.5 API (HTML)”表明这是一个针对SWT和JFace 3.5版本的API文档,以HTML格式呈现,这样的设计便于开发者在网页浏览器中快速查找、浏览和理解API函数、类和接口的详细信息。 1. SWT(Standard ...

    SWT/JFace_3.4_API_html_EN

    6. **对话框**: SWT包含多种预定义的对话框,如消息对话框、打开/保存文件对话框等。 JFace的主要知识点涵盖: 1. **视图(Views)**: JFace简化了创建自定义视图的过程,视图可以显示数据或提供特定功能。 2. **编辑...

    java 实现的图片浏览器

    遍历这个列表,实现图片的顺序浏览和跳转。 6. **对话框**: 当用户选择删除图片时,通常会弹出一个确认对话框。`JOptionPane`类提供了标准的对话框组件,如`showConfirmDialog`用于显示确认消息。 7. **多线程**: ...

    SWT(JFace)体验之Icon任我变

    然后,创建了labelIconFile、textIconFile和buttonIconBrowse,分别用于显示提示信息、输入图标文件路径以及打开浏览文件对话框。接着,创建了一个可以设置图标按钮`buttonSetIcon`。 `buttonIconBrowse`的监听器...

    java使用swt显示图片示例分享

    - 添加文件选择对话框,让用户选择要查看的图片。 - 实现图像的滚动功能,允许用户查看图像的不同部分。 - 添加缩放功能,允许用户放大或缩小图像。 - 支持多种图片格式,通过Java的`javax.imageio`包读取不同类型的...

    Dreamweaver网页设计培训教程06.pptx

    FlashPaper 是一种特殊类型的Flash文件,能将文档转换为可浏览的Flash格式。在网页中插入FlashPaper,用户可以在不离开当前页面的情况下查看、搜索、打印和缩放文档,提高了用户体验。 此外,Dreamweaver 8 还支持...

    插入多媒体对象.pptx

    在Flash方面,常见的文件格式有FLA(源文件)、SWF(可播放文件)、SWT(模板文件)、SWC(元件库文件)以及FLV(视频文件)。音频文件格式多样,如MIDI、WAV、AU、RA、AIF和MP3。视频文件则有MPEG1(VCD质量)、...

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

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

    eclipse插件开发form编辑器

    这得益于SWT(Standard Widget Toolkit)技术,它确保了菜单、窗口、树、表格、按钮等组件无论在哪种操作系统上都能与系统风格保持一致。 - **早期应用范围**:Eclipse插件开发最初主要集中在编辑器、视图、向导和...

    mysource-jface

    在Java编程中,JFace的作用是作为SWT的抽象层,使得开发者可以更加专注于业务逻辑,而不是底层的GUI实现细节。SWT本身是一个与操作系统紧密集成的GUI库,提供了丰富的控件和事件处理机制。而JFace则在SWT之上,添加...

    eclipse jface

    2. **项目管理界面**:展示项目结构,提供文件浏览、搜索、版本控制等操作。 3. **设置面板**:创建配置选项,让用户自定义应用的行为和外观。 4. **数据查看器**:显示数据库查询结果,支持排序、过滤和导出数据。 ...

    Eclipse插件开发

    - 优化`handleBrowse`方法以增强文件浏览功能。 - 改进`dialogChanged`方法以响应用户交互。 - 分析`updateStatus`方法以确保状态同步。 - 实现获取界面控件值的方法以收集用户输入数据。 - **枚举项编辑向导页...

Global site tag (gtag.js) - Google Analytics