利用Java Swing设计通用对话框

在Java Swing编程中,程序员还可以自定义对话框,一般可以从JDialog类来继承。下面给出一个对话框类的代码:

class HelpAbout extends JDialog implements ActionListener
{
 JavaWord mainFrame;
 JButton okButton;
 javax.swing.Timer myTimer;
 int Counter=0;
 public HelpAbout(JavaWord mainFrame)
 {
  super(mainFrame,"关于本程序的说明",true); //true 代表为有模式对话框
  this.mainFrame= mainFrame;
  JPanel contentPanel=new JPanel();
  contentPanel.setLayout(new BorderLayout());
  JLabel imageLabel=new JLabel(new ImageIcon(".\images\javalogo.gif"));
  contentPanel.add(imageLabel,BorderLayout.WEST);
  JPanel authorInfoPane=new JPanel();
  authorInfoPane.setLayout(new GridLayout(1,1));
  JTextArea aboutContent=new JTextArea("本程序是作者在学习Java2 Swing编程的一个简单的程序,\n并不作为商业目的使用。\n作者的联系方式是:\n");
  aboutContent.enable(false);
  authorInfoPane.add(aboutContent);
  contentPanel.add(authorInfoPane,BorderLayout.NORTH);
  JPanel sysInfoPane=new JPanel();
  sysInfoPane.setLayout(new GridLayout(5,1));
  sysInfoPane.setBorder(BorderFactory.createLoweredBevelBorder());
  contentPanel.add(sysInfoPane,BorderLayout.CENTER);
  JLabel userName=new JLabel("本机的用户名为:"+System.getProperty("user.name"));
  JLabel osName=new JLabel("本机的操作系统是:"+System.getProperty("os.name"));
  JLabel javaVersion=new JLabel("本机中所安装的Java SDK的版本号是:"+System.getProperty("java.version"));
  JLabel totalMemory=new JLabel("本机中Java虚拟机所可能使用的总内存数:"+Runtime.getRuntime().totalMemory()+"字节数" );
  JLabel freeMemory=new JLabel("本机中Java虚拟机所剩余的内存数?quot;+Runtime.getRuntime().freeMemory()+"字节数" );
  sysInfoPane.add(userName);
  sysInfoPane.add(osName);
  sysInfoPane.add(javaVersion);
  sysInfoPane.add(totalMemory);
  sysInfoPane.add(freeMemory);
  JPanel OKPane=new JPanel();
  okButton=new JButton("确定(O)",new ImageIcon(".\images\ok.gif"));
  okButton.setMnemonic('O'); //设置快捷键为"Alt + O"
  /*以下代码是设置案钮的Rollover图象*/
  Icon rollover = new ImageIcon(".\images\exit.gif");
  Icon general = new ImageIcon(".\images\ok.gif");
  Icon press = new ImageIcon(".\images\help.gif");
  okButton.setRolloverEnabled(true);
  okButton.setIcon(general); //设置离开时的图象
  okButton.setRolloverIcon(rollover); //设置在按纽上时的图象
  okButton.setPressedIcon(press); //设置在按下按纽时的图象
  this.getRootPane().setDefaultButton(okButton); //设置该按钮为该对话框的默认的按钮?.
  okButton.addActionListener(this);
  OKPane.add(okButton);
  contentPanel.add("South",OKPane);
  setContentPane(contentPanel);
  // this.setResizable(false); //设置对话框为不可改变大小
  myTimer=new javax.swing.Timer(1000,this);
  myTimer.start();
 }
 public void actionPerformed(ActionEvent parm1)
 {
  // TODO: Add your code here
  if(parm1.getSource()==okButton)
  {
   dispose();
  }
  else if(parm1.getSource()==myTimer)
  {
   Counter++;
   this.setTitle("当前的定时器的值为:"+Counter+"秒");
  }
 }
}

在事件响应代码中显示出该对话框,其程序代码如下:

HelpAbout aboutDialog=new HelpAbout(this);
aboutDialog.setSize(500,500);
aboutDialog.show();

时间: 2025-01-02 21:26:51

利用Java Swing设计通用对话框的相关文章

教您如何利用Java Swing实现游戏开发

Java咖啡馆已经开张不少时日了,如果你已经喜欢上了Java这杯咖啡的味道,那么记得常来哦.这一次,我们为大家准备了一大杯香浓的咖啡--将以开发一个"连连看"游戏为蓝本,和大家共同学习Java中Swing的用法,当你细心品味这杯咖啡后,你会发现,不但Java这杯咖啡还别有一番风味,而且还学会了专业游戏的开发方法,真是两全其美! 为了让大家先睹为快,下图便是游戏的截图.大家可以下载游戏试玩(下载游戏程序:下载源文件),然后在命令行方式下使用java -jar kyodai.jar来运行.

利用Java Swing设计标准对话框

Swing中提供了JOptionPane类来实现类似Windows平台下的MessageBox的功能,同样在Java中也有,利用JOptionPane类中的各个static方法来生成各种标准的对话框,实现显示出信息.提出问题.警告.用户输入参数等功能.这些对话框都是模式对话框. ConfirmDialog --- 确认对话框,提出问题,然后由用户自己来确认(按"Yes"或"No"按钮) InputDialog --- 提示输入文本 MessageDialog ---

Java Swing 弹出对话框的使用

Swing 中提供了 JOptionPane 类来实现类似 Windows 平台下的 MessageBox 的功能,利用 JOptionPane 类中的各个 static 方法来生成各种标准的对话框,实现显示出信息.提出问题.警告.用户输入参数等功能. 这些对话框都是模式对 话框:   ConfirmDialog   ---  确认对话框,提出问题,然后由用户自己来确认 ( 按 "Yes" 或 "No" 按钮 ) InputDialog   ---  提示输入文本

基础-JAVA课程设计实数计算器求指导思路

问题描述 JAVA课程设计实数计算器求指导思路 [问题描述]运用面向对象程序设计知识,利用Java语言设计和实现一个复数计算器.要求具备如下主要功能: (1)建立实数类.复数类 (2)实现实数.复数信息的初始化 (3)实现实数的加.减.乘.除.自增.自减.求平方.二次方根等操作 (4)实现复数的加.减.乘.除.取模.求平方.求共轭复数.求单个复数的向量角.求两个复数的夹角等运算 (5)实现实数.复数信息的输出 在实现过程中,需利用面向对象程序设计理论的基础知识,充分体现出Java语言关于类.继承

跟我学Java Swing之游戏设计(1)_Java编程

文章来源:电脑爱好者 作者:张剑 谁知道通天的巴比伦塔耗费了多少沙石?又有谁知道罗马的建成经历了多少个日夜?我们惟一知道的是,没有一块块砖石的垒砌,就没有蜿蜒万里的长城;没有巨石和黏土的堆集,就没有亘古不变的金字塔.由此可见,基础知识的准备对于我们学习任何事物都至关重要,那么,就让我们从认识Swing的一些基础功能开始,启动我们建造罗马的伟大工程吧! 前言 Java咖啡馆已经开张不少时日了,如果你已经喜欢上了Java这杯咖啡的味道,那么记得常来哦.这一次,我们为大家准备了一大杯香浓的咖啡--将以

JFormDesigner 5.1 Beta发布 Java Swing用户界面设计软件

JFormDesigner是一个专业的图形界面的Java Swing用户界面的设计软件.它支持JGoodies表单布局,成组布局,表格布局和网格布局,和其他标准配置管理人员.先进的GridBagLayout支持允许规格的横向和纵向的差距(如TableLayout ),这使得设计的一种形式一致差距使用GridBagLayout容易得多,能够用来减少编码格式上所花费的时间. JFormDesigner具有一个独立的开发工具产品和基于不同开发工具如http://www.aliyun.com/zixun

用Eclipse进行可视化Java界面设计

设计 前言 最近,Eclipse开源项目终于推出了期待已久的Visual Editor Project(VEP).VE项目使得功能强大的eclipse平台在java开发方面又增加了一个可视化java组件开发利器.它让java开发者再也不用依赖其它的IDE产品来做GUI界面方面的工作.所有的开发,从应用程序界面到业务逻辑的开发,现在都可以在eclipse平台上完成.本文将引导开发者如何安装配置并使用Visual Editor. 关于Visual Editor 开始介绍之前,来看一个笔者用Visua

Java Swing组件全演示

一 抛砖引玉 本文指在利用一个小程序"Swing 组件大全"来引导大家学习Java这门语言,熟悉Java Swing的各个组件.并在学习过程中参考作者设计这一程序的方法和思想,最终形成自己的思维方式和学习方式.你能举一返三是作者最开心的事情.小程序演示了Java Swing大部分组件.最后附上了全部代码及详细的注释说明.希望本文能对大家学习Java有所帮助. 随着Java风潮席卷国内,学习Java的方法和路径越来越多.而在大量的书本前,在Java庞大的类库前大大家都有点迷失方向的感觉,

新手入门:Java Swing的基础知识全接触

1.前言: 当我们学习过了java中的基本语法,并且熟悉java的面向对象基础以后,我们就可以开始简单的Swing程序的设计,用过Vb的朋友可能会被它的简单的设计用户界面方法所吸引,只需要拖几个控件到窗体上,为每个空件编写event就可以简单的实现界面设计.但是强大的java也不比vb逊色.同样可以设计出精美的界面. 2.Swing概述: 当java1.0刚刚出现时还没有swing,当时的GUI基本编程库,sun取名叫AWT(Abstract Window Tookit),基本AWT库处理用户界