/**
*
*/
package JavaGUI;
/**
* @author:Flying Fire
* @date:2011-6-18
* @time:上午09:51:14
*/
/**
* 学习JMenu的使用方法
*
*/
import java.awt.event.ActionEvent;
import javax.swing.*;
public class JMenuTest extends JFrame implements java.awt.event.ActionListener{
//显示主界面
public void showFrame(){
this.setTitle("JMenu测试用例");
this.setSize(400,400);
this.setLayout(new java.awt.FlowLayout());
//添加菜单栏
this.setJMenuBar(createMB());
this.setDefaultCloseOperation(3);
this.setLocationRelativeTo(null);
this.setVisible(true);
}
//创建JMenuBar对象,并将其返回
public JMenuBar createMB(){
JMenuBar menuBar=new JMenuBar();
JMenu menu1 =new JMenu("文件");
JMenuItem item1=new JMenuItem ("打开");
JMenuItem item2=new JMenuItem("保存");
JMenuItem item3=new JMenuItem("退出");
menu1.add(item1);
menu1.add(item2);
menu1.add(item3);
item1.setActionCommand("open");
item2.setActionCommand("save");
item3.setActionCommand("exit");
item1.addActionListener(this);
item2.addActionListener(this);
item3.addActionListener(this);
JMenu menu2 =new JMenu("格式");
JMenuItem item4=new JMenuItem ("字体");
JMenuItem item5=new JMenuItem("颜色");
JMenuItem item6=new JMenuItem("大小");
menu2.add(item4);
menu2.add(item5);
menu2.add(item6);
item4.setActionCommand("font");
item5.setActionCommand("color");
item6.setActionCommand("size");
item4.addActionListener(this);
item5.addActionListener(this);
item6.addActionListener(this);
menuBar.add(menu1);
menuBar.add(menu2);
return menuBar;
}
//创建JPopupMenu对象,并将其返回
public JPopupMenu createPM(){
JPopupMenu pm=new JPopupMenu();
JMenuItem item1=new JMenuItem ("打开");
JMenuItem item2=new JMenuItem("保存");
JMenuItem item3=new JMenuItem("退出");
pm.add(item1);
pm.add(item2);
pm.add(item3);
item1.setActionCommand("open");
item2.setActionCommand("save");
item3.setActionCommand("exit");
item1.addActionListener(this);
item2.addActionListener(this);
item3.addActionListener(this);
return pm;
}
//监听器
public void actionPerformed(ActionEvent e){
String command =e.getActionCommand();
if(command.equals("open")){
System.out.println("触发了"+command);
}else if(command.equals("save")){
System.out.println("触发了"+command);
}else if(command.equals("exit")){
System.out.println("触发了"+command);
}else if(command.equals("font")){
System.out.println("触发了"+command);
}else if(command.equals("color")){
System.out.println("触发了"+command);
}else if(command.equals("size")){
System.out.println("触发了"+command);
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
JMenuTest mt=new JMenuTest();
mt.showFrame();
}
}
分享到:
相关推荐
本文介绍了如何使用Vue框架来实现一个圆形菜单栏组件,组件的开发使用了HTML、CSS和JavaScript(或TypeScript),并引入了hammer.js库来支持圆形菜单栏的手势操作。在构建圆形菜单栏组件的过程中,涉及到多个前端...
在本文中,我们将深入探讨WPF(Windows Presentation Foundation)中的Office 2003风格的菜单栏组件。WPF是.NET Framework的一部分,它提供了一种强大的用户界面开发平台,允许开发者创建美观且功能丰富的应用程序。...
在WPF(Windows Presentation Foundation)应用开发中,创建和管理用户界面是至关重要的部分,而菜单栏作为用户交互的重要组件,通常需要根据应用的需求进行定制。本教程将讲解如何在WPF应用的后台代码中定义菜单栏...
5. **事件总线**:如果菜单栏组件需要与其他组件通信,可以使用Vue的事件总线(Event Bus)。这是一种轻量级的通信方式,通过创建一个全局的Vue实例,组件之间可以通过触发和监听自定义事件来传递信息。 6. **封装...
在仿微信菜单栏的场景中,我们通常会使用多个`Fragment`来构建上方和下方的菜单栏。 下方菜单栏通常包含底部导航栏(Bottom Navigation Bar),它由多个图标和对应的标签组成,每个图标对应一个`Fragment`。当用户...
在Java编程语言中,创建一个简单的窗口并添加菜单栏是一项基本任务,这通常涉及到使用Swing库中的组件。本示例代码展示了如何构建一个带有"文件"、"编辑"和"视图"菜单的Java窗口,并为每个菜单项添加基本的事件处理...
3. **附加到组件**:EXTJS4允许将菜单栏附加到窗口、面板或其他组件上。例如,你可以将菜单栏添加到工具栏中,或者将其作为窗口的顶级元素。 ```javascript var toolbar = new Ext.toolbar.Toolbar({ dock: 'top',...
在"jQuery ligerUI Demos 导航页、菜单栏"这个主题中,我们将深入探讨ligerUI如何实现导航页和菜单栏的功能。 首先,导航页是Web应用中不可或缺的部分,它帮助用户在不同的页面间进行切换,提供清晰的网站结构。...
本篇将详细讲解如何在Vue项目中实现“组件首页导航栏和左侧菜单栏”的功能。 首先,我们需要理解Vue组件的概念。Vue组件是可复用的代码块,可以视为小型自包含的应用。它们是构建大型应用的基本单元,通过组合这些...
库中的组件可以自动适应屏幕尺寸,无论是iPhone还是iPad,无论是横屏还是竖屏,都能确保菜单栏的显示效果。同时,开发者还可以根据需要调整布局,例如单列或多列展示。 7. **扩展性**: BYBasePickerScrollView ...
横向单行菜单栏是UI设计中的一个重要元素,它在移动应用和网页设计中广泛使用,为用户提供简洁且高效的导航方式。这种菜单通常显示在屏幕顶部或底部,包含一系列水平排列的选项,用户可以通过左右滑动来浏览超出视窗...
在创建侧边菜单时,通常会将一个面板设置为固定大小作为菜单栏,另一个面板用作主要内容显示区。 1. **添加SplitContainer到Winform** 在设计视图中,可以从工具箱中拖放SplitContainer到窗体上。然后可以在属性...
总的来说,VC中的标题栏和菜单栏是构建用户界面的关键组件。通过熟练掌握它们的使用,开发者可以创建出符合用户习惯且功能丰富的应用程序。通过实践和学习,你可以进一步了解如何定制标题栏样式,如何优化菜单结构,...
在IT领域,动态生成菜单栏是一项重要的技术,尤其在开发用户界面(UI)时。...在WindowsApplication8这样的项目中,开发者可以深入研究如何使用.NET Framework的组件和方法,实现动态菜单栏的功能。
本项目名为"swift-小功能菜单栏",主要关注使用CocoaPods来创建一个公开可用的podspec文件,使得这个菜单栏组件能够方便地在其他项目中被引用和集成。 首先,我们需要理解CocoaPods是什么。CocoaPods是iOS、macOS...
本篇将详细介绍MFC中的三个重要组件:菜单栏、工具栏和状态栏,以及如何在MFC应用程序中使用它们。 **菜单栏** 菜单栏是用户界面中常见的元素,它位于窗口的顶部,通常包含一系列下拉菜单,每个菜单项对应一个操作...
首先,底部菜单栏是Android应用中常见的组件,它通常包含3到5个图标,每个图标对应一个主要的功能模块。在Android中,我们可以使用`BottomNavigationView`或自定义布局来实现。`BottomNavigationView`是Google提供的...
请注意,虽然TabHost在现代Android开发中已较少使用,但了解其工作原理有助于理解底部菜单栏的历史演变和当前的实现方式。现在更常见的是使用`BottomNavigationView`结合`FragmentManager`或`NavController`来管理...
3. **CollapsingToolbarLayout**:这是`AppBarLayout`中的关键组件,它允许菜单栏在用户滑动时进行扩展或收缩。通过设置`CollapsingToolbarLayout`的`expandedTitleMarginStart`等属性,可以控制标题和图标的位置。 ...
在这一部分,我们学习创建状态栏,菜单栏和工具栏。一个菜单是位于菜单栏的一组命令。一个工具栏有一些按钮,这些按钮在应用程序中拥有一些常用命令。状态栏显示状态信息,通常位于应用窗口下方。 QMainWindow ...