【ahk】用标题名称激活IE指定tab

;功能:激活IE指定tab
/*
测试方法:
打开IE 依次访问
http://www.baidu.com/
http://cn.bing.com/
百度处于不激活状态、必应处于激活状态。
*/

;作者:sunwind
;时间:2015年1月18日01:03:16
;问题反馈:qq 157157
;测试环境:IE8
;操作系统:WIN7 64
;AHK版本:AutoHotkey Unicode 32-bit 1.1.16.4

iWeb_Activate("百度一下,你就知道")
sleep,1000
iWeb_Activate("微软必应搜索 - 全球搜索,有问必应 (Bing)")
return
	iWeb_Activate(sTitle)
	{
		; thanks Sean
		; http://www.autohotkey.com/forum/viewtopic.php?p=231093#231093
		DllCall("LoadLibrary", "str", "oleacc.dll")
		DetectHiddenWindows, On
		;~ WinActivate,% "ahk_id " HWND
		;~ WinWaitActive,% "ahk_id " HWND,,5
		ControlGet, hTabBand, hWnd,, TabBandClass1, ahk_class IEFrame
		ControlGet, hTabUI  , hWnd,, DirectUIHWND1, ahk_id %hTabBand% 

		If   hTabUI && DllCall("oleacc\AccessibleObjectFromWindow", "Uint", hTabUI, "Uint",-4, "Uint", GUID(IID_IAccessible,"{618736E0-3C3D-11CF-810C-00AA00389B71}"), "UintP", pacc)=0
		{
			Loop, %   pacc.accChildCount
				If   paccChild:=pacc.accChild[A_Index]
					If   paccChild.accRole[0] = 0x3C
					{
						paccTab:=paccChild
						Break
					}
		}
		If   pacc:=paccTab
		{
			Loop, %   pacc.accChildCount
				If   paccChild:=pacc.accChild[A_Index]
					If   paccChild.accName[0] = sTitle
					{
						paccChild.accDoDefaultAction[0]
						Break
					}
		}
		WinActivate,% sTitle
	} 

GUID(ByRef GUID, sGUID) ; Converts a string to a binary GUID and returns its address.
{
    VarSetCapacity(GUID, 16, 0)
    return DllCall("ole32\CLSIDFromString", "wstr", sGUID, "ptr", &GUID) >= 0 ? &GUID : ""
}

时间: 2024-10-19 12:19:37

【ahk】用标题名称激活IE指定tab的相关文章

【Layui】实现跳转到指定tab栏

需求背景:实现页面之间的联动跳转,并跳转到指定tab栏 解决方法: html代码: <div class="layui-tab layui-tab-brief" lay-filter="current"> <ul class="layui-tab-title"> <li lay_id='one' class="layui-this">PHP</li> <li lay_id=

SwitchToThisWindow 激活指定窗口

SwitchToThisWindow能够激活一个指定程序的窗口,使这个窗口弹出到屏幕的最前面. 如果待激活的窗口是处于最小化状态,这个函数能使窗口还原并在屏幕中最前. SwitchToThisWindow是在User32.DLL中导出的. 函数原型: VOID SwitchToThisWindow(HWND hWnd,BOOL fAltTab); //参数说明 hWnd 要激活的窗口句柄; fAtlTab 是否还原最小化窗口 //使用说明 //想要还原最小化窗口,并在前端显示,传入fAtlTab

获取指定路径下指定类型的文件名称,并返回可用的新名称

检查磁盘上指定目录是否已经存在同名文件(本代码是检查.jpg文件类型),存在三种情况: 1:不存在,返回查询的名称 如:输入abc,返回abc 2:存在一个名称相同的文件,返回"预定义的名称+当前日期+001"的新名称 如:存在一个叫abc.jpg的文件,输入abc,返回abc20101227001 3:存在多个前缀名相同的文件,则返回比编号最大的文件大一个编号的名称 如:存在abc.jpg,abc20101227001,abc20101227002,-,abc201012270023

Java之------socket查看指定URL的Web页编辑器及HTML文档

本例只能用于查看比较简单的网页,像是现在jsp开发的网页有很多地方时无法显示的,但这种程序还是值得学习一下的 package cn.hncu.url; import java.util.Date; import java.text.SimpleDateFormat; import java.awt.event.*; import javax.swing.*; import javax.swing.event.*; import java.io.*; import java.net.*; publ

JS组件系列——基于Bootstrap Ace模板的菜单Tab页效果优化

前言:之前发表过一篇  JS组件系列——基于Bootstrap Ace模板的菜单和Tab页效果分享(你值得拥有) ,收到很多园友的反馈,当然也包括很多诟病,因为上篇只是将功能实现了,很多细节都没有处理,这篇博主将带领大家一起来优化这里的效果,使之成为一个可以在项目里面使用的成品. 说点题外话,本来,在互联网模式下,Tab页+iframe的组合是不能被大多数平台接受的,从这些年推出的一些好的产品可以看出,几乎大家都不这么玩,即使是一些后台的管理模板,比如常见的AdminLTE.Ace.INSPIN

227 面向对象版tab 栏切换

3.1 功能需求 点击 tab栏,可以切换效果. 点击 + 号, 可以添加 tab 项和内容项. 点击 x 号, 可以删除当前的tab项和内容项. 双击tab项文字或者内容项文字可以修改里面的文字内容 3.2 案例准备 获取到标题元素 获取到内容元素 获取到删除的小按钮 x号 新建js文件,定义类,添加需要的属性方法(切换,删除,增加,修改) 时刻注意this的指向问题 3.3 切换 为获取到的标题绑定点击事件,展示对应的内容区域,存储对应的索引 this.lis[i].index = i; t

WIN2003使用IP安全策略只允许指定IP远程桌面连接

一,新建IP安全策略 WIN+R打开运行对话框,输入gpedit.msc进入组策略编辑器. 依次打开“本地计算机”策略--计算机配置--Windows设置--安全设置--IP安全策略,在 本地计算机上. 或是控制面板--管理工具--本地安全策略--IP安全策略,在 本地计算机上. 在右面的空白处右击,选择第一个菜单:创建IP安全策略,弹出的IP安全策略向导对话框. 点击下一步. 在名称里输入3389过虑,下一步. 取消激活默认响应规则,下一步. 选中编辑属性,下一步. 二,新建IP筛选器 在弹出

c# 获取指定目录下的所有文件并显示在网页上

参考文献: FileInfo 的使用  https://msdn.microsoft.com/zh-cn/library/system.io.fileinfo_methods(v=vs.110).aspx 网页表格的生成  http://www.w3school.com.cn/html/html_tables.asp C# 通过文件扩展名获取图标和描述 http://www.csframework.com/archive/2/arc-2-20110514-1478.htm   http://ww

Android tab导航的几种方法:ActionBar tab +fragment,Viewpager+pagerTitleStrip,开源框架ViewPageIndicator 和 ViewPager

action来实现tab标签 并跟fragment结合 因为要写新闻客户端这个tab导航是必须的 这里我写几个小练习,希望大家融会贯通. 1actionbar设置tab +fragment 布局是个layout 什么layout都可以 加个Id 叫container package com.example.demoforactionbar; import android.app.ActionBar; import android.app.Activity; import android.app.