下面是我做的一个登录框的小程序,当输入用户名(123)和密码(123)的时候会跳转到一个界面,用户名和密码错误的话会弹出一个提示对话框。
开发环境:eclipse3.1 插件SWT-Designer。
程序还有很多不完善的地方,请大家多多指正。
本来想把截图一起放在上面,可是不知道为什么图片贴不上来,谁能告诉我“编辑插入图像具体“怎么用啊,为什么我上传的图都是红XX
本来想把截图一起放在上面,可是不知道为什么图片贴不上来,谁能告诉我“编辑插入图像具体“怎么用啊,为什么我上传的图都是红XX,在这里先谢谢拉o(∩_∩)o...。
登陆框LoginSwt.java的代码:
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.ControlAdapter;
import org.eclipse.swt.events.ControlEvent;
import org.eclipse.swt.events.MouseAdapter;
import org.eclipse.swt.events.MouseEvent;
import org.eclipse.swt.events.MouseTrackAdapter;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Text;
public class LoginSwt ...{
public static void main(String[] args) ...{
Display display = Display.getDefault();
final Shell shell = new Shell(display,SWT.CLOSE|SWT.SYSTEM_MODAL);
//shell.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_INFO_BACKGROUND));
shell.setSize(357, 218);
shell.setText("SWT Application");
shell.open();
final Label label = new Label(shell, SWT.NONE);
//label.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_TITLE_INACTIVE_FOREGROUND));
//label.setAlignment(SWT.CENTER);
label.setText("登陆名:");
label.setBounds(68, 47, 51, 19);
final Label label_1 = new Label(shell, SWT.NONE);
//label_1.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_TITLE_INACTIVE_FOREGROUND));
//label_1.setAlignment(SWT.CENTER);
label_1.setText("密 码:");
label_1.setBounds(68, 72, 51, 16);
final Text name = new Text(shell, SWT.BORDER);
name.setBounds(136, 44, 131, 20);
final Text password = new Text(shell, SWT.PASSWORD | SWT.BORDER);
password.setBounds(136, 69, 131, 19);
Button button = new Button(shell, SWT.NONE);
button.setText("登陆");
button.setBounds(105, 126, 40, 25);
button.addSelectionListener(new SelectionAdapter() ...{
public void widgetSelected(SelectionEvent arg0) ...{
if(name.getText().equals("123")&&password.getText().equals("123"))...{
try...{
ChildShell window = new ChildShell();
window.open();
}catch (Exception e) ...{
e.printStackTrace();
}
}else...{
MessageDialog.openWarning(shell,null, "用户名或密码错误");
}
}
});
//button.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_RED));
button.addMouseListener(new MouseAdapter() ...{
public void mouseDoubleClick(MouseEvent arg0) ...{
name.setText("鼠标双击事件");
}
});
Button button_1 = new Button(shell, SWT.NONE);
button_1.setText("取消");
button_1.setBounds(202, 127, 44, 23);
//button_1.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_RED));
button_1.addMouseListener(new MouseAdapter() ...{
public void mouseDown(MouseEvent arg0) ...{
MessageDialog.openWarning(shell,null, "没有此项功能");
}
});
shell.layout();
while (!shell.isDisposed()) ...{
if (!display.readAndDispatch())
display.sleep();
}
}
}
恢复被注掉的代码可以显示界面和控件的颜色。
button.addSelectionListener(new SelectionAdapter() ...{
public void widgetSelected(SelectionEvent arg0) ...{
if(name.getText().equals("123")&&password.getText().equals("123"))...{
try...{
ChildShell window = new ChildShell();
window.open();
}catch (Exception e) ...{
e.printStackTrace();
}
}else...{
MessageDialog.openWarning(shell,null, "用户名或密码错误");
}
}
});
这段代码是给“登录”按钮添加一个事件,if(name.getText().equals("123")&&password.getText().equals("123"))
是建立用户名和密码是123,并判断,如果输入的用户名和密码都是123,则跳转到try里面内容所指向的界面及ChildShell.java,如果错误则弹出一个Dialog,显示"用户名或密码错误"。
ChildShell.java的代码:
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Shell;
public class ChildShell ...{
public static void main(String[] args) ...{
try ...{
ChildShell window = new ChildShell();
window.open();
} catch (Exception e) ...{
e.printStackTrace();
}
}
/** *//**
* Open the window
*/
public void open() ...{
final Display display = Display.getDefault();
final Shell shell = new Shell();
shell.setSize(500, 375);
shell.setText("SWT Application");
shell.open();
分享到:
相关推荐
学习 SWT 和 JFace 对于理解 Eclipse 平台开发和 GUI 编程至关重要。它们提供的组件丰富且功能强大,能帮助开发者快速构建跨平台的应用程序。在实际开发中,结合使用 SWT 和 JFace 可以平衡性能和易用性,提高开发...
这些文件可能是资源链接或笔记,jb51.net是一个提供各种编程资源和教程的网站,"电子书大全.url"可能指向一个电子书集合的网页,"PDF阅读器下载.url"可能是推荐的PDF阅读器下载链接,"脚本之家.url"可能是另一个编程...
在"swt,jface笔记"这个压缩包中,可能包含了关于这两项技术的学习笔记、示例代码、教程等资料。通过深入学习和实践这些材料,你可以更好地理解和掌握SWT和JFace的使用,从而提高开发Java桌面应用的能力。
### SWT控件知识学习笔记 #### 一、SWT/JFace常用组件介绍 SWT (Standard Widget Toolkit) 是 Eclipse 平台的一个图形界面工具包,它提供了与平台无关的 GUI 组件,允许开发者构建高性能的应用程序。SWT/JFace ...
本书的主要内容是介绍Eclipse插件开发的相关知识和技巧,包括Eclipse的系统结构、SWT/JFace技术、插件开发方法、RCP开发方法以及其他一些相关的技术专题。本书覆盖了Eclipse平台技术的核心领域,是目前市场上讲述...
SWT(Standard Widget Toolkit)是Java中用于构建图形用户界面(GUI)的一种库,与AWT和Swing不同,SWT直接与操作系统底层交互,提供更原生的...通过学习和掌握SWT,开发者可以创建出与本地应用相媲美的Java应用程序。
SWT/JFace的事件处理,swt,eclipse插件开发学习笔记
本书的主要内容是介绍Eclipse插件开发的相关知识和技巧,包括Eclipse的系统结构、SWT/JFace技术、插件开发方法、RCP开发方法以及其他一些相关的技术专题。本书覆盖了Eclipse平台技术的核心领域,是目前市场上讲述...
本书的主要内容是介绍Eclipse插件开发的相关知识和技巧,包括Eclipse的系统结构、SWT/JFace技术、插件开发方法、RCP开发方法以及其他一些相关的技术专题。本书覆盖了Eclipse平台技术的核心领域,是目前市场上讲述...
本书的主要内容是介绍Eclipse插件开发的相关知识和技巧,包括Eclipse的系统结构、SWT/JFace技术、插件开发方法、RCP开发方法以及其他一些相关的技术专题。本书覆盖了Eclipse平台技术的核心领域,是目前市场上讲述...
以下是对Eclipse插件开发学习笔记1-8章的主要知识点的详细说明: 1. **Eclipse平台简介** (03第1章 Eclipse平台简介.pdf) - Eclipse平台是基于OSGi服务框架的,它提供了插件化的架构,使得开发者可以轻松地添加、...
第3章 SWT编程基础 第4章 使用基本控件与对话框 第5章 容器与布局管理器 第6章 界面开发工具 第7章 高级控件使用 第8章 SWT/Jface的事件处理 第二篇 核心技术 第9章 Eclipse插件体系结构 第10章 开发 第一个插件...
JFace是建立在SWT基础上的一套更高层次的UI库,它主要关注于应用程序的高级功能,如视图管理、模型视图控制器(MVC)架构的支持等。通过JFace,开发者可以更容易地构建复杂的用户界面。 ### 四、SWT组件常用方法详解 ...
本学习笔记主要涵盖了Eclipse插件开发的基础知识,旨在帮助初学者掌握如何利用Eclipse平台进行插件开发。 首先,我们需要理解Eclipse平台的核心架构。【1第1章 Eclipse平台简介.pdf】会详细讲解,Eclipse基于OSGI...
本学习笔记涵盖了Eclipse插件开发的前五章内容,旨在帮助开发者深入理解和掌握如何构建自己的Eclipse插件。 第1章:Eclipse平台简介 在这一章节中,我们首先会了解到Eclipse平台的基本架构,包括Workbench、...
这本学习笔记涵盖了从第6章到第11章的关键内容,旨在为初学者提供一个扎实的入门指南。 第6章 "界面开发工具"介绍了Eclipse中的SWT和JFace库,它们是构建用户界面的基础。SWT(Standard Widget Toolkit)是Eclipse...
- JFace建立在SWT之上,提供了更高级别的抽象,使得开发者可以更轻松地创建复杂的用户界面。JFace特别强调数据模型和视图之间的分离,这使得界面设计变得更加灵活。 **1.3 插件技术和OSGi** - Eclipse的核心架构之...
在"Java学习笔记"中,我们涵盖了多个重要的Java技术领域,包括JDK的安装、Eclipse集成开发环境的设置、SWT和JFace库的应用,以及Web和JSP的相关知识。 1. **JDK安装**:Java Development Kit (JDK) 是编写Java程序...
本学习笔记主要涵盖了Eclipse插件开发的核心技术和实际操作,通过深入理解这些章节,初学者可以逐步掌握Eclipse插件开发的基础。 首先,我们来看第8章"SWT/JFace的事件处理"。SWT(Standard Widget Toolkit)和...
通过学习这些笔记,开发者可以深入了解如何使用SWT创建高效、原生感的用户界面,以及如何与其他Eclipse相关技术如JFace和RCP协同工作。对于想要提升Java GUI编程能力,特别是希望在Eclipse平台上开发桌面应用的...