Используя MSHTML, как установить фокус на поле ввода? - PullRequest
0 голосов
/ 18 ноября 2010

Используя MSHTML, я хотел бы установить фокусировку пользователя на текстовом элементе, то, что я получил и попробовал до сих пор, не работает.

CComPtr<IHTMLInputTextElement> field;
field->put_value( .. );  // I have the right element as I can set the text...

VARIANT vStatus;
vStatus.vt = VT_BOOL;
vStatus.boolVal = VARIANT_TRUE;
field->put_status(vStatus);

CComQIPtr<IHTMLInputElement> inputElement(field);
if( inputElement )
  inputElement->put_status(VARIANT_TRUE);

и не работает, яозначает, что он работает и не сообщает об ошибках, но фокус на веб-странице не меняется.

1 Ответ

1 голос
/ 20 ноября 2010
CComQIPtr<IHTMLElement2 > element2(field);
if(element2!=NULL) element2->focus();
...