Delphi-PRAXiS
Seite 1 von 3  1 23      

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)

thomas2009 26. Nov 2008 22:22


Strg+N in Webbrowser deaktivieren ?
 
Hallo

ich versuche mit diesem Tutorial die Tastenkombination Strg+N in Webbrowser zu deaktivieren:
http://www.swissdelphicenter.com/en/...de.php?id=2360

Es klappt bei mir nicht. Was muss ich noch tun ?
Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, OleCtrls, SHDocVw;

type
  TForm1 = class(TForm)
    WebBrowser1: TWebBrowser;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
procedure ApplicationEvents1Message(var Msg: tagMSG; var Handled: Boolean);
// hier muss ich vielleicht Message senden ?
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

// Put a TApplicationEvents component on your form and assign a OnMessage event handler:

procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
  var Handled: Boolean);
begin
  // check if Ctrl-N pressed
  if (GetKeyState(VK_CONTROL) < 0) and (Msg.Message = WM_KEYDOWN) and
    (Msg.wParam = Ord('N')) then
  begin
    Handled := True;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
WebBrowser1.Navigate('http://google.com');
end;

end.

mkinzler 26. Nov 2008 22:24

Re: Strg+N in Webbrowser deaktivieren ?
 
Zitat:

// hier muss ich vielleicht Message senden ?
Nein die Methode sollte bei einer Message aufgerufen werden

API 26. Nov 2008 22:29

Re: Strg+N in Webbrowser deaktivieren ?
 
Du brauchst die Komponente TApplicationEvents

toms 26. Nov 2008 22:33

Re: Strg+N in Webbrowser deaktivieren ?
 
Zudem würde ich es so machen:

Delphi-Quellcode:
procedure TForm1.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
      Handled := IsChild(Webbrowser1.Handle, Msg.hwnd);
    end;
end;

thomas2009 26. Nov 2008 23:12

Re: Strg+N in Webbrowser deaktivieren ?
 
Zitat:

Zitat von mkinzler
Zitat:

// hier muss ich vielleicht Message senden ?
Nein die Methode sollte bei einer Message aufgerufen werden

Und wie sollte die Methode bei einer Message aufgerufen werden?

mkinzler 26. Nov 2008 23:22

Re: Strg+N in Webbrowser deaktivieren ?
 
Indem du diese mit dem genannten Event eines TApplicationEvent-Objektes verbindest

ToFaceTeKilla 27. Nov 2008 15:00

Re: Strg+N in Webbrowser deaktivieren ?
 
Falls du das nur machst um die Tastenkombination zu ändern und dein Programm nur mittel zum Zweck ist, gibts noch einen anderen weg:
Start > ausführen > cmd
in das Installationsverzeichnis von FF wechseln
Code:
cd "..\..\Programme\Mozilla Firefox\chrome"
(falls du das Standart-Verzeichnis genommen hast) (..\..\ wechselt nur aus dem Benutzerverzeichnis raus, das cmd ja standardmäßig darin startet)

dort dann das Jar-Archiv toolkit.jar extrahieren
Code:
jar xf toolkit.jar
(erfordet installiertes JRE)

und im entstandenen Ordner global/content/ die Datei platformHTMLBindings.xml deinen Wünschen anpassen.

Dann das ganze wieder zusammenpacken

Bernhard Geyer 27. Nov 2008 15:03

Re: Strg+N in Webbrowser deaktivieren ?
 
Zitat:

Zitat von ToFaceTeKilla
Falls du das nur machst um die Tastenkombination zu ändern und dein Programm nur mittel zum Zweck ist, gibts noch einen anderen weg:
Start > ausführen > cmd
in das Installationsverzeichnis von FF wechseln

Bringt jedoch wenig wenn er mit WebBrowser TWebbrowser von Delphi meint welche den IE im Hintergrund verwendet

ToFaceTeKilla 27. Nov 2008 15:07

Re: Strg+N in Webbrowser deaktivieren ?
 
Hm recht hast du... hab mir eingebildet irgendwo was von FireFox gelesen zu haben :oops:

thomas2009 27. Nov 2008 19:20

Re: Strg+N in Webbrowser deaktivieren ?
 
Zitat:

Zitat von mkinzler
Indem du diese mit dem genannten Event eines TApplicationEvent-Objektes verbindest

Das hätte ich gerne wissen wie


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:53 Uhr.
Seite 1 von 3  1 23      

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