`

使用快捷键Shift+Tab切换Tab

阅读更多

使用快捷键Shift+Tab切换Tab

使用一个变量存储点击过的Tab的序号

private int defaultTabbedIndex=0;
	/***
	 * tab 的序号,用于使用快捷键Shift+Tab 切换Tab
	 */
	private List<Integer>indexList=new ArrayList<Integer>();
	{
		indexList.add(defaultTabbedIndex);
	}

 

每次选中某个Tab,就把该Tab的index添加进indexList中:

tabbedPane.addChangeListener(new ChangeListener() {
            @Override
            public void stateChanged(ChangeEvent e) {
                JTabbedPane tabbedPane = (JTabbedPane) e.getSource();
                int selectedIndex = tabbedPane.getSelectedIndex();
                indexList.add(selectedIndex);
            }
        });

 

获取上一次Tab的序号:

/***
	 * 获取上一次Tab的序号
	 * @return
	 */
	private int getLastIndex(){
		int length=indexList.size();
		if(length<2){
			return SystemHWUtil.NEGATIVE_ONE;
		}
		return indexList.get(length-2);
	}

 

增加全局快捷键:

/***
	 * 增加全局快捷键Shift+Tab
	 */
	private void addGlobalKey(){
		Toolkit toolkit = Toolkit.getDefaultToolkit();
		// 注册应用程序全局键盘事件, 所有的键盘事件都会被此事件监听器处理.
		toolkit.addAWTEventListener(
				new java.awt.event.AWTEventListener() {
					public void eventDispatched(AWTEvent event) {
						if (event.getClass() == KeyEvent.class) {
							KeyEvent kE = ((KeyEvent) event);
							// 处理按键事件 Shift+Tab
							if ((kE.getKeyCode() == KeyEvent.VK_TAB)
									&& (((InputEvent) event)
											.isShiftDown())&& kE.getID() == KeyEvent.KEY_PRESSED) {
								System.out.println("111");
								int lastIndex=getLastIndex();
								if(lastIndex<0){
									return;
								}
//								indexList.add(tabbedPane.getSelectedIndex());
								tabbedPane.setSelectedIndex(lastIndex);
							} 
						}
					}
				}, java.awt.AWTEvent.KEY_EVENT_MASK);
	}

 

 

参考:

java swing增加全局快捷键

java swing 下拉框增加回车事件

 

 

分享到:
评论

相关推荐

    net中常用的快捷键

    Ctrl + Shift + Tab 反向切换当前编辑视图 3 F7 将窗体设计视图转成其代码视图 4 Shift + F7 将代码视图转成其对应的窗体视图 5 Ctrl + F6 窗体视图之间相互切换 6 Ctrl + Shift + B 生成解决方案

    计算机快捷键大全.xlsx

    快捷键大全,,,,,,,,, 常用快捷键,,Ctrl快捷键,,Alt快捷键,,对话框快捷键,,辅助键盘快捷键, F1,显示程序或系统帮助内容,Ctrl+S,保存,Alt+F4,关闭当前程序,Ctrl+Tab,在选项卡之间向前移动,右侧SHIFT键八秒钟,切换"筛选...

    计算机基础快捷键.docx

    Tab 向下切换光标锁定 Shift+Tab 向上切换光标锁定 F1 帮助 F2 重命名(桌面文档) F12 另存为 F4 选定地址栏(网页中) F5 刷新 Ctrl+A 全选 Ctrl+B 整理文件夹(网页中) Ctrl+F(或G) 查找 Ctrl+H 查看历史记录 ...

    Eclipse快捷键

    切换窗口 Ctrl+f6&lt;可改为ctrl+tab方便&gt; ctrl+shift+M 导入未引用的包 ctrl+w 关闭单个窗口 F3 跳转到类、变量的声明 F11 运行上次程序 Ctrl + F11 调试上次程序 Alt + 回下一个编辑点 ctrl+shift+T 查找工程中的类

    win7常用快捷键

    Ctrl + Windows 键 + Tab 通过 Aero Flip 3-D 使用箭头键循环切换任务栏上的程序 Windows 键 + 数字 启动锁定到任务栏中的由该数字所表示位置处的程序。如果该程序已在运行,则切换到该程序 Shift + Windows 键 + ...

    vs快捷键图片

    把vs快捷键 做到桌面图片上,方便查看 编辑.折叠到定义:Ctrl+M,Ctrl+O 编辑.注释选定内容:Ctrl+K,Ctrl+C 编辑.完成单词:Ctrl+jAlt+向右键 编辑.删除Delete 编辑.向后删除:BackspaceShift+Backspace 编辑.删除...

    Ctrl+Tab MRU-crx插件

    按最近使用的顺序在标签之间切换,Windows上的Chrome允许您将Ctrl + Tab设置为快捷方式 “ Ctrl + Tab MRU”允许按之前被访问的顺序在各个选项卡之间切换。 默认情况下,这是通过按Ctrl + Y来返回时间,而按Ctrl + ...

    sublime_text_3安装包+汉化包+注册机

    Shift+鼠标右键(或使用鼠标中键)可以用鼠标进行竖向多行选择 Shift+Tab 去除缩进 Alt+Shift+1~9(非小键盘)屏幕显示相等数字的小窗口 插件管理[url=]编辑[/url] 1、安装Package Control 按Ctrl+`调出console ...

    使用jupyter Nodebook查看函数或方法的参数以及使用情况

    光标直接放上面再按快捷键Shift+Tab就可以了,不用拖动选取,如: 右上角的^符号是展开,x是关闭,展开后变成这样: 右上角x是关闭,x左边的按钮是用新标签打开,那样更方便浏览. 怎么样,简单吧! 20200311 更新 有朋友反映...

    优秀代码编辑器 Sublime Text 3.2.2 Build 3211 + x64 中文注册版.zip

    Shift+鼠标右键(或使用鼠标中键)可以用鼠标进行竖向多行选择 Shift+Tab 去除缩进 Alt+Shift+1~9(非小键盘)屏幕显示相等数字的小窗口 Sublime Text 插件管理 1、安装Package Control 按Ctrl+`调出console 粘贴...

    Delphi2010资源,delphi2010快捷键

    CTRL+SHIFT+↑(↓) 在过程、函数、事件内部, 可跳跃到相应的过程、函数、事件的定义(在INTERFACE和IMPLEMENTATION之间来回切换) CTRL+SHIFT+G 插入GUID CTRL+J (弹出DELPHI语句提示窗口,选择所需语句将自动完成...

    Protel DXP 快捷键

    Ctrl + Tab 在多个打开文件中循环切换 Alt+F4 关闭Protel DXP 通用原理图和PCB快捷键 Y 放置元件时,上下对调 X 放置元件时,左右对调 Shift+ ↑↓← → 在箭头方向以十个栅格为增量移动光标 ↑↓← → 在箭头方向...

    xp系统快捷键大全下载

    ALT+RIGHT ARROW 显示前一页(前进键)ALT+LEFT ARROW 显示后一页(后退键)CTRL+TAB 在页面上的各框架中切换(加shift反向)F5 刷新CTRL+F5 强行刷新  目的快捷键  激活程序中的菜单栏 F10  执行菜单上相应...

    键盘按键命令

    ctrl+tab 在页面上的各框架中切换(加shift反向) f5 刷新 ctrl+f5 强行刷新 目的快捷键 激活程序中的菜单栏 f10 执行菜单上相应的命令 alt+菜单上带下划线的字母 关闭多文档界面程序中的当 前窗口 ...

    计算机快捷键大全.doc

    Ctrl+Shift 输入法切换 Ctrl+空格 中英文切换 Ctrl+回车 QQ号中发送信息 Ctrl+Home 光标快速移到文件头 Ctrl+End 光标快速移到文件尾 Ctrl+Esc 显示开始菜单 Ctrl+Shift+快速缩小文字 Ctrl+Shift+&gt; 快速放大文字 ...

    python常用快捷键

    #最重要的快捷键 1. ctrl+shift+A:万能命令行 2. shift两次:查看资源文件 #新建工程第一步操作 1. module设置把空包分层去掉,compact empty middle package 2. 设置当前的工程是utf-8,设置的Editor--&gt;File ...

    IDEA快捷键.docx

    代码标签输入完成后,按Tab,生成代码。 选中文本,按Ctrl+Shift+F7 ,高亮显示所有该文本,按Esc高亮消失。 Ctrl+W 选中代码,连续按会有其他效果 选中文本,按Alt+F3 ,逐个往下查找相同文本,并高亮显示...

    计算机应用基础快捷键.doc

    SHIFT+ F10 显示"开始"菜单 CTRL+ ESC 显示多文档界面程序的系统 菜单 ALT+连字号(-) 粘贴 CTR L+ V 切换到上次使用的窗口或者 按住 ALT然后重复按TAB, 切换到另一个窗口 ALT+ TAB 撤消 CTRL+ Z 二、使用"Windows...

    win7_快捷键

    Win+CTRL+TAB:使用Windows Flip 3-D切换任务栏上的活动窗口 Win+Shift+← :跳转左边的显示器 Win+Shift+→:跳转右边的显示器 Win+↑:最大化当前窗口 Win+↓:还原/最小化当前窗口 Win+←:当前窗口向左上下最大...

Global site tag (gtag.js) - Google Analytics