JTabbedPane快捷切换

使用 setMnemonicAt方法

文档中描述

setMnemonicAt

public void setMnemonicAt(int tabIndex,
                          int mnemonic)
设置用于访问指定选项卡的键盘助记符。助记符是一个键,在与外观的无鼠标修改键(通常为 Alt)一起使用时,它将激活指定的选项卡。

助记符必须对应于键盘上的单个键,且必须使用 java.awt.event.KeyEvent 中定义的 VK_XXX 键代码之一来指定。助记符是不区分大小写的,因此具有对应键代码的键事件将导致铵钮被激活,而不管 Shift 键是否按下。

这将更新指定选项卡所显示的助记符属性。

参数:
tabIndex - 助记符引用的选项卡的索引
mnemonic - 表示助记符的键代码
抛出:
IndexOutOfBoundsException - 如果  tabIndex 超出了范围( tabIndex < 0 || tabIndex >= tab count

比如

        tabbedPane.addTab("Tab 1", icon, panel1,
                "Does nothing");
        tabbedPane.setMnemonicAt(0, KeyEvent.VK_1);

实际效果 1 下面是有下划线的,按Alt+1就能切换到Tab1


与此类似,menu和menuitem,button相关 也有助记方法  setMnemonic

JMenu menu = new JMenu("Document");
        menu.setMnemonic(KeyEvent.VK_D);
        menuBar.add(menu);

 JMenuItem menuItem = new JMenuItem("New");
        menuItem.setMnemonic(KeyEvent.VK_N);
        menuItem.setAccelerator(KeyStroke.getKeyStroke(
                KeyEvent.VK_N, ActionEvent.ALT_MASK));
        menuItem.setActionCommand("new");
        menuItem.addActionListener(this);
        menu.add(menuItem);


setAccelerator

public void setAccelerator(KeyStroke keyStroke)
设置修改键,它能直接调用菜单项的操作侦听器而不必显示菜单的层次结构。UI 负责安装正确的操作。注意,当键入键盘加速器时,不管目前是否显示菜单,它都会运行。

参数:
keyStroke - 将作为加速器的 KeyStroke





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值