![]() |
Re: KeyDown - Problem
Das funzt nur solange, wie er den Buchstaben in Großschreibung eingibt ;)
|
Re: KeyDown - Problem
Zitat:
Aber "Ord(UpperCase('e'))" zu nutzen ist auch sinnlos, da wenn ich weiß, dass ich einen Großbuchstaben brauche ihn ja gleich groß eingeben kann. Allerdings finde ich, dass "Ord('E')" leichter verständlich ist als $45 :-D |
Re: KeyDown - Problem
Naja, falls man das in eine Methode packen möchte, sollte man schon in Großschreibung konvertieren, sonst wundert man sich irgendwann :-D
|
Re: KeyDown - Problem
Zitat:
|
Re: KeyDown - Problem
die Windowstasten kann man net ausstellen oder? ( hab da
Delphi-Quellcode:
gefunden) aber wenn ich sage:
VK_LWIN
Delphi-Quellcode:
sagt mir Delphi:
IF ((VK_LWIN in Shift) AND (Key =$44)) THEN
"Inkompatible Typen: 'Integer' und 'Enumeration' geht das nur über Hook? |
Re: KeyDown - Problem
Zitat:
Wir sind hier im KeyDown, nicht im KeyPress..... |
Re: KeyDown - Problem
Da das wohl mit dinem anderen Programm zu tun hat: Man kann dein Programm über den Taskmanager abschiessen. Und Strg+Alt+Entf wirst du nur über einen Tastaturtreiber abfangen können.
|
Re: KeyDown - Problem
richtig, kann man aber auch leider nix gegen unternehmen, war mir aber von vornherein klar...
aber: dazu muss man auch wissen wie das Prog heißt ^^ und wenn es mir gelingt "Windowstaste+D" und "Windowstaste+M" sowie "Windowstaste" dürfte es schwieriger werden, es zu finden(wenn man in den prozessen is). Zudem ist der Taskmanager im Hintergrund, man kann zwar mit der Tastatur agieren, aber wenn er hinter einer schwarzen Bildfäche liegt ist es schwer das richtige zu treffen ^^ klar könnte man einfach alle Prozesse beenden, aber nicht alle wissen, dass das auch ohne Maus geht ^^ Also im fall, dass ich wirklich vorhab, jemanden 100% zu hindern meinen PC zu benutzen is LockWorkStation auf Jedenfall besser und sicherer, und da ich weiß, dass die Progs. doch noch laufen, mach ich das dann auch so, wenn Bedarf besteht... Aber die Windowstasten müssen sich irgendwie deaktivieren lassen, in games funzen die auch net... edit: hab projekt aufgegeben, da es dann doch recht sinnlos ist... |
Neues KeyDown - Problem
Hey ho liebe Delphianer,
ich hab erneut ein Problem mit meinen Tasten. Ich ein Editfeld in dem man nur Zahlen und Punkte eingeben können soll, da man dort ein Datum eingeben soll. mit
Delphi-Quellcode:
hab ich ja schon die zahlen aber jetzt brauch ich einen Punkt. In der Win32sdk werde ich nicht fündig. Und wenn dann steht da etwas von 0xBE oder VK_OEM_PERIOD #0xBE nimmt er mir nicht ab und VK_OEM_PERIOD ist nicht kompatibel mit dem Rest.
IF NOT (Key IN [#48..#57,#60..#69,???]) THEN Key:=#0;
Variablen vom Typ string will er nicht (logisch wenn char verlangt wird) und das:
Delphi-Quellcode:
will auch nicht gehen, weil der die variablen in denen je ein Zeichen von 0xBE steht zu einem ShortString zusammenfasst - was mir auch einleuchtet. Nun bin ich mit meinen Ideen am Ende und weiß auch nicht weiter.
IF NOT (Key IN [#48..#57,#60..#69,#+x+y+z+a]) THEN Key:=#0;
LG JB-1990 |
Re: KeyDown - Problem
Du kannst doch einfach testen, welchen Wert die Punkt-Taste hat:
Delphi-Quellcode:
Punkt-Taste = #46.
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin ShowMessage(IntToStr(Ord(Key))); end; Mfg |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:25 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