AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

hotkeys

Ein Thema von p3ps1 · begonnen am 25. Jan 2004 · letzter Beitrag vom 17. Apr 2004
Antwort Antwort
Seite 1 von 2  1 2      
p3ps1

Registriert seit: 16. Dez 2003
Ort: Recklinghausen
87 Beiträge
 
Delphi 6 Enterprise
 
#1

hotkeys

  Alt 25. Jan 2004, 16:22
Ja gut, ich weiss, dass sowas hier schon öfter gefragt wurde. Ich hab hab auch schon in der Suche geguckt, bin auch fündig geworden, aber irgendwie...

Also! ich hab ein Programm geschrieben, was beim start sofort als trayicon rechts unten in die taskleiste geht und immer nebenher läuft. Und da wollte ich jetzt etwas per tastendruck ausführen. Z.B
alt+cltr+P
Es geht schief was nur schiefgehen kann
  Mit Zitat antworten Zitat
Synonym
(Gast)

n/a Beiträge
 
#2

Re: hotkeys

  Alt 25. Jan 2004, 16:25
das wird so einfach aber nicht gehen, weil dein programm zwar aktiv, aber nicht immer den fokus hat...
das kannst du sicher nur mit hooks realisieren...aber vielleicht wolltest du das ja auch.

synonym

Hier im Forum suchenHOOK OR KEYHOOK
  Mit Zitat antworten Zitat
p3ps1

Registriert seit: 16. Dez 2003
Ort: Recklinghausen
87 Beiträge
 
Delphi 6 Enterprise
 
#3

Re: hotkeys

  Alt 25. Jan 2004, 16:28
was sind hooks?
wenn das aber die einzige möglichkeit ist, bitte.
{ Ich hab mir ja schon gedacht dass das einProblem ist }
Es geht schief was nur schiefgehen kann
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#4

Re: hotkeys

  Alt 25. Jan 2004, 16:37
Hi!

Wieso sollte das nicht gehen?
Du musst nur einen systemweiten HotKey registrieren:

Delphi-Quellcode:
[...]
  private
     procedure WMHotKey(var Msg: TWMHotKey); Message WM_HOTKEY;
[...]

procedure TForm1.Create(Sender: TObject);
begin
  if NOT RegisterHotKey(Form1.Handle, ID, MOD_ALT, Ord('A')) then
    ShowMessage('Hotkey konnte nicht registriert werden');
[...]

procedure TForm1.WMHotKey(Var Msg: TWMHotkey);
begin
 case Msg.IdHotKey of
  ID: begin
[...]
Weiter können mit ID+1, ID+2 etc. definiert werden.

Ciao fkerber
Frederic Kerber
  Mit Zitat antworten Zitat
p3ps1

Registriert seit: 16. Dez 2003
Ort: Recklinghausen
87 Beiträge
 
Delphi 6 Enterprise
 
#5

Re: hotkeys

  Alt 26. Jan 2004, 13:42
danke, werd ich direkt mal probieren
Es geht schief was nur schiefgehen kann
  Mit Zitat antworten Zitat
p3ps1

Registriert seit: 16. Dez 2003
Ort: Recklinghausen
87 Beiträge
 
Delphi 6 Enterprise
 
#6

Re: hotkeys

  Alt 26. Jan 2004, 14:57
Kann es sein, dass ich noch irgendeine unit einbinden muss?
Es wird immer ein Fehler angezeigt, weil der compiler einige variablen nicht kennt
Es geht schief was nur schiefgehen kann
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#7

Re: hotkeys

  Alt 26. Jan 2004, 16:02
Hi!

Ich habe folgende bei diesem Projekt eingebunden:

Delphi-Quellcode:
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ShlObj, ComObj, StdCtrls, ExtCtrls, ShellAPI;
Kannst ja gucken, was dir fehlt.


Ciao fkerber
Frederic Kerber
  Mit Zitat antworten Zitat
Tubos

Registriert seit: 25. Feb 2004
Ort: Yspertal (Niederösterreich)
1.014 Beiträge
 
Delphi 7 Personal
 
#8

Re: hotkeys

  Alt 17. Apr 2004, 14:13
ich hab auch die Units eingebunden und bekomme:
"Undefinierter Bezeichner: idHotKey"
Lukas
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#9

Re: hotkeys

  Alt 17. Apr 2004, 15:39
Moin Tubos,

lass' mal das id bei idHotkey weg.
Vielleicht geht's damit.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#10

Re: hotkeys

  Alt 17. Apr 2004, 15:59
Delphi-Quellcode:
type
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
  private
    { Private declarations }
      HotKeyID: Integer;
    procedure WMHotKey(var Msg: TWMHotKey); message WM_HOTKEY;
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.WMHotKey(var Msg: TWMHotKey);
begin
  if Msg.HotKey = HotKeyID then
    ShowMessage('Ctrl + Alt + P wurde gedrückt !');
end;

procedure TForm1.FormCreate(Sender: TObject);
const
  VK_P = $50;
begin
  HotKeyID := GlobalAddAtom(PChar(Application.Exename + '_Hotkey1'));
  RegisterHotKey(Handle, HotKeyID, MOD_CONTROL + MOD_ALT, VK_P);
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
  UnRegisterHotKey(Handle, HotKeyID);
  GlobalDeleteAtom(HotKeyID);
end;
Thomas
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 09:07 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