Autor Beitrag
Muratxiv
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 27



BeitragVerfasst: So 21.01.07 13:58 
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:
ausblenden 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
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 593

WinXP SP2, Ubuntu 8.4
D7 Enterp., D2005 Prof., Java (Eclipse 3.4.0)
BeitragVerfasst: Mo 22.01.07 20:36 
user profile iconMuratxiv 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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 27



BeitragVerfasst: Mo 22.01.07 20:54 
ja, danke...^^

Aber ist es nicht möglich zu warten, bis das laden zuende ist?
ausblenden 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
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 41



BeitragVerfasst: 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
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 275

WinXP
BDS 2006
BeitragVerfasst: Di 23.01.07 18:31 
ausblenden 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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 27



BeitragVerfasst: So 28.01.07 01:26 
Problem gelöst! Danke für eure Hilfe(besonders an Robinator)!

Habe es jetzt so gemacht:
ausblenden Delphi-Quelltext
1:
while Webbrowser1.Readystate <> READYSTATE_COMPLETE do Application.ProcessMessages;