[英]CDHtmlDialog set focus on an Input field
我想着重于CDHtmlDialog
框中使用doModal()
调用的Input字段。
我创建了以下代码:
CComPtr<IHTMLInputElement> pincode;
GetElementInterface(_T("pincode"),
IID_IHTMLInputElement, (void **) &pincode);
if (pincode == NULL) {
return;
}
pincode->select();
//set the focus
CComPtr<IHTMLElement2> pincode2;
GetElementInterface(_T("pincode"),
IID_IHTMLElement2 , (void **) &pincode2);
if (pincode2 == NULL) {
return;
}
pincode2->focus();
但是,当我运行我的应用程序时,焦点未设置为输入字段。 选中了该字段:光标位于其中,因此乍一看我们可能会认为我们可以在输入字段中进行写入,但是当我们在该字段中未写入任何内容时!
有人知道我在做什么错吗?
您不能在HTML代码中使用javascript吗? 类似于document.getElementById('pincode').focus();
,这可能是一个简单的解决方法。
我总是喜欢直接使用javascript在HTML中执行与UI相关的代码(我认为CDHtmlDialog
有时具有某种神秘的行为)。
我的两分钱
我希望这有帮助
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.