*设为首页
*加入收藏
热门关键字: JAVA
>>当前位置:Java大本营>Applet与Swing>文章内容
JavaSwing中的对话框
作者: 发布时间:2007-12-08 00:27:32

创建简单对话框不用Dialog类,而用类JOptionPane的静态方法即可。因此只要提供对话框需要的参数就行。简单对话框有4种,方法名的形式都是showXXXDialog,分别叙述如下。
消息框showMessageDialog的用法:
JOptionPane.showMessageDialog(所属Frame,消息本身,对话框标题,图形标志常量),例如
    JOptionPane.showMessageDialog(
this,"这是消息框message!", "Message Dlg",JOptionPane.INFORMATION_MESSAGE);
确认框showConfirmDialog的用法:
JOptionPane.showConfirmDialog(所属Frame,要求确认的内容,对话框标题,yes-no-cancel按钮,图形标志常量),例如
JOptionPane.showConfirmDialog(
this,"这是确认框confirm!","Confirm Dlg",
    JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.INFORMATION_MESSAGE);
选项框showOptionDialog的用法:
JOptionPane.showOptionDialog(所属Frame,提示语,对话框标题,使用默认选项,警告标志常量,null,选项数组,默认选项),例如
JOptionPane.showOptionDialog(
this,"请选择一个:", "Option Dlg",JOptionPane.DEFAULT_OPTION,
    JOptionPane.WARNING_MESSAGE,
null, options, options[1]);
输入框showInputDialog的用法:
String JOptionPane.showInputDialog(输入提示语),返回输入的字符串,例如:
String inputValue = JOptionPane.showInputDialog(
"这是输入框");

例12 本例程演示创建和使用简单对话框的方法。在菜单中选择一个就显示一个对话框。
程序运行后的界面如图12所示。

 

   

图12

程序的全部代码如下:

///
// OptionPane.java
import
java.awt.*;
import java.awt.event.*;
import javax.swing.*;

class MyFrame extends JFrame implements ActionListener{
 
public MyFrame(){
    setTitle(
"简单对话框4种");
    setSize(300, 200);
    setLocation(100,100);
    addWindowListener(
new WindowAdapter(){
  
    public void windowClosing(WindowEvent e)
        { System.exit(0);}
    });
    myPanel =
new MyPanel();
    getContentPane().add(myPanel,
"Center");
    //创建一个菜单,含4个菜单项
    JMenuBar menuBar = new JMenuBar();
    setJMenuBar(menuBar);
    JMenu dlgMenu =
new JMenu("ShowDlg");
    dlgMenu.setMnemonic('S');
    JMenuItem dlgItem =
new JMenuItem("MessageDlg", 'M');
    dlgMenu.add(dlgItem);
    dlgItem.addActionListener(
this);
    dlgItem =
new JMenuItem("ConfirmDlg", 'C');
    dlgMenu.add(dlgItem);
    dlgItem.addActionListener(
this);
    dlgItem =
new JMenuItem("OptionDlg", 'O');
    dlgMenu.add(dlgItem);
    dlgItem.addActionListener(
this);
    dlgItem =
new JMenuItem("InputDlg", 'I');
    dlgMenu.add(dlgItem);
    dlgItem.addActionListener(
this);
    menuBar.add(dlgMenu);
  }
  //监听相应的菜单项,弹出相应的对话框
  public void actionPerformed(ActionEvent evt){
    if (evt.getSource() instanceof JMenuItem){
        String itemName = evt.getActionCommand();
    if (itemName.equals("MessageDlg")){
        JOptionPane.showMessageDialog(
this,"这是消息框message!"
       
"Message Dlg",JOptionPane.INFORMATION_MESSAGE);
    }
    else if (itemName.equals("ConfirmDlg")){
        JOptionPane.showConfirmDialog(
this,"这是确认框confirm!","Confirm Dlg",
    J    OptionPane.YES_NO_CANCEL_OPTION,JOptionPane.INFORMATION_MESSAGE);
    }
    else if (itemName.equals("OptionDlg")){
        Object[] options = {
"China", "USA", "Japan" };
        JOptionPane.showOptionDialog(
this,"请选择一个国家", "Option Dlg",
            JOptionPane.DEFAULT_OPTION,JOptionPane.WARNING_MESSAGE,
null
            options, options[1]);
    }
   
else if (itemName.equals("InputDlg")){
        String inputValue = JOptionPane.showInputDialog(
"这是输入框");
        myPanel.setMsg(inputValue);Option
    }
  }
 }
    private MyPanel myPanel;
}
class MyPanel extends JPanel{
 
public MyPanel(){
    szShowMsg =
"";
  }
 
public void setMsg(String szMsg) {
    szShowMsg = szMsg;
    repaint();
  }
 
public void paintComponent(Graphics g){
    super.paintComponent(g);
    g.drawString(szShowMsg, 20, 20);
  }

共2页: 上一页 1 [2] 下一页

· SWT树节点上弹出菜单的实现 (02-05)
·基于 JSF+Spring + JPA 构建敏捷的Web(02-01)
·在SWING 的 JFileChooser中俘获返回的(01-20)
·SWT中设置TableViewer和TreeViewer为双(01-19)
·Spring之特殊字符转义和方法入参检测工(01-16)
·spring2.5 + hibernate3.2x 标注(annot(01-13)
·spring2.5 + hibernate3.2x 标注(annot(01-13)
·SWT中的FormLayout (01-10)
·Spring基础(01-10)
·Spring 让 LOB 数据操作简单化 (12-26)
·Swing中使用Html标签 (12-26)
·Swing中使用Html标签 (12-26)
复制地址发给您的好友: [推荐文章] [返回顶部] [关闭窗口]
版权所有 Java大本营 1999-2007 转载请注明出处