Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Strg, Shift in Webbrowser deaktivieren ? (https://www.delphipraxis.net/124273-strg-shift-webbrowser-deaktivieren.html)

thomas2009 17. Nov 2008 21:36


Strg, Shift in Webbrowser deaktivieren ?
 
Hallo Leute
ich habe ein kleines Problem. Vorher vermeide ich die Tastenkombination mit javascript in meine HTML. Nun möchte ich einen Delphi-Code verwenden ohne die Manipulation in html Code

Wie konnte ich folgende Tasten deaktivieren in Webbrowser :
1. Strg + n (damit man die Seite in Webbrowser in ein neues Fenster öffnen kann)

2. Shift + Klick (das selbe Ziel)

Cyberstorm 17. Nov 2008 22:08

Re: Strg, Shift in Webbrowser deaktivieren ?
 
Also spontan fällt mir nur die Möglichkeit eines Tastatur/Maushooks ein.

Müsstest beim Mousehook halt bei jedem Klick prüfen, ob der Browser gerade den Fokus hat und ob Shift gedrückt wurde und beim Tastaturhook das selbe für die entsprechenden Tasten.

Delphi-Quellcode:
if ((GetKeyState(VK_Control) and $80) = $80) and ((GetKeyState(84) and $80) = $80) then ...

hooks können recht komplex werden. gibt aber einige tutorials. müsstest du dich halt reinfummeln.
such mal nach keyboard hooking usw.

toms 18. Nov 2008 04:05

Re: Strg, Shift in Webbrowser deaktivieren ?
 
Zitat:

Wie konnte ich folgende Tasten deaktivieren in Webbrowser :
1. Strg + n (damit man die Seite in Webbrowser in ein neues Fenster öffnen kann)
Geht auch ohne Hooks, mit der Komponente TApplicationEvents.

Delphi-Quellcode:
procedure TfrmMyBrowser.ApplicationEvents1Message(var Msg: tagMSG;
  var Handled: Boolean);
begin
  // Strg + n deaktivieren
  if (Msg.wParam = Ord('N')) and (GetKeyState(VK_CONTROL) < 0) and
   (Msg.Message = WM_KEYDOWN) then
    begin
      if IsChild(Webbrowser1.Handle, Msg.hwnd) then
        Handled := True;
    end;
end;
Zitat:

2. Shift + Klick (das selbe Ziel)
Im OnNewWindow2 Cancel := True; setzen (Achtung: Keine neuen Fenster können geöffnet werden)

Cyberstorm 18. Nov 2008 08:56

Re: Strg, Shift in Webbrowser deaktivieren ?
 
achso. in TWebBrowser :P
dachte allgemein systemweit beim browsen.


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