关于GUI的一个应用实例,学得越多,越感觉有意思

原创 2012年03月28日 21:26:34

---------------------- Windows Phone 7手机开发.Net培训、期待与您交流! ----------------------


今天跟老毕学习GUI,很开心很爽,尤其是监听器的安装这一块儿,原来绕来绕去把自己都给搞懵了,现在跟着老毕一起做了一遍,思路清晰多了,如有错误,也请高手指教:

import java.awt.*;
import java.awt.event.*;
import java.io.*;




class ListDemo 
{
//第一步将要用到的组建在这里初始化
private Frame f;
private Button b;
private TextField tf;
private TextArea ta;
private Dialog d;
private Button okBt;
private Label l;
//创建一个构造函数,再将需要对象一初始化就装载的程序放到构造函数中;
public ListDemo()
{
init();
}
//创建事件管理方法
public void init()
{
f = new Frame("My Frame");
f.setBounds(300,100,600,400);
f.setLayout(new FlowLayout());
f.addWindowListener(new WindowAdapter()/*在这里我们给窗口对象安装了窗口监听器,
                                                    当窗口动作(或叫事件)发生时,会有一个事件信息文件被传到该监听器,
                                                     监听器根据事件信息,调用相应的方法  */

{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});


tf = new TextField(50);
tf.addActionListener(new ActionListener()//这是TextField的自身特有的动作监听器,其实就是当你击回车键时,监听器该做什么
{

public void actionPerformed(ActionEvent e)
{
ta.setText("");
show();


}


});
f.add(tf);


b = new Button("提交");
b.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent a)
{
ta.setText("");
show();
}
});


f.add(b);


ta = new TextArea(20,60);
f.add(ta);


f.setVisible(true);




d = new Dialog(f,"错误提醒",true);
d.setBounds(400,200,300,150);
d.setLayout(new FlowLayout());
d.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
d.setVisible(false);
}
});

l = new Label();
d.add(l);


okBt = new Button("确定");
okBt.addActionListener(new ActionListener()//给错误提示框里的按钮安装监听器
{
public void actionPerformed(ActionEvent e)
{
d.setVisible(false);
tf.setText("");
}
});
d.add(okBt);
}


private void show()//这里是将事件里的显示方法独立封装,提高代码的复用性.
{
String dirPath = tf.getText();
File f = new File(dirPath);
if(f.exists() && f.isDirectory())
{
String[] names = f.list();
for(String name : names)
{
ta.append(name+"\r\n");
}
}
else 
{
String info = "您输入的地址名"+dirPath+"不存在,请重新输入!";
l.setText(info);
d.setVisible(true);


}
}




public static void main(String[] args) 
{
new ListDemo();

}
}














---------------------- Windows Phone 7手机开发.Net培训、期待与您交流! ----------------------

相关文章推荐

文摘:你越对, 得罪的人越多!

中国人求的是圆满,绝对不是对错。实际上这是最难做到的。中国人最讨厌没是没非的人,但是中国人最不喜欢是非分明的人。凡是是非分明的人,人缘都不好,事情都办不通。 我们是要求很高的民族,我们要在圆满...
  • zjc314
  • zjc314
  • 2017年02月19日 10:46
  • 272

、 只要openSession一次,hibernate内部就会连接数据库一次,所以在代码中opesnSession的次数,越多效率越低

Hibernate课堂笔记 1 Hibernate是什么         Hibernate是一个数据库的操作框架 1.1 Jdbc的缺点 l jdbc的效率比较低 每一次请求,打开连接、发...
  • tfy1332
  • tfy1332
  • 2013年03月01日 23:07
  • 4651

加班越久故障越多_如何跳出程序员的恶性循环?

点击有惊喜 如何让每一位可爱的工程师少加班、不加班?阿里巴巴技术专家张冠楠,在质量保障体系建设、持续集成领域、敏捷实践领域和研发效能领域方面具有丰富的经验和心得。今天,冠楠将用阿里研...

上班族难懂五险一金 交的越多是否越吃亏

交的越多是否到期领的也越多?强制缴纳是否没商量?缴纳者频繁“漂流”是否为本地人“做嫁衣裳”?     近日在网络上,有不少网友反映,尽管月月缴纳,但对所谓的“五险一金”知之甚少。记者在人民广 ...
  • lhy2199
  • lhy2199
  • 2012年03月07日 09:53
  • 8717

给命令行(cmd)做一个GUI——Process的应用

擦了一下午地板,腰都快断了。躺着喝点啤酒编个小程序玩。。 非常简单。。灰常简单。。看了你就知道了。。 ---------------- 源代码 (如果你实在懒得C+V了,你就下载吧)...

-一个简单的windows GUI应用程序

一个简单的windows GUI应用程序: 代码下载(VS2008):     #include // 编写Windows程序必须包含的头文件 LRESULT CALLBACK...

关于C#中窗体间传值的几种方法(感觉实际当中应用的较多)

WinForm窗体传值 1.通过构 造函数 特点: 传值是单向的(不可以互相传值),实现简单 实现代 码如下: 在窗体Form2中 int value1; string value2; public ...

使用wxPython开发一个简单GUI应用

使用wxPython开发一个简单GUI应用 python用的时间不长,一般用来做字符串处理、简单测试的一些小程序。最近工作中需要做一个简单的GUI应用,使用麦克录音并存成wave文件。然...

转换说明符!! hdu 1720 题目很水不重要. 但是c和c++ 按进制输入的不同感觉有点意思

#include #include using namespace std; int main() { int a,b; while(cin>>hex>>a>>b) { cout
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:关于GUI的一个应用实例,学得越多,越感觉有意思
举报原因:
原因补充:

(最多只允许输入30个字)