AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Die Delphi-IDE Borderstyle bsNone deaktiviert Global-Hotkey?
Thema durchsuchen
Ansicht
Themen-Optionen

Borderstyle bsNone deaktiviert Global-Hotkey?

Ein Thema von Coder · begonnen am 26. Mai 2024 · letzter Beitrag vom 27. Mai 2024
 
Benutzerbild von Coder
Coder

Registriert seit: 27. Feb 2004
Ort: Bochum
206 Beiträge
 
Delphi 3 Professional
 
#1

Borderstyle bsNone deaktiviert Global-Hotkey?

  Alt 26. Mai 2024, 23:02
Hi, ( Delphi 5 - ist aber aktuell sicher immernoch so)

ich hab mal eine Frage: Wenn ich bei einer Form BorderStyle auf z.B. bsNone setze,
funktioniert kein Global-Hotkey mehr.
Auch wenn ich auf bsSingle oder Sizable setze.
Muß das so?

Hat jemand eine Erklärung - und weiß, wie man das eventuell verhindern kann?
Delphi-Quellcode:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Button1: TButton;
    Button2: TButton;
    procedure FormCreate(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private-Deklarationen }
    id1, id2, id3, id4: Integer;
    procedure WMHotKey(var Msg: TWMHotKey); message WM_HOTKEY;
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

// Trap Hotkey Messages
procedure TForm1.WMHotKey(var Msg: TWMHotKey);
begin
  if Msg.HotKey = id2 then
  Edit1.Text := 'Taste gedrückt';
// ShowMessage('Ctrl + Shift + A pressed !');
end;

procedure TForm1.FormCreate(Sender: TObject);
 // Different Constants from Windows.pas
const
  MOD_ALT = 1;
  MOD_CONTROL = 2;
  MOD_SHIFT = 4;
  MOD_WIN = 8;
  VK_A = $41;
begin

  id2 := GlobalAddAtom('Hotkey2');
  RegisterHotKey(Handle, id2, MOD_SHIFT + MOD_CONTROL , VK_A);
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
  UnRegisterHotKey(Handle, id2);
  GlobalDeleteAtom(id2);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  //////////////////////////////////////
  BorderStyle := bsSingle;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  Edit1.Clear;
  BorderStyle := bsnone;
end;

end.
Hat jemand eine Erklärung - und weiß, wie man das eventuell verhindern kann?
Angehängte Dateien
Dateityp: zip GloBHotkey.zip (3,0 KB, 1x aufgerufen)
ICQ: 204141443
Delphi 3 Professional, Intel 2x 2,4Ghz, 3 GB-Graka, Sound-onBrd, --
außerdem D2S, D3Pro, D4S, D5S, D6S, D7S + Indy, Lazarus, VB5Std, VC++5Pro, Tasm4+5 - was braucht man mehr?
-

Geändert von Coder (26. Mai 2024 um 23:05 Uhr)
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:13 Uhr.
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