JDialog
来源:互联网 发布:快速磁盘碎片整理软件 编辑:程序博客网 时间:2024/05/12 05:42
对话框与框架(JFrame)有一些相似,但它一般是一个临时的窗口,主要用于显示提示信息或接受用户输入。所以,在对话框中一般不需要菜单条,也不需要改变窗口大小。此外,在对话框出现时,可以设定禁止其他窗口的输入,直到这个对话框被关闭。对话框是由 JDialog 类实现的,JDialog 类的构造方法有多种:
- JDialog();
- JDialog(Dialog owner);
- JDialog(Dialog owner,boolean modal);
- JDialog(Dialog owner,String title);
- JDialog(Dialog owner,String title,boolean modal);
- JDialog(Dialog owner,String title,boolean modal,GraphicsConfiguration gc);
- JDialog(Frame owner);
- JDialog(Frame owner,boolean modal);
- JDialog(Frame owner,String title);
- JDialog(Frame owner,String title,boolean modal);
- JDialog(Frame owner,String title,boolean modal,GraphicsConfiguration gc);
其中 Frame 类型的参数表示对话框的拥有者,boolean 类型参数用于控制对话框的工作方式。如果为true,则对话框为可视时,其他构件不能接受用户的输入,此时的对话框称为静态的;如果为false,则对话框和所属窗口可以互相切换,彼此之间没有顺序上的联系。String类型参数作为对话框的标题,在构造对话框之后,就可以添加其他的构件。
对话框使用示例:
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class JDialogDemo extends JFrame implements ActionListener{
public JDialogDemo(){
Container contentPane=this.getContentPane();
JButton jButton1=new JButton("显示对话框");
jButton1.addActionListener(this);
contentPane.add(jButton1);
this.setTitle("JDialogDemo");
this.setSize(300,300);
this.setLocation(400,400);
this.setVisible(true);
}
/* 响应窗体的按钮事件 */
public void actionPerformed(ActionEvent e){
if(e.getActionCommand().equals("显示对话框")){
HelloDialog hw=new HelloDialog(this);
}
}
class HelloDialog implements ActionListener{
JDialog jDialog1=null; //创建一个空的对话框对象
HelloDialog(JFrame jFrame){
/* 初始化jDialog1
* 指定对话框的拥有者为jFrame,标题为"Dialog",当对话框为可视时,其他构件不能
* 接受用户的输入(静态对话框) */
jDialog1=new JDialog(jFrame,"Dialog",true);
//创建一个按钮对象,该对象被添加到对话框中
JButton jButton1=new JButton("关闭");
jButton1.addActionListener(this);
//将"关闭"按钮对象添加至对话框容器中
jDialog1.getContentPane().add(jButton1);
/* 设置对话框的初始大小 */
jDialog1.setSize(80,80);
/* 设置对话框初始显示在屏幕当中的位置 */
jDialog1.setLocation(450,450);
/* 设置对话框为可见(前提是生成了HelloDialog对象) */
jDialog1.setVisible(true);
}
//响应对话框中的按钮事件
public void actionPerformed(ActionEvent e){
if(e.getActionCommand().equals("关闭")){
// 以下语句等价于jDialog1.setVisible(false);
/* public void dispose()
* 释放由此 Window、其子组件及其拥有的所有子组件所使用的所有本机屏幕资源。
* 即这些 Component 的资源将被破坏,它们使用的所有内存都将返回到操作系统,
* 并将它们标记为不可显示。 */
jDialog1.dispose();
}
}
}
public static void main(String[] args){
JDialogDemo test=new JDialogDemo();
}
}
- JDialog
- JDialog
- JDialog
- Jdialog
- JFrame JDialog
- JDialog总结
- JDialog顯示可見
- JDialog总结
- jdialog模态化
- jdialog居中
- Java---Swing(2)---------------------JDialog
- 如何刷新JDialog
- JDialog with Return Values
- JWindow 、JFrame 和 JDialog
- JDialog 监听期中按钮
- JDialog .setBackground失效解决办法
- JDialog关闭的问题
- JFrame、JWindow、JDialog、JOptionPane
- 毕设,如何是好
- 一个寒假的总结
- oracle8i 常用操作命令
- 学习有中断了
- 计算机服务平台OSGi
- JDialog
- 有谁知道'/n'与endl的区别吗?
- ERP(企业资源规划)
- 第一篇日志
- 新的环境,新的开始
- 学生大本营升级了!
- Java EE 6 Web层综述:Servlet获得异步支持、扩展性改善
- 想跳槽
- 中间件