Webbrowser Control

14/03/2011 - 14:12 von G.Wietzorek | Report spam
Ich habe eine Form, die (zunàchst mal) ausschließlich ein Webbrowser Control
enthàlt.

Nervig ist, das man immer zunàchst in das angezeigte Dokument klicken muss, bis
die Cursortasten oder das Mausrad Wirkung zeigt. VB sollte doch eigentlich das
Control (als einziges Control) automatisch aktivieren... Auch .setfocus bringt
da überhaupt nichts.

Hat jemand eine Idee, wie es anzustellen ist, das das control/angezeigte
Dokument direkt den Eingabefocus erhàlt? Die einzige Lösung, die mir gelingen
will, ist ein anderes (focus fàhiges) Control mit niedrigerem Tabulatorindex
zusàtzlich einzufügen und dann mit Sendkey und der Tab Taste das webbrowser
Control zu aktivieren. Das ist mir aber ein wenig zu wacklig... Nun Frage ich
mich, was den Focus Wechsel mit der TAB Taste vom Focus Wechsel mit .setfocus
unterscheidet!?


Gert Wietzorek

Wer A sagt, der muß nicht B sagen.
Er kann auch erkennen, daß A falsch war.
-Bertolt Brecht-
 

Lesen sie die antworten

#1 W. Wolf
14/03/2011 - 15:00 | Warnen spam
"G.Wietzorek" schrieb im Newsbeitrag news:
Ich habe eine Form, die (zunàchst mal) ausschließlich ein Webbrowser Control
enthàlt.

Nervig ist, das man immer zunàchst in das angezeigte Dokument klicken muss, bis
die Cursortasten oder das Mausrad Wirkung zeigt. VB sollte doch eigentlich das
Control (als einziges Control) automatisch aktivieren... Auch .setfocus bringt
da überhaupt nichts.



[...]

Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As
String, ByVal lpsz2 As String) As Long
Private Declare Function SetFocusAPI Lib "user32" Alias "SetFocus" (ByVal Hwnd As Long) As Long


Dim L(1) As Long
L(0) = FindWindowEx(Me.Hwnd, 0, "Shell Embedding", vbNullString)
L(1) = FindWindowEx(L(0), 0, "Shell DocObject View", vbNullString)
CHwnd(1) = FindWindowEx(L(1), 0, "Internet Explorer_Server", vbNullString)
SetFocusAPI CHwnd(1)


Schönen Gruß
W. Wolf

Ähnliche fragen