Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Webbrowser Enter in Formulare & XP Style (https://www.delphipraxis.net/89338-webbrowser-enter-formulare-xp-style.html)

hedie 29. Mär 2007 18:08


Webbrowser Enter in Formulare & XP Style
 
Hallo

Ich bin gerade dabei einen Webbrowser mit hilfe der TWebbrowser Kompo zu basteln.

Nun wollte ich fragen, was ich tun muss um bei einem Formular wie zb bei einer Eingabe in Google mit Enter bestätigen zu können?


Und was muss ich tun damit die Formulare wiederum wie bei google XP Style haben.

Danke
Grüsschen

dataspider 29. Mär 2007 19:24

Re: Webbrowser Enter in Formulare & XP Style
 
Zitat:

Zitat von hedie
Hallo
Nun wollte ich fragen, was ich tun muss um bei einem Formular wie zb bei einer Eingabe in Google mit Enter bestätigen zu können?

Ich weisas nicht, ob du das meinst:

...die Enter Taste in HTML Forms eines TWebbrowsers aktivieren

Cu, Frank

hedie 29. Mär 2007 20:10

Re: Webbrowser Enter in Formulare & XP Style
 
Danke hat super geklappt :D

grips-net 23. Apr 2007 13:29

Re: Webbrowser Enter in Formulare & XP Style
 
Hallo.
Ich dachte ich käme mit der Hilfe auch ein gutes Stück weiter, es gibt aber ein großes Problem:

In meiner Webapplikation nutze ich Ajax und löse daher mit onKeyup Javascript-Ereignisse aus. Da ich wie oben ebschrieben die VK_BACK-Taste nicht zulasse, wird auch das Ereignis nicht richtig ausgelöst -eben beim verändern des Feldinhalts durch Drücken der VK_BACK-Taste nicht.

Gibt es hierzu ein Workaround? Nutzt es wenn ich VK_BACK manuell sende?

Arnulf 26. Sep 2008 16:44

Re: Webbrowser Enter in Formulare & XP Style
 
Hallo
Also das beispiel oben ist sehr nett, aber bei mir funktioniert enter key immer noch nicht.
Zumindestens nicht bei google in der suchleiste.

Eigentlich hab ich das ganze Beispiel nur kopiert und kompiliert.
Es ist also 100% das Beispiel von oben .... und es geht nicht?
edit: naja ich lade die seite im onshow event und hab den button rausgeschmissen... also 99.99%

Weiß jemand Rat oder gibts da neuerungen?
lg
Arnulf

toms 26. Sep 2008 17:54

Re: Webbrowser Enter in Formulare & XP Style
 
Hallo

Setze die Komponente TApplicationEvents auf die Form und weise ihr einen OnMessage Handler zu.

Delphi-Quellcode:
uses
  ActiveX;

procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
  var Handled: Boolean);
const
  StdKeys = [VK_TAB, VK_RETURN]; { standard keys }
  ExtKeys = [VK_DELETE, VK_BACK, VK_LEFT, VK_RIGHT]; { extended keys }
  fExtended = $01000000; { extended key flag }
var
  CurrentWB: TWebbrowser;
begin
  CurrentWB := Webbrowser1;
   if not Assigned(CurrentWB.Document) then
  begin
    Handled := False;
    Exit;
  end;
  if IsChild(CurrentWB.Handle, Msg.Hwnd) then
  begin
    if (Msg.Message = WM_CLOSE) then
      msg.message := 0
    else
      if ((Msg.Message >= WM_KEYFIRST) and (Msg.Message <= WM_KEYLAST)) and
        ((Msg.wParam in StdKeys) or (GetKeyState(VK_CONTROL) < 0) or
        (Msg.wParam in ExtKeys) and ((Msg.lParam and fExtended) = fExtended)) then
      begin
        Handled := (CurrentWB.Application as IOleInPlaceActiveObject).TranslateAccelerator(Msg) = S_OK;
        if not Handled then
        begin
          Handled := True;
          TranslateMessage(Msg);
          DispatchMessage(Msg);
        end;
      end;
  end;
end;

Arnulf 26. Sep 2008 19:40

Re: Webbrowser Enter in Formulare & XP Style
 
tja danke - und tatsächlich - wenn man einen eventhandler hat der auch auf die procedure zugreift ... dann läufts auch mit der enter taste.

danke


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:45 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