初学java之菜单条,菜单,菜单项的设置
package project;
import javax.swing.*; import java.awt.event.KeyEvent;
import java.awt.event.InputEvent;
import static javax.swing.JFrame.*;
class WindowMenu extends JFrame //JFrame的子类
{
JMenuBar myBar ;
JMenu menu , submenu;
JMenuItem item1,item2 ;
public WindowMenu(){}
public WindowMenu(String s ,int x,int y,int w,int h)
{
init(s);
setLocation(x,y);
setSize(w,h);
setVisible(true);
setDefaultCloseOperation(DISPOSE_ON_CLOSE);
}
void init(String s)
{
setTitle(s);
myBar = new JMenuBar();
menu = new JMenu("菜单");
submenu = new JMenu("软件项目");
item1 = new JMenuItem("java话题", new ImageIcon("a.gif"));
item2 = new JMenuItem("动画话题", new ImageIcon("b.gif"));
item1.setAccelerator(KeyStroke.getKeyStroke('A'));
item2.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,InputEvent.CTRL_MASK));
menu.add(item1);
menu.addSeparator();
menu.add(item2);
menu.add(submenu);
submenu.add(new JMenuItem("汽车销售系统" , new ImageIcon("d.gif")));
submenu.add(new JMenuItem("农场信息系统" , new ImageIcon("e.gif")));
myBar.add(menu);
setJMenuBar(myBar);
}
}
public class test
{
public static void main(String args[])
{
WindowMenu win = new WindowMenu("带菜单的窗口",20,30,700,590);
}
}
由于是刚开始学,照着书本敲,敲完运行可以,但是发现图片无法显示,百度了一下,也没找到好的办法,我觉得可能是和路径有关,但是不知道该怎么放置,这也应该算是一个问题吧!...
目前正在想办法解决!
package project;
import javax.swing.*; import static javax.swing.JFrame.*;
import java.awt.event.InputEvent;
import java.awt.event.KeyEvent;
class WindowMenu extends JFrame
{ JMenuBar menubar; //设置一个菜单条
JMenu menu , submenu ; //设置一个菜单和一个子菜单
JMenuItem item1 , item2; //设置两个菜单条
public WindowMenu(){} //默认构造函数
public WindowMenu(String str ,int x,int y,int h,int w) //自定义构造函数
{
init(str);
setLocation(x,y); //设置位置
setSize(h,w); //设置大小
setVisible(true); //设置是否可视化
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); //注销窗口
}
void init(String str)
{
setTitle(str); //设置它的标题
menubar = new JMenuBar();
menu = new JMenu("菜单"); menubar.add(menu); //将这个菜单放到菜单条下面
item1 = new JMenuItem("java话题", new ImageIcon("a.gif")); //单一的条目
item2 = new JMenuItem("动画话题", new ImageIcon("b.gif"));
menu.add(item1);
menu.add(item2);
item1.setAccelerator(KeyStroke.getKeyStroke('A'));
item2.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,InputEvent.CTRL_MASK));
submenu = new JMenu("软件项目");
menu.add(submenu); //将这个子菜单放到主菜单的下面
// 在submenu菜单下设置两个条目(单一)
submenu.add(new JMenuItem("汽车销售系统" , new ImageIcon("c.gif")));
submenu.add(new JMenuItem("农场信息系统", new ImageIcon("d.gif"))); //menubar.add(submenu);
setJMenuBar(menubar); } }
public class test
{
public static void main(String args[])
{
WindowMenu mywin;
mywin = new WindowMenu("第一个窗口", 40,50,200,300);
}
}
初学java之菜单条,菜单,菜单项的设置的更多相关文章
- java学习:AWT组件和事件处理的笔记(1)--菜单条,菜单,菜单项
菜单放在菜单条里,菜单项放在菜单里1.MenuBar 在java.awt包中,负责创建菜单条,即MenuBar的一个实例,便是一个菜单条. 在Frame类中的setMenuBar(Menu ...
- 初学java之事件响应(结合接口来设置在同一个界面上!)
package wahaha; public class test_1 { public static void main( String args[] ) { WindowActionEvent w ...
- Java Swing界面编程(31)---菜单条:JMenu
package com.beyole.test; import javax.swing.JFrame; import javax.swing.JMenu; import javax.swing.JMe ...
- ContextMune上下文菜单中,二级菜单获取及状态设置
ContextMune上下文菜单中,二级菜单获取及状态设置 在使用ContextMune上下文菜单中,能够通过二级菜单来获取及状态设置 //二级菜单获取和状态设置((ToolStripDropDown ...
- SharePoint 2010/2013 隐藏的速度下拉菜单列表项
SharePoint 2010/2013 隐藏的速度下拉菜单列表项 有时为了防止一些用户编辑列表项.需要隐藏下拉菜单列表项.,仅仅须要添加一个内容编辑器控件,将css代码写入其HTML ...
- WorldWind源码剖析系列:图层管理器按钮类LayerManagerButton和菜单条类MenuBar
WorldWindow用户定制控件类中所包含的的可视化子控件主要有:图层管理器按钮类LayerManagerButton和菜单条类MenuBar.BmngLoader类中所包含的的可视化子控件主要有: ...
- 初学 Java Web 开发,请远离各种框架,从 Servlet 开发
Web框架是开发者在使用某种语言编写Web应用服务端时关于架构的最佳实践.很多Web框架是从实际的Web项目抽取出来的,仅和Web的请求和响应处 理有关,形成一个基础,在开发别的应用项目的时候则可以从 ...
- 初学java之常用组件
import javax.swing.*; import java.awt.*; class Win extends JFrame { JTextField mytext; // 设置一个文本区 JB ...
- 初学Java web(转)
转自 http://www.oschina.net/question/12_52027 OSCHINA 软件库有一个分类——Web框架,该分类中包含多种编程语言的将近500个项目. Web框架是开发者 ...
随机推荐
- Lucky String
Lucky String -- 微软笔试 标签(空格分隔): 算法 A string s is LUCKY if and only if the number of different charact ...
- can not find UIAutomationClient
'ClientApp.vshost.exe' (CLR v4.0.30319: ClientApp.vshost.exe): Loaded 'C:\Windows\Microsoft.Net\asse ...
- getting started with building a ROS simulation platform for Deep Reinforcement Learning
Apparently, this ongoing work is to make a preparation for futural research on Deep Reinforcement Le ...
- Simulating a Fetch robot in Gazebo
Installation Before installing the simulation environment, make sure your desktop is setup with a st ...
- 3.29考试(HNOI难度)
一. 城镇 [ town ] Memory Limit: 128 MB Time Limit : 1s Description 在 farmer land 上,有 N 个 farmer to ...
- STORM_0006_第二个storm_topology:WordCountTopology的代码与运行
我先试试这个Open Live Writer能不能用. 再在ScribeFire中修改一下已经发布的文章试试看. 这两个写博客的地方都没有原始的编辑器方便,可以插入代码,选择文章的分类.所以以后还有这 ...
- 【T-SQL系列】新的排序函数
如:ROW_NUMBER.RANK.DENSE_RANK三个分析函数都是按照col1分组内从1开始排序 ROW_NUMBER() 是没有重复值的排序(即使两天记录相等也是不重复的),可以利用它来实现分 ...
- iOS - Swift NSNumber 数字
前言 public class NSNumber : NSValue public class NSDecimalNumber : NSNumber NSNumber 可以被赋值为各种数值类型.我们可 ...
- iOS - UIControl
前言 NS_CLASS_AVAILABLE_IOS(2_0) @interface UIControl : UIView @available(iOS 2.0, *) public class UIC ...
- js简介、基本语法、类型转换、变量、运算符、分支语句、循环语句、函数、函数调用
javascript是个脚本语言,需要有宿主文件,他的宿主文件是html文件. 三个常用对话框 alert("")警告对话框,弹出一个警告对话框 <script> al ...