知识大全 如何设计出有GUI特色的“纯”JAVA程序

Posted

篇首语:好汉不吃闷头亏,好鸟不钻刺笆林。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 如何设计出有GUI特色的“纯”JAVA程序相关的知识,希望对你有一定的参考价值。

如何设计出有GUI特色的“纯”JAVA程序  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  现在JAVA语言在世界上非常流行 其应用涉及电子商务 INTERNET网上数据库 CGI及多媒体等各个方面 年 月SUN公司宣布了最新版的JAVA SDK 为新世纪的JAVA奠定基础

  JAVA是一种面向对象的程序设计语言(OOP) 它是一种类C++的语言 由于JAVA消除了C/C++麻烦的内存管理和一些复杂的构造 如多继承等 JAVA的应用要比C++容易得多 况且JAVA的运行速度已与C++差不多(据美国有关部门测算) 还有那跨软硬件平台和一次编译 多次运行的机制 怎能不让程序员心动呢?

  JAVA运行有两种形式 小程序(APPLET)和应用程序(APPLICATION) 为了简化起见 本文只对应用程序进行探讨 小程序是在JAVA原程序经编译无误后嵌入到HTML后经IE或NC等浏览器使用的形式 我们在后面将给出应用程序(APPLICATION)实例来

  用过VC++ VB DELPHI和POWERBUILDER的朋友都知道用这些软件设计GUI(GRAPHICS USER INTERFACE)图形界面非常容易 只需用鼠标拖拽控件即可 几乎不用写什么代码 JAVA问世后 也有许多著名大公司为JDK(JAVA 以前的版本叫做JDK JAVA Developer Kit)开发了集成GUI开发环境软件 如MICROSOFT的Visual J++ Borland的JBuilder Symantec的Cafe Visual Cafe 等等 虽然这些产品支持GUI界面 开发程序较易 但也明显存在着以下这些不足之处

   ) 其JAVA版本滞后于SUN公司的最新版本

   ) 带来兼容性问题 由于各家开发自己的类库文件 如MS用自己的WFC类库 造成无法与事实上的JAVA标准SUN公司的JAVA JDK(SDK)和JFC(JAVA FOUNDATION CLASSES)相兼容 产生难以跨越平台等缺点

   ) 控件文件庞大 编译和运行较慢 运行文件也较大

   ) 开发环境价高 有些产品不能 善始善终 半路夭折 使用户处于被动局面 而SUN的JAVA JFC等均是免费提供的 有SUN公司庞大的技术力量保证

  由于上述原因 现在在国际上已流行 Pure JAVA 即 纯 JAVA技术 也就是说只用SUN公司的JAVA JDK JFC(GUI类库 类似AWT 但有着比AWT更强大的功能 又称为SWING既 摇摆 )来开发程序 其实只要了解JAVA的编程原理 及JDK和功能强大的JFC(SWING) 我们就可编写出具有专业水平的GUI界面的程序来

  下面笔者以一个程序为例 来介绍如何编写具有 纯 JAVA的程序 该程序的关键语句都有解释

          import java awt *;  import java awt event WindowAdapter;  import java awt event WindowEvent;  import  sun java swing *;  public class myGUI extends  sun java swing JFrame   //此处设置环境常量 如 字体 颜色等略去    sun java swing JPanel MainPanel;   sun java swing JPanel TopPanel;   sun java swing JButton ClearButton;   sun java swing JButton SearchButton;   sun java swing JTextField SearchText;  //构造器 对setMenu() 和 setGUI()数椐和调用的初始化和实例化  public myGUI()  super( Ideal GUI );  addWindowListener(new WindowAdapter()public void windowClosing(WindowEvent e) dispose(); System exit( );); //创建窗口事件  setMenu();  setGUI();     protected void ClearButtonClicked()  System out println( Clear Button Clicked );  SearchText requestFocus();  SearchText selectAll();   //处理ClearButton按钮事件子程序  protected void SearchButtonClicked()  System out println( Search Button Clicked );  SearchText requestFocus();  SearchText selectAll();   // 处理SearchButton按钮事件子程序  class ButtonAction implements java awt event ActionListener   public void actionPerformed(java awt event ActionEvent event)   Object object = event getSource();  if (object == ClearButton)  ClearButtonClicked();  else if(object == SearchButton)  SearchButtonClicked();   // end public void actionPerformed(    //监听事件的发生 如按钮的按下 鼠标的按动等 转向相应的处理   public void setGUI()  TopPanel=new  sun java swing JPanel(); //TopPanel面板  java awt GridBagLayout TopLayout = new java awt GridBagLayout();  TopPanel setLayout(TopLayout);  ClearButton = new  sun java swing JButton( Clear ); //ClearButton按钮  SearchText = new  sun java swing JTextField( Enter text here ); //SearchText文本框  SearchButton = new JButton( Search ); //SearchButton按钮  TopPanel add(SearchText);//在TopPanel上安装SearchText文本框  TopPanel add(SearchButton); ///在TopPanel上安装SearchButton按钮  TopPanel add(ClearButton);// 在TopPanel上安装ClearButton按钮  MainPanel = new  sun java swing JPanel();//主面板MainPanel  java awt GridBagLayout MainLayout = new java awt GridBagLayout();  MainPanel setLayout(MainLayout);  java awt GridBagConstraints MainConstraints = new java awt GridBagConstraints();  SetConstraints(MainConstraints  GBCBOTH TOPPANELX TOPPANELY ); //TopPanel  MainLayout setConstraints(TopPanel MainConstraints);  MainPanel add(TopPanel);//将TopPanel装入主面板MainPanel  this getContentPane() add(MainPanel); //将主面板装入Jframe框架  this setSize( ); //设置显示大小 可在程序中更改  this setVisible(true); //设置可显示  SearchText requestFocus();//文本框聚焦(选中)  SearchText selectAll();  ButtonAction BAction = new ButtonAction();  ClearButton addActionListener(BAction);//将按钮加入到活动监听器中  SearchButton addActionListener(BAction);     public static void main(String args[])  myGUI mGUI = new myGUI();   //启动主程序          JAVA的GUI界面是由一系列嵌入组件组成的 它使用了JDK和JFC(SWING)组件 本例首先建立框架(JFRAME) 在上面再建一个主面板(MAINPANEL) 再往下建立一个子面板(TOPPANEL) 然后将两个按钮和一个文本框插入到子面板中 这是一个典型的OOP实例 在程序分别捕捉到两个按钮的按动后 并显示按钮信息后再选取文本框中的内容 这个软件经扩充 可加入更多的子面板 和更多更复杂的组件(如JTABLE 表格或JTREE 树) 注意这个myGUI java文件可用任何文本编辑软件编辑 以纯文本方式存盘 JFC的组件比AWT的组件更美观 同样的按钮 JFC的好看 并能进行更多的设置

  在安装好JAVA (JDK)和JFC(SWING 或更高版本 这些系统可在有关网站下载)后即可在WINDOWS的DOS方式下编译和运行文件了

  先对文件进行编译

  javac myGUI java

  如无错误可用下面命令运行文件

  java myGUI class

cha138/Article/program/Java/gj/201311/27609

相关参考

知识大全 浅析Java内部类在GUI设计中的作用(2)

浅析Java内部类在GUI设计中的作用(2)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  四方

知识大全 基&

  一SWT简介    Java语言的声望和它在桌面应用程序(GUI程序)所取得的成就显然极不相符至今仍然很少能看到非常成功Java桌面程序虽然有JBuilderNetbeanJProbe等大型软件作

知识大全 java学习---GUI开发

java学习---GUI开发  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  java学习之——G

知识大全 Java标准输出重定向到GUI

Java标准输出重定向到GUI  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  实现输出从控制台到

知识大全 Java GUI用户界面编程的基础

JavaGUI用户界面编程的基础  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Java的GUI

知识大全 Java GUI的发展和演化简史

JavaGUI的发展和演化简史  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  当Java在年的春

知识大全 Java动态程序设计——反射介绍

Java动态程序设计——反射介绍  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Java动态程序

知识大全 Java GUI三剑客风云争霸

JavaGUI三剑客风云争霸  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  进行JavaGUI(

知识大全 Java GUI中布局管理器的使用

JavaGUI中布局管理器的使用  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!lishixinzh

知识大全 Java程序性能优化-设计调优

Java程序性能优化-设计调优  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!   性能调