Delphi-PRAXiS
Seite 1 von 4  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Twebbrowser und Image klick... die xxx'te Variante (https://www.delphipraxis.net/111189-twebbrowser-und-image-klick-die-xxxte-variante.html)

Der.Kaktus 31. Mär 2008 11:42


Twebbrowser und Image klick... die xxx'te Variante
 
Hallo DP'ler,

habe folgende HTML Seite und wuerde gern ein Image per Fernsteuerung druecken. Habe natuerlich vorher in der DP usw. alle Varianten ausprobiert aber leider ohne Erfolg bei "Image.click"."Focus" setzen geht..aber eben nicht klicken. Hat jemand ne Idee?

Danke im voraus!

.....

<div id="Layer1" style="position:absolute; left:78px; top:131px; width:460px; height:210px; z-index:3">
<form method="post" action="../cgi-bin/htm_term.cgi">
<table width="100%" align="center" background="">
<tr>
.........
</tr>
<tr>
<td height="19"><center><input type=image src="../images/f1.gif" width="45" height="45" alt="Funktion 1" name="funktion1"></center></td>
<td height="19"><center><input type=image src="../images/f2.gif" width="45" height="45" alt="Funktion 2" name="funktion2"></center></td>
<td height="19"><center><input type=image src="../images/f3.gif" width="45" height="45" alt="Funktion 3" name="funktion3"></center></td>
</tr>
</table>


</form>
</div>

toms 31. Mär 2008 19:27

Re: Twebbrowser und Image klick... die xxx'te Variante
 
Hallo,

Hast du schon mal meine WB_ClickImage aus dem "Mini Webbrowser Demo" probiert?

Aufruf:
Delphi-Quellcode:
WB_ClickImage(Webbrowser1,'f1.gif');
Delphi-Quellcode:
procedure WB_ClickImage(WB: TWebbrowser; ImageSRC: string);
var
  iDoc: IHtmlDocument2;
  i: Integer;
  iDisp: IDispatch;
  iColl: IHTMLElementCollection;
  InputImage: HTMLInputImage;
begin
  if Assigned(WB.Document) then
  begin
    WB.Document.QueryInterface(IHTMLDocument2, iDoc);
    if Assigned(iDoc) then
    begin
      iDisp := iDoc.all.tags('INPUT');
      if Assigned(iDisp) then
      begin
        iDisp.QueryInterface(IHTMLElementCollection, iColl);
        if Assigned(iColl) then
        begin
          ImageSRC := AnsiUpperCase(ImageSRC);
          for i := 1 to iColl.Get_length do
          begin
            iDisp := iColl.item(Pred(i), 0);
            iDisp.QueryInterface(HTMLInputImage, InputImage);
            if Assigned(InputImage) then
            begin
              if Pos(ImageSRC, AnsiUpperCase(InputImage.src)) <> 0 then
              begin
                InputImage.Click;
              end;
            end;
          end;
        end;
      end;
    end;
  end;
end;

Der.Kaktus 1. Apr 2008 06:51

Re: Twebbrowser und Image klick... die xxx'te Variante
 
Jep, habe ich...geht nicht..auch die 2. Variante, die ich hier fand, kein Erfolg. Schneide ich aber Tastatur/Maus mit (winmacro) geht es. Aber dies Moeglichkeit moechte ich nicht.

toms 1. Apr 2008 07:22

Re: Twebbrowser und Image klick... die xxx'te Variante
 
Zitat:

Zitat von Der.Kaktus
Jep, habe ich...geht nicht..auch die 2. Variante, die ich hier fand, kein Erfolg. Schneide ich aber Tastatur/Maus mit (winmacro) geht es. Aber dies Moeglichkeit moechte ich nicht.

Ich habe deinen HTML Code in eine htm gespeichert und erfolgreich getestet.
Könntest du den gesamten relevanten Code anhängen, so dass ich es testen kann?

Der.Kaktus 1. Apr 2008 07:35

Re: Twebbrowser und Image klick... die xxx'te Variante
 
Kann ich leider nicht..iss Firmenintern...aber ich denke, die ham das im CGI abgeblockt..geht sowas?..die Events Onmouseclick Onmouseup etc. sind aber NIL.

toms 1. Apr 2008 07:40

Re: Twebbrowser und Image klick... die xxx'te Variante
 
Zitat:

Zitat von Der.Kaktus
Kann ich leider nicht..iss Firmenintern...aber ich denke, die ham das im CGI abgeblockt..geht sowas?..die Events Onmouseclick Onmouseup etc. sind aber NIL.

Zur Not könntest du auch den Focus aufs Element setzen und Enter simulieren.

Der.Kaktus 1. Apr 2008 07:45

Re: Twebbrowser und Image klick... die xxx'te Variante
 
hab ich schon versucht und sogar "Space"..funktioniert aber nicht :(
Irgendwas ham die reinprogrammiert die Schlingel *gg*

toms 1. Apr 2008 07:51

Re: Twebbrowser und Image klick... die xxx'te Variante
 
Zitat:

Zitat von Der.Kaktus
hab ich schon versucht und sogar "Space"..funktioniert aber nicht :(
Irgendwas ham die reinprogrammiert die Schlingel *gg*

Vielleicht wird die Mausposition abgefragt und wenn die Maus nicht über dem Element ist wird der Klick ignoriert.

Der.Kaktus 1. Apr 2008 07:53

Re: Twebbrowser und Image klick... die xxx'te Variante
 
Jep, koennte sein..wie bekomm ich die dahin? Setcursorpos? ..Aber wo erhalte ich die Position des Elementes? Danke erstmal fuer Deine Muehe!!

toms 1. Apr 2008 07:56

Re: Twebbrowser und Image klick... die xxx'te Variante
 
Zitat:

Zitat von Der.Kaktus
Jep, koennte sein..wie bekomm ich die dahin? Setcursorpos? ..Aber wo erhalte ich die Position des Elementes? Danke erstmal fuer Deine Muehe!!

Du kannst ja vorerst ausprobieren, ob es mit dieser Methode funktioniert.
D.h du bewegst den Mauszeiger über das Element und simulierst Enter.


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:09 Uhr.
Seite 1 von 4  1 23     Letzte »    

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-2025 by Thomas Breitkreuz