我正在使用 wshShell.SendKeys 从 HTA 向网站输入一些文本,当我当前的键盘布局不是英文时,wshShell.SendKeys 的结果是出乎意料的。
我希望我的函数检查语言是英语,否则发送 ALT+SHIFT 将其更改为英语。对我来说,困难的部分是找到一个返回当前键盘布局的函数。
如果有人熟悉这样做的方法,我会很高兴知道..
谢谢, 罗特姆
我正在使用 wshShell.SendKeys 从 HTA 向网站输入一些文本,当我当前的键盘布局不是英文时,wshShell.SendKeys 的结果是出乎意料的。
我希望我的函数检查语言是英语,否则发送 ALT+SHIFT 将其更改为英语。对我来说,困难的部分是找到一个返回当前键盘布局的函数。
如果有人熟悉这样做的方法,我会很高兴知道..
谢谢, 罗特姆
好的,我在“影子向导”的帮助下做到了..
这是代码,如果有人想知道(=
谢谢!
var lastKeyPressed = 0;
function sendKey()
{
var WshShell = new ActiveXObject("WScript.Shell");
WshShell.SendKeys( 'a' );
}
function getCurLayout()
{
sendKey();
setTimeout("lastKeyLang()",10);
}
function lastKeyLang()
{
if( lastKeyPressed == 97 )
alert( 'EN' );
else
alert( 'HE' );
}
document.onkeypress = saveLastKey;
function saveLastKey()
{
lastKeyPressed = window.event.keyCode;
}
将“A”发送到文本框,像这样读回:
nValue = oTextbox.value.charCodeAt(0);
如果nValue
是 65 布局是英文,否则它不是并且可能ש
被发送了。