📄 swing13_16.java
字号:
/**
* ClassName: Swing13_16.class
* Description: 对话框
* Copyright: Copyright (c) 2002
* Company: 中国青年出版社
* @author: Hong Yi
* @version 1.0
*/
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class MyFrame extends JFrame
implements ActionListener
{
public MyFrame()
{
setTitle("Swing示例程序16");
setSize(300, 200);
setLocation(100,100);
addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{ System.exit(0);
}
});
myPanel = new MyPanel();
getContentPane().add(myPanel, "Center");
//新建一个菜单栏
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,
"You've got a message!",
"Message Dlg",
JOptionPane.INFORMATION_MESSAGE);
}
else if (itemName.equals("ConfirmDlg"))
{
JOptionPane.showConfirmDialog(this,
"You need to be confirmed!",
"Confirm Dlg",
JOptionPane.YES_NO_CANCEL_OPTION,
JOptionPane.INFORMATION_MESSAGE);
}
else if (itemName.equals("OptionDlg"))
{
Object[] options = { "China", "USA", "Japan" };
JOptionPane.showOptionDialog(this,
"You need to select an option!",
"Option Dlg",
JOptionPane.DEFAULT_OPTION,
JOptionPane.WARNING_MESSAGE,
null, options, options[1]);
}
else if (itemName.equals("InputDlg"))
{
String inputValue = JOptionPane.showInputDialog("Please input a value");
myPanel.setMsg(inputValue);
}
}
}
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);
}
private String szShowMsg;
}
public class Swing13_16
{
public static void main(String[] args)
{
JFrame frame = new MyFrame();
frame.setVisible(true);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -