⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 menulookdemo.txt

📁 用JAVA处理菜单的例子
💻 TXT
字号:
import java.awt.*; 
import java.awt.event.*; 
import javax.swing.JMenu; 
import javax.swing.JMenuItem; 
import javax.swing.JCheckBoxMenuItem; 
import javax.swing.JRadioButtonMenuItem; 
import javax.swing.ButtonGroup; 
import javax.swing.JMenuBar; 
import javax.swing.KeyStroke; 
import javax.swing.ImageIcon; 

import java.awt.event.KeyEvent; 

import javax.swing.JPanel; 
import javax.swing.JTextArea; 
import javax.swing.JScrollPane; 
import javax.swing.JFrame; 

/* MenuLookDemo.java is a 1.4 application that requires images/middle.gif. */ 

/* 
* This class exists solely to show you what menus look like. 
* It has no menu-related event handling. 
*/ 
public class MenuLookDemo { 
JTextArea output; 
JScrollPane scrollPane; 

public JMenuBar createMenuBar() { 
JMenuBar menuBar; 
JMenu menu, submenu; 
JMenuItem menuItem; 
JRadioButtonMenuItem rbMenuItem; 
JCheckBoxMenuItem cbMenuItem; 

//Create the menu bar. 
menuBar = new JMenuBar(); 

//Build the first menu. 
menu = new JMenu("A Menu"); 
menu.setMnemonic(KeyEvent.VK_A);//设置热键 
menu.getAccessibleContext().setAccessibleDescription( 
"The only menu in this program that has menu items"); 
menuBar.add(menu); 

//a group of JMenuItems 
menuItem = new JMenuItem("A text-only menu item", 
KeyEvent.VK_T); 
//menuItem.setMnemonic(KeyEvent.VK_T); //used constructor instead 
//以下语句设置加速键 
menuItem.setAccelerator(KeyStroke.getKeyStroke( 
KeyEvent.VK_1, ActionEvent.ALT_MASK)); 
menuItem.getAccessibleContext().setAccessibleDescription( 
"This doesn′t really do anything"); 
menu.add(menuItem); 

ImageIcon icon = createImageIcon("images/middle.gif"); 
menuItem = new JMenuItem("Both text and icon", icon); 
menuItem.setMnemonic(KeyEvent.VK_B); 
menu.add(menuItem); 

menuItem = new JMenuItem(icon); 
menuItem.setMnemonic(KeyEvent.VK_D); 
menu.add(menuItem); 

//a group of radio button menu items 
menu.addSeparator(); 
ButtonGroup group = new ButtonGroup(); 

rbMenuItem = new JRadioButtonMenuItem("A radio button menu item"); 
rbMenuItem.setSelected(true); 
rbMenuItem.setMnemonic(KeyEvent.VK_R); 
group.add(rbMenuItem); 
menu.add(rbMenuItem); 

rbMenuItem = new JRadioButtonMenuItem("Another one"); 
rbMenuItem.setMnemonic(KeyEvent.VK_O); 
group.add(rbMenuItem); 
menu.add(rbMenuItem); 

//a group of check box menu items 
menu.addSeparator(); 
cbMenuItem = new JCheckBoxMenuItem("A check box menu item"); 
cbMenuItem.setMnemonic(KeyEvent.VK_C); 
menu.add(cbMenuItem); 

cbMenuItem = new JCheckBoxMenuItem("Another one"); 
cbMenuItem.setMnemonic(KeyEvent.VK_H); 
menu.add(cbMenuItem); 

//a submenu 
menu.addSeparator(); 
submenu = new JMenu("A submenu"); 
submenu.setMnemonic(KeyEvent.VK_S); 

menuItem = new JMenuItem("An item in the submenu"); 
menuItem.setAccelerator(KeyStroke.getKeyStroke( 
KeyEvent.VK_2, ActionEvent.ALT_MASK)); 
submenu.add(menuItem); 

menuItem = new JMenuItem("Another item"); 
submenu.add(menuItem); 
menu.add(submenu); 

//Build second menu in the menu bar. 
menu = new JMenu("Another Menu"); 
menu.setMnemonic(KeyEvent.VK_N); 
menu.getAccessibleContext().setAccessibleDescription( 
"This menu does nothing"); 
menuBar.add(menu); 

return menuBar; 
} 

public Container createContentPane() { 
//Create the content-pane-to-be. 
JPanel contentPane = new JPanel(new BorderLayout()); 
contentPane.setOpaque(true);//设置透明度 

//Create a scrolled text area. 
output = new JTextArea(5, 30); 
output.setEditable(false); 
scrollPane = new JScrollPane(output); 

//Add the text area to the content pane. 
contentPane.add(scrollPane, BorderLayout.CENTER); 

return contentPane; 
} 

/** Returns an ImageIcon, or null if the path was invalid. */ 
protected static ImageIcon createImageIcon(String path) { 
java.net.URL imgURL = MenuLookDemo.class.getResource(path); 
if (imgURL != null) { 
return new ImageIcon(imgURL); 
} else { 
System.err.println("Couldn′t find file: " + path); 
return null; 
} 
} 

public static void main(String[] args) { 
//下面的语句可以生成一个十分漂亮的标题栏. 
JFrame.setDefaultLookAndFeelDecorated(true); 

//Create and set up the window. 
JFrame frame = new JFrame("MenuLookDemo"); 
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 

//Create/set menu bar and content pane. 
MenuLookDemo demo = new MenuLookDemo(); 
frame.setJMenuBar(demo.createMenuBar()); 
frame.setContentPane(demo.createContentPane()); 

//Display the window. 
frame.setSize(450, 260); 
frame.setVisible(true); 
} 
} 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -