AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

KeyDown - Problem

Ein Thema von JB-1990 · begonnen am 28. Nov 2007 · letzter Beitrag vom 8. Mai 2008
Antwort Antwort
Seite 2 von 3     12 3   
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.533 Beiträge
 
Delphi 11 Alexandria
 
#11

Re: KeyDown - Problem

  Alt 29. Nov 2007, 08:39
Das funzt nur solange, wie er den Buchstaben in Großschreibung eingibt
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Deep-Sea
Deep-Sea

Registriert seit: 17. Jan 2007
907 Beiträge
 
Delphi XE2 Professional
 
#12

Re: KeyDown - Problem

  Alt 29. Nov 2007, 08:47
Zitat von DeddyH:
Das funzt nur solange, wie er den Buchstaben in Großschreibung eingibt
Wird er schon merken
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
Chris
Die Erfahrung ist ein strenger Schulmeister: Sie prüft uns, bevor sie uns lehrt.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.533 Beiträge
 
Delphi 11 Alexandria
 
#13

Re: KeyDown - Problem

  Alt 29. Nov 2007, 08:54
Naja, falls man das in eine Methode packen möchte, sollte man schon in Großschreibung konvertieren, sonst wundert man sich irgendwann
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
JB-1990

Registriert seit: 3. Okt 2007
56 Beiträge
 
#14

Re: KeyDown - Problem

  Alt 1. Dez 2007, 18:28
Zitat von Deep-Sea:
Zitat von DeddyH:
Das funzt nur solange, wie er den Buchstaben in Großschreibung eingibt
Wird er schon merken
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
sind beide gleich verständlich, beim GTR is es ja auch so, dass jede Taste ne bestimmte Zahl hat z.B.: Getkey=79 von daher ist eig. alles ganz gut zu verstehen.
  Mit Zitat antworten Zitat
JB-1990

Registriert seit: 3. Okt 2007
56 Beiträge
 
#15

Re: KeyDown - Problem

  Alt 2. Dez 2007, 03:07
die Windowstasten kann man net ausstellen oder? ( hab da VK_LWIN gefunden) aber wenn ich sage: IF ((VK_LWIN in Shift) AND (Key =$44)) THEN sagt mir Delphi:
"Inkompatible Typen: 'Integer' und 'Enumeration'
geht das nur über Hook?
  Mit Zitat antworten Zitat
Amateurprofi

Registriert seit: 17. Nov 2005
Ort: Hamburg
1.039 Beiträge
 
Delphi XE2 Professional
 
#16

Re: KeyDown - Problem

  Alt 2. Dez 2007, 04:09
Zitat von DeddyH:
Das funzt nur solange, wie er den Buchstaben in Großschreibung eingibt ;)
Nein.
Wir sind hier im KeyDown, nicht im KeyPress.....
Gruß, Klaus
Die Titanic wurde von Profis gebaut,
die Arche Noah von einem Amateur.
... Und dieser Beitrag vom Amateurprofi....
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#17

Re: KeyDown - Problem

  Alt 2. Dez 2007, 11:04
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.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
JB-1990

Registriert seit: 3. Okt 2007
56 Beiträge
 
#18

Re: KeyDown - Problem

  Alt 2. Dez 2007, 18:54
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...
  Mit Zitat antworten Zitat
JB-1990

Registriert seit: 3. Okt 2007
56 Beiträge
 
#19

Neues KeyDown - Problem

  Alt 8. Mai 2008, 18:19
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
IF NOT (Key IN [#48..#57,#60..#69,???]) THEN Key:=#0; 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.
Variablen vom Typ string will er nicht (logisch wenn char verlangt wird) und das:
IF NOT (Key IN [#48..#57,#60..#69,#+x+y+z+a]) THEN Key:=#0; 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.
LG JB-1990
  Mit Zitat antworten Zitat
Benutzerbild von Fussball-Robby
Fussball-Robby

Registriert seit: 22. Okt 2007
Ort: Nähe Köln
1.063 Beiträge
 
Delphi 7 Enterprise
 
#20

Re: KeyDown - Problem

  Alt 8. Mai 2008, 18:24
Du kannst doch einfach testen, welchen Wert die Punkt-Taste hat:
Delphi-Quellcode:
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
  ShowMessage(IntToStr(Ord(Key)));
end;
Punkt-Taste = #46.

Mfg
Robert L.
Der folgende Satz ist richtig!
Der vorherige Satz ist falsch!

Paradox
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 12:39 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