📄 popuptest.java
字号:
//popup menu
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.event.*;
public class PopupTest extends JFrame
{
private JRadioButtonMenuItem items[];
private Color colorValues[] = {Color.blue,Color.yellow,Color.red};
private JPopupMenu popmenu;
public PopupTest()
{
super("Popup Test");
ItemHandler handler = new ItemHandler();
String colors[] = {"Blue","Yellow" ,"Red"};
//set up popup menu and its items
ButtonGroup colorGroup = new ButtonGroup();
popmenu = new JPopupMenu();
items = new JRadioButtonMenuItem[3];
//construct each menu item and add to popup menu
//aoso enable event handling for each menu item
for(int count = 0;count<items.length;count++)
{
items[count] = new JRadioButtonMenuItem(colors[count]);
popmenu.add(items[count]);
colorGroup.add(items[count]);
items[count].addActionListener(handler);
}
getContentPane().setBackground(Color.white);
addMouseListener(new MouseAdapter()
{
public void mousePressed(MouseEvent e)
{
System.out.println("Pressed @@");
checkForTriggerEvent(e);
}
public void mouseReleased(MouseEvent e)
{
System.out.println("Releaseed @@");
checkForTriggerEvent(e);
}
private void checkForTriggerEvent(MouseEvent e)
{
if(e.isPopupTrigger())
popmenu.show(e.getComponent(),e.getX(),e.getY());
}
});
setSize(500,500);
setVisible(true);
}
public static void main(String[]args)
{
PopupTest pt = new PopupTest();
pt.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
private class ItemHandler implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
for(int i = 0;i<items.length;i++)
{
if(e.getSource() == items[i])
{ getContentPane().setBackground(colorValues[i]);
repaint();
return;
}
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -