Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Mit TWebbrowser auf Button zugreifen (https://www.delphipraxis.net/90562-mit-twebbrowser-auf-button-zugreifen.html)

KesseK 19. Apr 2007 14:47


Mit TWebbrowser auf Button zugreifen
 
Guten Tag!

Ich habe folgendes Problem. Ich nutze ein Twebbrowser um eine Seite anzeigen zu lassen, das geht auch wunderbar. Nur möchte ich auch einen Button auf dieser Seite betätigen.

Der Code ist folgender

Code:
<td><input type=submit value=Ausbilden name=intelligenz class=submit></td>
Ich versuche so darauf zuzugreifen

Delphi-Quellcode:
WebBrowser2.OleObject.Document.GetElementsByName('intelligenz').Item(1).Click;
bei folgendem code funktioniert es allerdings mit meiner Delphi Zeile

Code:
<td><input class=submit type=submit name='Treffer' value=Trainieren onclick="dis(this)"></td>
Hat es damit zutun, das der name in '' angegeben ist?

danke! :)

mkinzler 19. Apr 2007 14:52

Re: Mit TWebbrowser auf Button zugreifen
 
Warum nicht
Delphi-Quellcode:
WebBrowser2.OleObject.Document.GetElementByName('Treffer').Click();
?

KesseK 19. Apr 2007 15:02

Re: Mit TWebbrowser auf Button zugreifen
 
Zitat:

Zitat von mkinzler
Warum nicht
Delphi-Quellcode:
WebBrowser2.OleObject.Document.GetElementByName('Treffer').Click();
?

Funktionier leider auch nicht, der Webbrowser hängt sich einfach auf, lädt also nur noch ohne ergebnis.

mkinzler 19. Apr 2007 15:06

Re: Mit TWebbrowser auf Button zugreifen
 
Was macht den dis()?

KesseK 19. Apr 2007 15:12

Re: Mit TWebbrowser auf Button zugreifen
 
Zitat:

Zitat von mkinzler
Was macht den dis()?

Wenn ich mich nicht irre, macht es den Button nach dem klick unschreibbar, also verhindert den zugriff, bis er wieder enabled wird. Das passiert auf der Seite automatisch nachdem man ihn gedrückt hat. Nach 5 Sekunden akutalisiert sich die Seite und der Button steht wieder zur verfügung.

KesseK 19. Apr 2007 15:13

Re: Mit TWebbrowser auf Button zugreifen
 
Zitat:

Zitat von KesseK
Zitat:

Zitat von mkinzler
Was macht den dis()?

Wenn ich mich nicht irre, macht es den Button nach dem klick unschreibbar, also verhindert den zugriff, bis er wieder enabled wird. Das passiert auf der Seite automatisch nachdem man ihn gedrückt hat. Nach 5 Sekunden akutalisiert sich die Seite und der Button steht wieder zur verfügung.

EDIT: Außerdem ist die Zeile mit dem dis() eigentlich belanglos, da die Zeile mit meinem Delphi code funktioniert. Die andere Zeile funktioniert ja nicht. Die erste.

mkinzler 19. Apr 2007 15:13

Re: Mit TWebbrowser auf Button zugreifen
 
Versuch mal:
Delphi-Quellcode:
WebBrowser2.OleObject.Document.GetElementByName('intelligenz').submit();

KesseK 19. Apr 2007 15:32

Re: Mit TWebbrowser auf Button zugreifen
 
Zitat:

Zitat von mkinzler
Versuch mal:
Delphi-Quellcode:
WebBrowser2.OleObject.Document.GetElementsByName('intelligenz').submit();

Tut sich leider auch nichts, er lädt sich tot :(

KesseK 20. Apr 2007 13:31

Re: Mit TWebbrowser auf Button zugreifen
 
Ich hab eben herausgefunden, dass die Zeile auf eine java Funktion ausführt.

Code:
<script type="text/javascript">
function dis (obj)
{
if (obj.value == 'Bitte warten...')
{
   var el = document.getElementsByTagName('input');
   for(a=0;a<el.length;a++)
    {
        el[a].disabled=true ;
        el[a].value='Bitte warten...' ;
    }
}
else
{
if (!obj.disabled) { obj.disabled = false; obj.value='Bitte warten...' ; }
var el = document.getElementsByTagName('input');

   for(a=0;a<el.length;a++)
    {
        if(el[a] != obj && el[a].type == "submit")
        {
            el[a].disabled=true ;
        }
    }
}

}
</script>
Diese Zeile:

Code:
<td><input type=submit value=Ausbilden name=intelligenz class=submit></td>
..auf die ich über Delphi zugreifen will, führt also das Script aus. Wie kann ich nun das Script starten?

Weiß jemand weiter? die vorherigen Versuche funktionierten leider nicht :(

Danke!

mkinzler 20. Apr 2007 14:08

Re: Mit TWebbrowser auf Button zugreifen
 
Du JS-Skript Funktion macht ja nichts, außer den Button zu deaktivieren und eine "Laufschrift" auf ihn anzuzeigen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:47 Uhr.
Seite 1 von 2  1 2      

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