
正文
java中jmenu代码 java 代码简洁
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
JAVA中为JMenu添加动作执行不起作用的问题
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
public class jiemian extends JFrame
{
private JLabel jl = new JLabel ("第一关");
private Container container = new JPanel ();
private static Thread t;
int time = 0;
public jiemian ()
{
JMenuBar menuBar = new JMenuBar ();
setJMenuBar (menuBar);
JMenu[] menu = new JMenu[] { new JMenu ("游戏"), new JMenu ("帮助") };
JMenuItem[] menuItem =
new JMenuItem[] { new JMenuItem ("新游戏"), new JMenuItem ("重新开始"), new JMenuItem ("记录"),
new JMenuItem ("退出"), new JMenuItem ("操作方法") };
for ( int i = 0; i 2; i++ )
{
menuBar.add (menu[i]);
}
for ( int i = 0; i 4; i++ )
{
menu[0].add (menuItem[i]);
}
menu[1].add (menuItem[4]);
menuItem[3].addActionListener (new ActionListener ()
{
public void actionPerformed ( ActionEvent e )
{
System.exit (0);
}
});
t = new Thread (new Runnable ()
{
public void run ()
{
while (time = 200)
{
if (time % 2 == 0)
{
container.add (jl);
jl.setBounds (200, 200, 80, 80);
}
else
jl.setBounds (0, 0, 0, 0);
try
{
Thread.sleep (1000);
}
catch (Exception e)
{
e.printStackTrace ();
}
time++;
if (time == 200)
{
time = 0;
}
}
}
});
t.start ();
this.setLayout (null);
container.setLayout (null);
container.setSize (500, 500);
container.setBackground (Color.BLUE);
this.add (container);
this.setTitle ("坦克大战");
this.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
this.setSize (700, 600);
this.setLocationRelativeTo (null);
this.setVisible (true);
}
public static void main ( String[] args )
{
new jiemian ();
}
}
相关问答
Q1: java swing中JMenuBar中的JMenu 如何垂直显示
java swing中JMenuBar中java中jmenu代码的JMenu 垂直显示
private JFrame frame;// 窗体
private JMenuBar mBar;// 菜单
private JPanel panel;// 面板
private JLabel label;// 标签
// 构造函数
public ZDSGuideSystemMain()
{
frame = new JFrame();
panel = new JPanel();
mBar = new JMenuBar();
// 设置菜单栏
this.setTitle("正大学院导游系统");
this.setJMenuBar(mBar);
this.setResizable(false);
// 添加菜单栏
JMenu sMenu, jMenu, gMenu, cMenu, bMenu;
sMenu = new JMenu("系统");
jMenu = new JMenu("简介");
gMenu = new JMenu("工具");
cMenu = new JMenu("查询");
bMenu = new JMenu("帮助");
mBar.add(sMenu);
mBar.add(jMenu);
mBar.add(gMenu);
mBar.add(cMenu);
mBar.add(bMenu);
// 系统添加选项菜单
JMenuItem sItem, cItem, tItem;
sItem = new JMenuItem("开始导航");
cItem = new JMenuItem("刷新系统");
tItem = new JMenuItem("退出系统");
sMenu.add(sItem);
sMenu.addSeparator();
sMenu.add(cItem);
sMenu.addSeparator();
sMenu.add(tItem);
// 简介添加选项菜单
JMenuItem xItem;
xItem = new JMenuItem("学院简介");
jMenu.add(xItem);
// 工具添加选项菜单
JMenuItem xyItem, ycItem;
xyItem = new JMenuItem("显示菜单");
ycItem = new JMenuItem("隐藏菜单");
gMenu.add(xyItem);
gMenu.addSeparator();
gMenu.add(ycItem);
// 查询添加选项菜单
JMenuItem lItem;
lItem = new JMenuItem("路线查询");
cMenu.add(lItem);
Q2: Java程序JMenu的点击事件没有执行(代码一个帖写不下(前半部分))
后半部分没问题,前半部分有小问题:
改成下面:
-------------------------------------------------------------
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.InputEvent;
import java.awt.event.ItemEvent;
import java.awt.event.KeyEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.JCheckBoxMenuItem;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JRadioButtonMenuItem;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.KeyStroke;
public class Si extends JFrame implements ActionListener {
JTextArea output;
JScrollPane scrollPane;
public Si() {
JMenuBar menuBar;
JMenu menu, submenu;
JMenuItem menuItem;
JCheckBoxMenuItem cbMenuItem;
JRadioButtonMenuItem rbMenuItem;
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
Container contentPane = getContentPane();
output = new JTextArea(5, 30);
output.setEditable(false);
scrollPane = new JScrollPane(output);
contentPane.add(scrollPane, BorderLayout.CENTER);
menuBar = new JMenuBar();
setJMenuBar(menuBar);
menu = new JMenu("manage");
menuBar.add(menu);
submenu = new JMenu("color");
MyJMenuItem c = new MyJMenuItem("Red");
c.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_R,
InputEvent.CTRL_MASK | InputEvent.SHIFT_MASK));
menuItem = c;
submenu.add(menuItem);
MyJMenuItem b = new MyJMenuItem("Blue");
b.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_B,
InputEvent.CTRL_MASK | InputEvent.SHIFT_MASK));
menuItem = b;
submenu.add(menuItem);
menu.add(submenu);
menu.addSeparator();
cbMenuItem = new JCheckBoxMenuItem("check");
menu.add(cbMenuItem);
JMenuItem a = new JMenuItem("exit");
a.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_E,
InputEvent.CTRL_MASK | InputEvent.SHIFT_MASK));
menuItem = a;
menu.add(menuItem);
JMenu d = new JMenu("help");
JMenuItem d1=new JMenuItem("help");//这里为新增部分
d.add(d1);//这里为新增部分
d1.addActionListener(this);
menuBar.add(d);
}
public void actionPerformed(ActionEvent e) {
output.setText("帮助 "); // 显示不出来
}
public static void main(String[] args) {
Si window = new Si();
window.setTitle("MenuLookDemo");
window.setSize(450, 260);
window.setVisible(true);
}
public void itemStateChanged(ItemEvent e) {
throw new UnsupportedOperationException("Not supported yet.");
}
}
Q3: java的JTextarea不显示,代码如下求大神吗帮我看看,已通过主函数new出对象
你在构造器中把 :this.setVisible(true); 这一句去掉,然后在主方法中这样写:
new show().setVisible(true);
这样就显示正常了。
也即是把 setVisible()语句移到主方法中就可以了。
特别提醒:一般不要在构造器中写这一句,如果是编写Dialog类时,一写这一句,后面的程序都阻塞了。
此外,在initPanel()方法中,要把 this.setLayout(null); 去掉。
下面是我修正过的代码:
import java.awt.BorderLayout;
import java.awt.Color;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.JTextArea;
public class show extends JFrame{
private static final long serialVersionUID = 1L;
private JPanel panel;
private JMenuBar bar;
public show(){
this.setTitle("记事本");
this.setBounds(300, 150, 700, 500);
// this.setVisible(true);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
initPanel();
initMenu();
}
private void initPanel() {
// this.setLayout(null);
JTextArea text=new JTextArea();
text.setVisible(true);
panel=new JPanel();
panel.setBackground(Color.red);
panel.add(text,BorderLayout.CENTER);
this.add(panel,BorderLayout.CENTER);
}
private void initMenu() {
JMenu menu=new JMenu("文件");
JMenuItem item1=new JMenuItem("新建");
JMenuItem item2=new JMenuItem("打开");
JMenuItem item3=new JMenuItem("保存");
JMenuItem item4=new JMenuItem("另存为");
JMenuItem item5=new JMenuItem("关闭");
menu.add(item1);
menu.add(item2);
menu.add(item3);
menu.add(item4);
menu.addSeparator();
menu.add(item5);
bar=new JMenuBar();
this.setJMenuBar(bar);
bar.add(menu);
}
public static void main(String[] args)
{
new show().setVisible(true);;
}
}
Q4: java的菜单代码怎么写?
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class MyMenu extends JFrame{
JMenuBar jmbar=new JMenuBar();
JMenu jmenu=new JMenu("颜色");
JMenuItem jmt1=new JMenuItem("红色"),
jmt2=new JMenuItem("黄色"),
jmt3=new JMenuItem("蓝色");
JPanel jp=new JPanel();
MyMenu(){
setTitle("菜单测试");
setSize(400,300);
setJMenuBar(jmbar);
jmbar.add(jmenu);
jmenu.add(jmt1);
jmenu.add(jmt2);
jmenu.add(jmt3);
add(jp);
jmt1.addActionListener(new MenuAction(this));
jmt2.addActionListener(new MenuAction(this));
jmt3.addActionListener(new MenuAction(this));
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
public static void main(String[] args) {
new MyMenu();
}
}
class MenuAction implements ActionListener{
MyMenu m;
MenuAction(MyMenu m){
this.m=m;
}
public void actionPerformed(ActionEvent e){
String color=e.getActionCommand();
if(color=="红色")m.jp.setBackground(Color.red);
else if(color=="黄色")m.jp.setBackground(Color.yellow);
else if(color=="蓝色")m.jp.setBackground(Color.blue);
}
}
不知道java中jmenu代码你要什么事件代码,java中jmenu代码我写java中jmenu代码了个比较简单java中jmenu代码的你看适合不。
java中jmenu代码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java 代码简洁、java中jmenu代码的信息别忘了在本站进行查找喔。







