如何修改JButton的大小 1、如何更改JButton的大小2、如何更改JMenu的大小3、如何设置两个JMenu之间的间距4、如何把鼠标放置在JMenu上,即弹出JMenuItem每题5分,答对即给分. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1. setSize(int width,int height) 2. setSize(int width,int height) JMenu设置间距,我没有发现过有什么JDK的方法,不过一个JMenu可以添加一个组件,如JMenu.add(new JLabel('123')),如果内容为空就可以没有显示地隔开了。但我觉得用菜单这样做无意义。放上去就弹出?倒没有做过,你可以试试JMenuItem.show()方法 楼上的你是说获取鼠标焦点,当到达JMenu上时,即触发JMenuItem.show()吗? import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import java.awt.event.MouseListener;import javax.swing.*;public class T { public static void main(String[] args) { try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch (Exception e) { e.printStackTrace(); } MouseListener ml = new MouseAdapter() { public void mouseEntered(MouseEvent e) { JMenu menu = (JMenu) e.getComponent(); MenuElement me[] = new MenuElement[3]; me[0]=(MenuElement)menu.getParent(); me[1]=menu; me[2]=menu.getPopupMenu(); MenuSelectionManager.defaultManager().setSelectedPath(me); } }; JMenuBar mb = new JMenuBar(); JMenu fileMenu = new JMenu("File"); fileMenu.add(new JMenuItem("Open")); fileMenu.add(new JMenuItem("Save")); fileMenu.add(new JMenuItem("Save As...")); JMenu recentMenu = new JMenu("Recent"); recentMenu.add(new JMenuItem("C:/abc.txt")); recentMenu.add(new JMenuItem("D:/def.txt")); recentMenu.add(new JMenuItem("E:/jkl.txt")); fileMenu.addSeparator(); fileMenu.add(recentMenu); JMenu editMenu = new JMenu("Edit"); editMenu.add(new JMenuItem("Cut")); editMenu.add(new JMenuItem("Copy")); editMenu.add(new JMenuItem("Paste")); JMenu helpMenu = new JMenu("Help"); helpMenu.add(new JMenuItem("About")); mb.add(fileMenu); mb.add(Box.createHorizontalStrut(50)); mb.add(editMenu); mb.add(Box.createHorizontalGlue()); mb.add(helpMenu); fileMenu.addMouseListener(ml); editMenu.addMouseListener(ml); helpMenu.addMouseListener(ml); JFrame f = new JFrame("MenuTest"); f.setJMenuBar(mb); f.setSize(500, 300); f.setLocationRelativeTo(null); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.setVisible(true); }} 如何高效超找匹配的ID 一个小问题,希望大家能帮帮初学者 TIJ4 Chapter Access, Exercise 8, page 233 response 奇怪需求 java参数传递 很菜的问题 LinkedList的一点疑惑 谁有jbuilder7的注册机啊? 执行一个applet这样提示~! 数据库驱动问题 高分求助 关于Iterator的问题 程序以有一个Timtask1在几秒种运行一次,现在我再用一个TIMTASK2控制timtask1,让timtask1每天0-18点运行。。。
2. setSize(int width,int height)
JMenu.add(new JLabel('123')),如果内容为空就可以没有显示地隔开了。但我觉得用菜单这样做无意义。
放上去就弹出?倒没有做过,你可以试试JMenuItem.show()方法
当到达JMenu上时,即触发JMenuItem.show()吗?
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;import javax.swing.*;public class T {
public static void main(String[] args) {
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (Exception e) {
e.printStackTrace();
}
MouseListener ml = new MouseAdapter() {
public void mouseEntered(MouseEvent e) {
JMenu menu = (JMenu) e.getComponent();
MenuElement me[] = new MenuElement[3];
me[0]=(MenuElement)menu.getParent();
me[1]=menu;
me[2]=menu.getPopupMenu();
MenuSelectionManager.defaultManager().setSelectedPath(me);
}
};
JMenuBar mb = new JMenuBar();
JMenu fileMenu = new JMenu("File");
fileMenu.add(new JMenuItem("Open"));
fileMenu.add(new JMenuItem("Save"));
fileMenu.add(new JMenuItem("Save As..."));
JMenu recentMenu = new JMenu("Recent");
recentMenu.add(new JMenuItem("C:/abc.txt"));
recentMenu.add(new JMenuItem("D:/def.txt"));
recentMenu.add(new JMenuItem("E:/jkl.txt"));
fileMenu.addSeparator();
fileMenu.add(recentMenu);
JMenu editMenu = new JMenu("Edit");
editMenu.add(new JMenuItem("Cut"));
editMenu.add(new JMenuItem("Copy"));
editMenu.add(new JMenuItem("Paste"));
JMenu helpMenu = new JMenu("Help");
helpMenu.add(new JMenuItem("About"));
mb.add(fileMenu);
mb.add(Box.createHorizontalStrut(50));
mb.add(editMenu);
mb.add(Box.createHorizontalGlue());
mb.add(helpMenu); fileMenu.addMouseListener(ml);
editMenu.addMouseListener(ml);
helpMenu.addMouseListener(ml); JFrame f = new JFrame("MenuTest");
f.setJMenuBar(mb);
f.setSize(500, 300);
f.setLocationRelativeTo(null);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setVisible(true);
}
}