Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Strg+N in Webbrowser deaktivieren ? (https://www.delphipraxis.net/124886-strg-n-webbrowser-deaktivieren.html)

mkinzler 27. Nov 2008 19:39

Re: Strg+N in Webbrowser deaktivieren ?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Z.B. im OI

thomas2009 27. Nov 2008 20:22

Re: Strg+N in Webbrowser deaktivieren ?
 
Aber meine Version D7 hat leider den Event OnMessage nicht
Ich meinte wie man den Event programmiert

Die Muhkuh 27. Nov 2008 21:50

Re: Strg+N in Webbrowser deaktivieren ?
 
Auch Delphi 7 hat das Event OnMessage, wenn du ein TApplicationEvent auf die Form machst...

thomas2009 27. Nov 2008 22:04

Re: Strg+N in Webbrowser deaktivieren ?
 
Liste der Anhänge anzeigen (Anzahl: 1)
So sieht es bei mir aus D7 pro

mkinzler 27. Nov 2008 22:08

Re: Strg+N in Webbrowser deaktivieren ?
 
Hilfe mein Fahrrad kann nicht Fliegen :stupid:
TForm != TApplicationEvents
Wenn man dir sagt lege eine TApplicationEvent-Komponente auf die Form und weise deren Eventhandler die Methode zu, dann meinen wir das auch!!!

toms 27. Nov 2008 22:14

Re: Strg+N in Webbrowser deaktivieren ?
 
Wenn du es ohne TApplicationEvents Komponente machen möchtest:

In der private Sektion

Delphi-Quellcode:
private
    procedure OnAppMessge(var Msg: tagMSG; var Handled: Boolean);
im OnCreate:

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  Application.OnMessage := OnAppMessge;
end;
und dann:

Delphi-Quellcode:
procedure TForm1.OnAppMessge(var Msg: tagMSG; var Handled: Boolean);
begin
 if (Msg.wParam = Ord('N')) and (GetKeyState(VK_CONTROL) < 0) and
   (Msg.Message = WM_KEYDOWN) then
    begin
      Handled := IsChild(Webbrowser1.Handle, Msg.hwnd);
    end;
end;

thomas2009 27. Nov 2008 22:26

Re: Strg+N in Webbrowser deaktivieren ?
 
Danke @Toms
Nun ist damit Strg+N deaktiviert und damit kann man keine neue Seite in ein neues Fenster öffnen

Es gibt ein kleine Lücke und zwar mit der Tastenkombination Shift+Klick auf einen Link in Webbrowser wird auch (leider) die Seite in ein neues Fenster geöffnet

Wie lautet der Code, der Shift+Click deaktiviert ?

toms 27. Nov 2008 22:44

Re: Strg+N in Webbrowser deaktivieren ?
 
Zitat:

Zitat von thomas2009
Wie lautet der Code der Shift+Click deaktiviert ?


Delphi-Quellcode:
 Handled := IsChild(WebBrowser1.Handle, Msg.Hwnd) and
  ((Msg.Message = WM_RBUTTONDOWN) or (Msg.Message = WM_RBUTTONUP) and
  (GetKeyState(VK_SHIFT) < 0));

thomas2009 27. Nov 2008 23:07

Re: Strg+N in Webbrowser deaktivieren ?
 
Es stimmt was nicht um Shift + Click zu deaktivieren
Es wird trotzdem ein neues Fenster erstellt :

Delphi-Quellcode:
procedure TForm1.OnAppMessge(var Msg: tagMSG; var Handled: Boolean);
begin

if ((Msg.Message = WM_RBUTTONDOWN) or (Msg.Message = WM_RBUTTONUP) and
  (GetKeyState(VK_SHIFT) < 0)) then begin
  Handled := IsChild(WebBrowser1.Handle, Msg.Hwnd);
 Caption:='shift pressed ;)';
  end;
end;
aber wenn ich Shift allein deaktiviere dann funktioniert :
Delphi-Quellcode:
if (GetKeyState(VK_SHIFT) < 0)) then begin
  Handled := IsChild(WebBrowser1.Handle, Msg.Hwnd);
 Caption:='shift pressed ;)';
  end;
end;

toms 28. Nov 2008 06:31

Re: Strg+N in Webbrowser deaktivieren ?
 
Tipp: setze die Klammern richtig


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:15 Uhr.
Seite 2 von 3     12 3      

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