Entwickler-Ecke
Internet / Netzwerk - TWebbrowser: Item.Click direkt nach Navigate?
Muratxiv - So 21.01.07 13:58
Titel: TWebbrowser: Item.Click direkt nach Navigate?
Hallo,
Ich möchte nach dem Laden einer Seite einen Button auf dieser drücken. Es funktioniert aber nur, wenn ich den Button in der WebBrowser1DocumentComplete procedur "klicke". Ich frage mich nun, ob beides in einer Pocedur zu handhaben ist. Ich bin der Meinung, dass es nicht geht, da die Seite noch nicht geladen ist, wenn der Button gedrückt werden soll. Hier mal der nicht funktionierende Quellcode:
Delphi-Quelltext
1: 2: 3: 4:
| ... Webbrowser1.Navigate(url); WebBrowser1.OleObject.Document.All.Tags('A').Item(3).click; ... |
Wäre schön, wenn ihr mir helfen könntet....
Mfg. Tim
azubi_20 - Mo 22.01.07 20:36
Titel: Re: TWebbrowser: Item.Click direkt nach Navigate?
Muratxiv hat folgendes geschrieben: |
Es funktioniert aber nur, wenn ich den Button in der WebBrowser1DocumentComplete procedur "klicke". Ich frage mich nun, ob beides in einer Pocedur zu handhaben ist. Ich bin der Meinung, dass es nicht geht, da die Seite noch nicht geladen ist, wenn der Button gedrückt werden soll. [...]
|
was soll man dazu noch sagen... du hast recht. :roll: Eine Begründung hast du auch abgegeben.
Muratxiv - Mo 22.01.07 20:54
ja, danke...^^
Aber ist es nicht möglich zu warten, bis das laden zuende ist?
Delphi-Quelltext
1: 2: 3:
| Webbrowser1.Navigate(url); while webbrowser1.progressbar.progress<>1 do ; WebBrowser1.OleObject.Document.All.Tags('A').Item(3).click; |
^^(ist nicht ganz ernst gemeint)
Mein Programm wird sonst sehr unübersichtlich und kompliziert...
M4EiB - Di 23.01.07 18:28
Vll in WebBrowser1DocumentComplete einen boolean auf True setzen, der vorher False war, und das ganze in einer Schleife abwarten? Ist nur blöd, falls das Document nie complete wird ;)
Robinator - Di 23.01.07 18:31
Delphi-Quelltext
1:
| while Webbrowser1.Readystate <> READYSTATE_INTERACTIVE do Appliaction.Processmesages; |
bin mir gerade nichtmehr ganz sicher ob READYSTATE_INTERACTIVE wirklich so heisst - in jedem fall heisst aber so ähnlich ;)
gruss, rob
Muratxiv - So 28.01.07 01:26
Problem gelöst! Danke für eure Hilfe(besonders an Robinator)!
Habe es jetzt so gemacht:
Delphi-Quelltext
1:
| while Webbrowser1.Readystate <> READYSTATE_COMPLETE do Application.ProcessMessages; |
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!