Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Problem beim Buttonklick auf HP vom Programm aus (https://www.delphipraxis.net/115277-problem-beim-buttonklick-auf-hp-vom-programm-aus.html)

MrMyagi 9. Jun 2008 16:15


Problem beim Buttonklick auf HP vom Programm aus
 
Moin, und zwar möchte ich mit meinem Programm auf einer Homepage einen Button klicken,
leider kommt es dabei immer zu einen Fehler.(Es soll der Button "status" angeklickt werden

Homepage Quelltcode (vllt falsche Button Id übernommen??):






<DIV id=startseite>&gt;&gt;Startseite</DIV></p>


<DIV id=status onclick=gotosite("/html/top_status.htm") onmouseover=rahmen("status",1) onmouseout=rahmen("status",0)>&gt;&gt;Status</DIV></p>


<DIV id=budget onclick=gotosite("/html/top_budget.htm") onmouseover=rahmen("budget",1) onmouseout=rahmen("budget",0)>&gt;&gt;Budget</DIV></p>
</td>


Der geschriebene Delphicode sieht dazu so aus:

Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
begin
WebBrowser1.Navigate('http://192.168.2.1/');
  repeat
  Application.ProcessMessages;
  until WebBrowser1.ReadyState >= READYSTATE_COMPLETE;
  WebBrowser1.OleObject.document.forms.item(0).elements.item('status').click;
end;
Ich hoffe Ihr könnt mir das Problem sagen.



mfG, Nico

marabu 9. Jun 2008 17:23

Re: Problem beim Buttonklick auf HP vom Programm aus
 
Hallo Nico,

ein Fehler ist immer ärgerlich, aber solange du den Fehler nicht mitteilst, bleibst du weitgehend auf dich gestellt.

In dem HTML-Fragment, welches du zeigst, sehe ich keine Form - also würde ich es so versuchen:

Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var
  vDoc, vForm, vElem: OleVariant;
begin
  WebBrowser1.Navigate('http://192.168.2.1/');
  repeat
    Application.ProcessMessages;
  until WebBrowser1.ReadyState >= READYSTATE_COMPLETE;
  vDoc := WebBrowser1.OleObject.document;
  vElem := vDoc.getElementById('status');
  if VarIsNull(vElem)
    then ShowMessage('Element "status" not found')
    else vElem.click;
Getippt und nicht getestet.

Grüße vom marabu


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:04 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz