如何给Java窗体添加菜单栏

如何给Java窗体添加菜单栏,第1张

以windows系统中的记事本为例,菜单栏中的【文件】,【编辑】等全部叫一个菜单条;在Java中用JMenuBar表示;

菜单条中每一个具体的项叫做一个菜单,在Java中用JMenu表示;

菜单中的每一项叫做菜单项,Java中用JMenuItem表示;

我们在窗体创建菜单栏,首先需要创建菜单条,先声明,然后在构造方法中初始化;代咐历码为:JMenuBar bar = new JMenuBar()

然后创建菜单,也菜单条一样,也是先声明,再new;代码为:JMenu menu = new JMenu("文件")

接下来创建菜单项,和上面的一样,先声明,再new;代码为:JMenuItem item = new JMenuItem("新建")

创建好每一个部分之后,衡哪搜我们需要将菜单缓渗项添加到菜单中,然后将菜单添加到菜单条中;代码为:

menu.add(item)

bar.add(menu)

然后将整个菜单条添加到窗体中,代码为:

this.setJMenuBar(bar)

这样就可以实现在窗体中添加菜单条了,看一下效果吧。

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 ()

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11977889.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存