`
hubin4
  • 浏览: 97212 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

SWING设置快捷键

阅读更多
=
==
===
SWING设置快捷键,不难,看代码好了
关键就是这两行了:
---
        btn.registerKeyboardAction(new ActionListener() {

            @Override
            public void actionPerformed(ActionEvent e) {
                JOptionPane.showMessageDialog(null, "hello world");
            }
        }, KeyStroke.getKeyStroke(KeyEvent.VK_F10, InputEvent.CTRL_DOWN_MASK), JComponent.WHEN_IN_FOCUSED_WINDOW);
---
红色是组合键,推荐用一下CTRL 或者 SHIFT,不用就用0代替[InputEvent.CTRL_DOWN_MASK],
蓝色一定要,说明本窗口激活时,这对快捷键才有用.

==OVER==


/*
 * HbTestForm.java
 *
 * Created on Oct 7, 2010, 6:33:11 PM
 */
package downtimemodule;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.InputEvent;
import java.awt.event.KeyEvent;
import javax.swing.JButton;
import javax.swing.JComponent;
import javax.swing.JOptionPane;
import javax.swing.KeyStroke;

/**
 *
 * @author hubin
 */
public class HbTestForm extends javax.swing.JFrame {

    /** Creates new form HbTestForm */
    public HbTestForm() {
        initComponents();
        //show the frame in the middle of screen
        this.setLocationRelativeTo(null);
        JButton btn = new JButton("btnTest");
        btn.setText("clickme");
        btn.registerKeyboardAction(new ActionListener() {

            @Override
            public void actionPerformed(ActionEvent e) {
                JOptionPane.showMessageDialog(null, "hello world");
            }
        }, KeyStroke.getKeyStroke(KeyEvent.VK_F10, InputEvent.CTRL_DOWN_MASK), JComponent.WHEN_IN_FOCUSED_WINDOW);
        /*
         *above line is to set a short cut key [ctrl+F10] to show hello world
         * //JComponent.WHEN_IN_FOCUSED_WINDOW
        java.awt.event.InputEvent.SHIFT_DOWN_MASK
        java.awt.event.InputEvent.CTRL_DOWN_MASK
        java.awt.event.InputEvent.META_DOWN_MASK
        java.awt.event.InputEvent.ALT_DOWN_MASK
        java.awt.event.InputEvent.ALT_GRAPH_DOWN_MASK
        use 0 to set no ctrl or shift..key is needed
         */
        this.getContentPane().add(btn);
        //this is unnecessary, IDE do it, see gen code
        //this.setSize(400, 300);
        this.setVisible(true);
    }

    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">
    private void initComponents() {

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
        setName("hbtestframe"); // NOI18N

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 400, Short.MAX_VALUE)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 300, Short.MAX_VALUE)
        );

        pack();
    }// </editor-fold>

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {

            @Override
            public void run() {
                new HbTestForm().setVisible(true);
            }
        });
    }
    // Variables declaration - do not modify
    // End of variables declaration
}
分享到:
评论

相关推荐

    java 在JButton上设置快捷键

    在本篇文章中,我们将详细探讨如何在Java中为`JButton`设置快捷键。 首先,我们需要了解快捷键的基本概念。快捷键通常由一个或多个按键组成,例如Ctrl+C用于复制,它们可以帮助用户快速执行特定操作而无需通过鼠标...

    Java Swing'组件集合

    6. JMenu和JMenuItem:菜单和菜单项构成下拉菜单系统,`add()`方法用于添加子菜单项,`setAccelerator()`设置快捷键。 Swing 还引入了一些高级组件,如JTable、JTree和JTabbedPane: 7. JTable:用于显示二维数据...

    菜单及Swing组件

    同时,可以通过`setAccelerator()`方法为菜单项设置快捷键,提高用户体验。 其次,弹出式菜单(PopupMenu)是另一种常见的交互方式,它会在用户触发特定事件(如右键点击)时显示。在Swing中,我们可以使用`...

    Java Swing 学习代码

    可以设置快捷键,添加ActionListener来响应用户的点击事件。 9. **快捷键加速器(Accelerator)**:快捷键可以提高用户操作效率,通过KeyStroke和ActionMap实现。例如,Ctrl+S可以绑定到“保存”操作。 10. **禁用...

    快捷键的例子

    - **应用场景**:在图形用户界面(GUI)应用程序中,为了提高用户的操作效率,经常设置快捷键来代替鼠标点击等交互方式。 #### 示例代码解析: 在提供的Java示例代码中,作者创建了一个简单的窗口,并为其中的三个...

    swing导航和示例

    Swing中的导航主要指的是在组件之间,如按钮、文本框和菜单之间的交互方式,这些通常涉及键盘快捷键和鼠标操作。 Swing组件包括但不限于: 1. **JFrame**: 应用程序的主窗口,通常作为其他组件的容器。 2. **JPanel...

    Swing基础知识

    - Swing允许改变组件的外观,通过LookAndFeel类可以设置不同的UI风格,如Metal、Windows、Motif等。 6. **组件的状态和属性**: - Swing组件有很多可调整的属性,如可见性、大小、颜色等,开发者可以通过setter...

    java swing 图形界面实例

    JMenu 还支持快捷键设置,方便用户操作。 3. **JMenuBar**: JMenuBar 是菜单栏的类,通常位于窗口的顶部。你可以将多个 JMenu 添加到 JMenuBar 中,创建多级菜单系统。 4. **JMenuItem**: JMenuItem 是菜单中的一...

    Swing插件

    8. **模板和快捷键**:预定义了一系列Swing相关的代码模板和快捷键,使得常见的Swing编程任务变得简单快捷。 9. **资源管理**:对于图标和其他资源文件的管理,Eclipse Swing插件提供了方便的工具,能够方便地导入...

    Swing 按钮的使用

    - `setMnemonic(KeyEvent.VK_A)` 设置快捷键,这里 `VK_A` 是 KeyEvent 的常量,代表 'A' 键。 - `setHorizontalTextPosition()` 和 `setVerticalTextPosition()` 可以调整文字相对于按钮的位置。 五、按钮组管理 ...

    java swing 下划线

    在Swing中,下划线通常用于实现各种视觉效果或者特定的功能,比如强调某个按钮或文本组件的重要信息,或者是实现快捷键的表示。在Java Swing中,下划线的应用主要体现在JButton、JLabel、JMenuItem等组件上。 在...

    Swing展示的文件系统树

    此外,可以重写`JTree`的`getActionMap()`和`getKeymap()`方法,添加自定义的键盘快捷键处理。 在`SystemFileTree.java`这个源文件中,很可能包含了实现文件系统树的代码。它可能使用`java.io.File`对象作为`...

    Java_Swing窗体种类简介

    - `setMnemonic(char key)`:设置按钮的快捷键,通常与Alt键结合使用。 #### JFrame详解 `JFrame`是Swing中用来创建窗口的主要容器,它是`JWindow`的子类,继承了所有`JWindow`的功能,并添加了默认的关闭操作。`...

    javaswing窗体开发参考文档

    - **灵活性**:工具栏可以被设置为水平或垂直方向。 #### 四、Swing菜单的类层次结构 Swing菜单系统的类层次结构如下所示: - `JMenuBar`:代表菜单栏。 - `JMenu`:表示菜单。 - `JMenuItem`:表示普通的菜单项...

    Java swing 中JButton的使用

    - **设置快捷键**:通过 `setMnemonic()` 方法设置按钮的快捷键,例如 `bl.setMnemonic(KeyEvent.VK_L);`。 - **设置按钮是否可用**:通过 `setEnabled()` 方法控制按钮的启用状态,如 `br.setEnabled(false);`。 #...

    Java课程设计--财务信息管理系统(Swing) .zip

    5. **菜单栏与快捷键**:通过JMenuBar和JMenu可以创建菜单栏,JMenuItem用于添加菜单项,结合Key Bindings可以设置快捷键,提高用户体验。 从标签“java 开发语言 后端 apache swing”可以看出,这个项目可能也涉及...

    完美的swing外观插件

    2. **UIManager**:这是Swing中管理界面样式的主要类,它负责设置和获取LookAndFeel,以及组件的默认属性。通过UIManager,我们可以轻松地切换LookAndFeel,并更新整个应用程序的界面。 3. **组件外观(ComponentUI...

    深入学习JFC Swing(教材)

    同时,JMenu和JMenuBar用于构建应用程序的菜单系统,提供丰富的菜单项和快捷键支持。 六、组件定制与外观美化 Swing允许开发者自定义组件的行为和外观。通过继承已有的组件并重写方法,可以创建具有特定功能的新...

Global site tag (gtag.js) - Google Analytics