- 浏览: 733073 次
- 性别:
- 来自: 广州
文章分类
最新评论
-
lingsuch:
Android网络连接判断与处理 -
月光照着我:
写的不错,作为笔记了
Android中LayoutInflater的使用 -
智博王锋:
好文章是要顶的!
Android中LayoutInflater的使用 -
云南白药:
...
Android中LayoutInflater的使用 -
万新one:
理解了许多。解释的不错。3Q.
Android中LayoutInflater的使用
package Assis; import java.awt.Dimension; import java.awt.Toolkit; import javax.swing.SwingUtilities; public class Sketcher { public static void main(String[] args) { SwingUtilities.invokeLater(new Runnable() { public void run() { creatGUI(); } }); } static void creatGUI() { window = new SketchFrame("Sketcher"); Toolkit theKit = window.getToolkit(); Dimension wndSize = theKit.getScreenSize(); window.setBounds(wndSize.width / 4, wndSize.height / 4, // 位置 wndSize.width / 2, wndSize.height / 2); // 大小 window.setVisible(true); } private static SketchFrame window; }
package Assis; import javax.swing.ButtonGroup; 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.KeyStroke; import static java.awt.event.InputEvent.*; public class SketchFrame extends JFrame { private static final long serialVersionUID = 1L; // 构造函数 public SketchFrame(String title) { setTitle(title); // 设置窗口标题 setDefaultCloseOperation(EXIT_ON_CLOSE); setJMenuBar(menuBar); // 添加菜单栏到窗口 JMenu fileMenu = new JMenu("File"); // 创建File菜单 JMenu elementMenu = new JMenu("Elements"); // 创建Elements菜单 fileMenu.setMnemonic('F'); // 创建快捷键 elementMenu.setMnemonic('E'); // 创建快捷键 // 构造file下拉菜单 newItem = fileMenu.add("new"); // 添加New项目 openItem = fileMenu.add("Open"); // 添加Open项目 closeItem = fileMenu.add("Close"); // 添加Close项目 fileMenu.addSeparator(); // 添加Separator saveItem = fileMenu.add("save"); // 添加Save项目 saveAsItem = fileMenu.add("Save as"); // 添加Save As项目 fileMenu.addSeparator(); // 添加Separator printItem = fileMenu.add("print"); // 添加Print项目 // 添加File菜单加速键 newItem.setAccelerator(KeyStroke.getKeyStroke('N', CTRL_DOWN_MASK)); openItem.setAccelerator(KeyStroke.getKeyStroke('O', CTRL_DOWN_MASK)); saveItem.setAccelerator(KeyStroke.getKeyStroke('S', CTRL_DOWN_MASK)); printItem.setAccelerator(KeyStroke.getKeyStroke('P', CTRL_DOWN_MASK)); // 构造Element下拉菜单 elementMenu.add(lineItem = new JRadioButtonMenuItem("Line", true)); elementMenu.add(rectangleItem = new JRadioButtonMenuItem("Rectangle", false)); elementMenu.add(circleItem = new JRadioButtonMenuItem("Circle", false)); elementMenu.add(curveItem = new JRadioButtonMenuItem("Curve", false)); ButtonGroup types = new ButtonGroup(); types.add(lineItem); types.add(rectangleItem); types.add(circleItem); types.add(curveItem); // 添加element类型加速键 lineItem.setAccelerator(KeyStroke.getKeyStroke('L', CTRL_DOWN_MASK)); rectangleItem.setAccelerator(KeyStroke .getKeyStroke('E', CTRL_DOWN_MASK)); circleItem.setAccelerator(KeyStroke.getKeyStroke('I', CTRL_DOWN_MASK)); curveItem.setAccelerator(KeyStroke.getKeyStroke('V', CTRL_DOWN_MASK)); elementMenu.addSeparator(); // 创建color子菜单 JMenu colorMenu = new JMenu("Color"); // Color子菜单 elementMenu.add(colorMenu); // 添加子菜单 colorMenu.add(redItem = new JCheckBoxMenuItem("Red", false)); colorMenu.add(yellowItem = new JCheckBoxMenuItem("Yellow", false)); colorMenu.add(greenItem = new JCheckBoxMenuItem("Green", false)); colorMenu.add(blueItem = new JCheckBoxMenuItem("Blue", true)); // 添加element color加速键 redItem.setAccelerator(KeyStroke.getKeyStroke('R', CTRL_DOWN_MASK)); yellowItem.setAccelerator(KeyStroke.getKeyStroke('Y', CTRL_DOWN_MASK)); greenItem.setAccelerator(KeyStroke.getKeyStroke('G', CTRL_DOWN_MASK)); blueItem.setAccelerator(KeyStroke.getKeyStroke('B', CTRL_DOWN_MASK)); menuBar.add(fileMenu); // 添加file菜单 menuBar.add(elementMenu); // 添加element菜单 } private JMenuBar menuBar = new JMenuBar(); // 窗口菜单栏 // File菜单项目 JMenuItem newItem, openItem, closeItem, saveItem, saveAsItem, printItem; // Element菜单项目 JRadioButtonMenuItem lineItem, rectangleItem, circleItem, curveItem, textItem; private JCheckBoxMenuItem redItem, yellowItem, greenItem, blueItem; }
发表评论
-
Swing中引入Android的NinePatch技术,让Swing拥有Android的外观定制能力
2012-09-21 09:22 1631【摘要】 本文诣在 ... -
JavaSwing实现支持合并拆分的JTable
2010-12-16 15:39 1981GridBagModel:抽象模型接口。该接口用于描述表格中单 ... -
JTable小例子,表格中使用JComboBox下拉按钮
2010-12-16 15:21 5429import java.awt.BorderLayout; ... -
配合滚动面板实现JTable上下翻页的效果
2010-12-16 14:26 3427import java.awt.BorderLayout; ... -
JScrollBar简单演示例子
2010-12-06 19:28 6628import java.awt.*; import java ... -
点击jtable的表头,数据会根据根据表头来排序
2010-12-06 11:47 5142import javax.swing.JFrame; imp ... -
重写JSplitPane的BasicSplitPaneUI
2010-09-18 13:39 1582import java.awt.Color; import ... -
Swing窗口初始最大化的方法
2010-08-20 11:09 79131.设置窗口最大(伪最大化) JFrame frame =n ... -
Tree目录实现拖拽功能演示实例(DragAndDrop)
2010-08-10 16:49 1803import java.awt.BorderLayout; ... -
设置JTextPane指定内容的颜色
2010-05-21 14:29 1373package Assis; import java.a ... -
ScaleImageDemo图像缩小与放大演示
2010-05-12 14:59 2126package Assis; import java.a ... -
TreesDemo
2010-05-04 11:19 1095import java.awt.*; import java ... -
TableDemo
2010-05-04 11:17 1207import javax.swing.JTable; imp ... -
分割面板演示JSplitPaneDemo
2010-05-04 11:12 1400//Java Swing 带分隔条的面板代码 impor ... -
StylesExample8
2010-04-08 12:55 1213import javax.swing.*; import j ... -
StylesExample7
2010-04-08 12:54 1009import javax.swing.*; import j ... -
StylesExample6
2010-04-08 12:52 1073import javax.swing.*; import j ... -
StylesExample5
2010-04-08 12:51 1003import javax.swing.*; import j ... -
StylesExample4
2010-04-08 12:50 1121import javax.swing.*; import j ... -
StylesExample3
2010-04-08 12:50 1014import javax.swing.*; import j ...
相关推荐
有时候,为了提高用户体验和交互效率,我们希望为`JButton`添加快捷键或者访问键(accelerator key)。在本篇文章中,我们将详细探讨如何在Java中为`JButton`设置快捷键。 首先,我们需要了解快捷键的基本概念。...
在Swing中,菜单按钮是创建交互式用户界面的关键元素,尤其是对于那些需要多个操作选项的应用程序。本教程将深入讲解Java Swing中的菜单按钮及其使用方法,非常适合初学者。 一、JMenuBar与JMenu 在Swing中,菜单...
Swing 菜单控件可以在菜单中使用图标,菜单项可以为单选按钮或者复选框,并可以为菜单项指定加速键和快捷键。大多数的标准控件都可以用做菜单项。另外,Swing 菜单为程序提供了大家熟悉的菜单分隔线、弹出式菜单和子...
Swing组件包括但不限于`JButton`(按钮)、`JLabel`(标签)、`JTextField`(文本字段)、`JTextArea`(多行文本区域)、`JCheckBox`(复选框)、`JRadioButton`(单选按钮)和`JComboBox`(下拉框)。每个组件都有...
5. **集成到系统菜单**:在系统菜单(如Windows的控制菜单,即窗口左上角的最小化、最大化和关闭按钮所在的菜单)中添加自定义项,通常需要使用操作系统提供的API函数,比如Windows的`AppendMenu`函数。 6. **测试...
本文档旨在详细介绍Swing菜单和工具栏的相关知识点,帮助开发者更好地理解和应用这些组件。 #### 二、Swing菜单概述 Swing菜单是基于`JComponent`的子类设计,这意味着它们继承了Swing组件的所有优点。菜单和菜单...
通过这个简单的例子,我们可以学习到如何在Java Swing中使用JPopupMenu组件,以及如何与按钮交互来显示和处理菜单项的点击事件。这在设计用户界面时是非常实用的技巧,特别是在需要提供快捷操作或更多选项的情况下。
Java 弹出菜单可以用于各种类型的组件,例如按钮、文本框、列表框等。 二、JTextArea 和 MouseListener 在我们的示例代码中,我们使用了 JTextArea 组件来显示文本,并使用 MouseListener 来捕获用户的右键点击...
本资源包含Swing方面的基础知识: ...16菜单快捷键 17模式对话框 18网格布局管理器 19复选框 20单选框 21下拉式列表框 22网格块布局管理器 23带工具提示的按钮 24带边的按钮 25改变文本对齐方式 26滑杆
- JMenuBar用于创建菜单栏,JMenu用于创建菜单,.JMenuItem用于创建菜单项,可以添加快捷键和事件监听器。 10. **Swing的模型视图控制器**: - Swing遵循MVC(Model-View-Controller)设计模式,组件的逻辑...
在Java Swing中,你可以使用组件(Components)来构建丰富的交互式应用程序,这些组件包括按钮(JButton)、菜单(JMenu)、菜单栏(JMenuBar)和菜单项(JMenuItem)等。 Swing 提供了轻量级的组件模型,它基于 ...
Swing中的导航主要指的是在组件之间,如按钮、文本框和菜单之间的交互方式,这些通常涉及键盘快捷键和鼠标操作。 Swing组件包括但不限于: 1. **JFrame**: 应用程序的主窗口,通常作为其他组件的容器。 2. **JPanel...
`setMnemonic(char mnemonic)`方法用于设置菜单项的快捷键,`setAccelerator(KeyStroke keyStroke)`用于设置菜单项的快捷键组合。通过`addActionListener(ActionListener listener)`添加监听器,当用户点击菜单项时...
另外,系统可能还提供了菜单栏或快捷键来实现优雅的退出。 总之,这个员工管理系统展示了Swing在构建桌面应用中的能力,包括组件布局、事件处理、数据库交互以及文件操作等多方面的Java核心技术。它是一个很好的...
同时,JMenu和JMenuBar用于构建应用程序的菜单系统,提供丰富的菜单项和快捷键支持。 六、组件定制与外观美化 Swing允许开发者自定义组件的行为和外观。通过继承已有的组件并重写方法,可以创建具有特定功能的新...
6. JMenu和JMenuItem:菜单和菜单项构成下拉菜单系统,`add()`方法用于添加子菜单项,`setAccelerator()`设置快捷键。 Swing 还引入了一些高级组件,如JTable、JTree和JTabbedPane: 7. JTable:用于显示二维数据...
8. **菜单(JMenu, JMenuItem)**:菜单系统是Swing的重要组成部分,包括菜单栏、菜单和菜单项。可以设置快捷键,添加ActionListener来响应用户的点击事件。 9. **快捷键加速器(Accelerator)**:快捷键可以提高...
10. **JMenuBar** 和 **JMenu**: 这些组件用于创建菜单栏和子菜单,可以方便地添加各种菜单项和快捷键。 11. **JDialog**: JDialog可以创建弹出式对话框,比如警告、确认或输入对话框,它可以是模态或非模态的。 ...
5. **菜单栏与快捷键**:通过JMenuBar和JMenu可以创建菜单栏,JMenuItem用于添加菜单项,结合Key Bindings可以设置快捷键,提高用户体验。 从标签“java 开发语言 后端 apache swing”可以看出,这个项目可能也涉及...
JMenu支持快捷键、分隔符以及子菜单,通过添加ActionListener可以监听用户的菜单选择,执行相应的动作。 3. **JTable**:JTable是一个强大的组件,用于展示二维表格数据。它可以显示和编辑数据,并且提供了多种排序...