import javaawt;
import javaxswing;
public class MenuDemo extends JFrame{
JMenu jm1,jm2,jm3;
JMenuBar jmb;
JMenuItem jmt1,jmt2,jmt3;
public MenuDemo()
{
//菜单条
jmb=new JMenuBar();
jm1=new JMenu("文件");
jm2=new JMenu("编辑");
jmbadd(jm1);
jmbadd(jm2);
jmt2=new JMenuItem("关闭");
jmt3=new JMenuItem("退出");
jm3=new JMenu("新建");
jm3add(jmt3);
jm1add(jmt2);
jm1add(jm3);
thisadd(jmb,"North");
thissetVisible(true);
thissetSize(400, 300);
thissetDefaultCloseOperation(JFrameEXIT_ON_CLOSE);
}
public static void main(String args[])
{
new MenuDemo();
}
}
运行下看看是不是你想要的
MenuBar mb=new MenuBar();
Frame f=new Frame();
mbadd(menu);
fsetMenuBar(mb);
根据你的要求,改完的程序如下:(改动的地方见注释,未写入的程序不需要改动)
主要是把JTextArea text;改成JTextArea text=new JTextArea();
加了右击d出菜单一段。
import javaawt;import javaawtevent;
import javaxswing;
import javaio;
public class jishiben extends JFrame{
File file=null;
private JLabel stateBar;
private JTextArea text=new JTextArea();//这里把JTextArea text;改成JTextArea text=new JTextArea();
private JMenuBar mb;
private JMenu files, edit, help;
private JMenuItem Open,New,Save,SaveAs,Exit,Cut,Copy,Paste,Delete,SelectAll,About;
public jishiben()
//构造函数
{
super("我的记事本");
//菜单栏
mb=new JMenuBar();
files=new JMenu("文件");
edit=new JMenu("编辑");
help=new JMenu("帮助");
About=new JMenuItem("关于");
Open=new JMenuItem("打开"); //文件菜单的下拉菜单
New=new JMenuItem("新建");
Save=new JMenuItem("保存");
SaveAs=new JMenuItem("另存为");
Exit=new JMenuItem("退出");
Cut=new JMenuItem("剪切"); //编辑菜单的下拉菜单
Copy=new JMenuItem("复制");
Paste=new JMenuItem("粘贴");
Delete=new JMenuItem("删除");
SelectAll=new JMenuItem("全选");
stateBar=new JLabel("未修改");
//右击d出菜单 //这里加一段
JPopupMenu menu = new JPopupMenu();
JMenuItem menuItemCut = new JMenuItem("剪切");
JMenuItem menuItemCopy = new JMenuItem("复制");
JMenuItem menuItemDelete = new JMenuItem("删除");
menuadd(menuItemCut);
menuadd(menuItemCopy);
menuadd(menuItemDelete);
textsetComponentPopupMenu(menu);
menuItemCutaddActionListener(new actionListener());
menuItemCopyaddActionListener(new actionListener());
menuItemDeleteaddActionListener(new actionListener());
//添加标签
stateBarsetHorizontalAlignment(SwingConstantsLEFT);
stateBarsetBorder(BorderFactorycreateEtchedBorder());
mbadd(files);mbadd(edit);mbadd(help);
filesadd(New);filesadd(Open);filesadd(Save);filesadd(SaveAs);filesaddSeparator(); //分割线
filesadd(Exit);
editadd(Cut);editadd(Copy);editadd(Paste);editadd(Delete); //分割线
editadd(SelectAll);
helpadd(About);
setJMenuBar(mb);
//text=new JTextArea(); //这里去掉一句移到上面
add(new JScrollPane(text)); //滚动面板
setSize(600,500);
setVisible(true);
}
class actionListener implements ActionListener{
public void actionPerformed(ActionEvent e) {
}
}
public static void main(String[] args) {
new jishiben();
}
}
如果模态对话框不关闭,无法 *** 作主窗体。如果非模态对话框不关闭,仍然可以 *** 作主窗体。
//构造模态对话框
final Dialog d = new Dialog(this, "模态对话框", true);
//构造非模态对话框
final Dialog d = new Dialog(this, "模态对话框", false);
样例程序如下:
import javaawtDialog;import javaawtFlowLayout;
import javaawteventActionEvent;
import javaawteventActionListener;
import javaawteventWindowAdapter;
import javaawteventWindowEvent;
import javaxswingJButton;
import javaxswingJFrame;
public class Main extends JFrame implements ActionListener {
JButton btnModel, btnNonModel;
public Main() {
super("对话框");
thissetLayout(new FlowLayout());
btnModel = new JButton("打开模态对话框");
btnNonModel = new JButton("打开非模态对话框");
thisadd(btnModel);
thisadd(btnNonModel);
btnModeladdActionListener(this);
btnNonModeladdActionListener(this);
thissetSize(200, 200);
thissetVisible(true);
thissetDefaultCloseOperation(JFrameEXIT_ON_CLOSE);
}
public static void main(String[] args) {
new Main();
}
@Override
public void actionPerformed(ActionEvent arg0) {
JButton btn = (JButton) arg0getSource();
if(btn == btnModel) { //打开模态对话框
final Dialog d = new Dialog(this, "模态对话框", true);
dsetSize(800, 600);
daddWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent evt) {
dsetVisible(false);
}
});
dsetVisible(true);
}
else if(btn == btnNonModel) { //打开非模态对话框
final Dialog d = new Dialog(this, "非模态对话框", false);
dsetSize(800, 600);
daddWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent evt) {
dsetVisible(false);
}
});
dsetVisible(true);
}
}
}
以windows系统中的记事本为例,菜单栏中的文件,编辑等全部叫一个菜单条;在Java中用JMenuBar表示;
菜单条中每一个具体的项叫做一个菜单,在Java中用JMenu表示;
菜单中的每一项叫做菜单项,Java中用JMenuItem表示;
我们在窗体中创建菜单栏,首先需要创建菜单条,先声明,然后在构造方法中初始化;代码为:JMenuBar bar = new JMenuBar();
然后创建菜单,也菜单条一样,也是先声明,再new;代码为:JMenu menu = new JMenu("文件");
接下来创建菜单项,和上面的一样,先声明,再new;代码为:JMenuItem item = new JMenuItem("新建");
创建好每一个部分之后,我们需要将菜单项添加到菜单中,然后将菜单添加到菜单条中;代码为:
menuadd(item);
baradd(menu);
然后将整个菜单条添加到窗体中,代码为:
thissetJMenuBar(bar);
这样就可以实现在窗体中添加菜单条了,看一下效果吧。
以上就是关于用java编写一个界面,界面里有菜单栏,菜单栏可以下拉。全部的内容,包括:用java编写一个界面,界面里有菜单栏,菜单栏可以下拉。、如何在Java的新窗口中添加菜单栏、在java程序中加个右击d出菜单(剪切 复制 删除) 求大神帮忙 急用!!!!!!!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)