Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - HotKey1.HotKey >= Integer


mimi - Di 03.06.03 17:52
Titel: HotKey1.HotKey >= Integer
Hallo,
wie bekomme ich das was in HotKey1.HotKey drinen steht als interger wert zurück ?


TomT - So 08.06.03 12:50

Explizite Typumwandlung:

Delphi-Quelltext
1:
zahl := integer(hotkey1.HotKey);                    


mimi - So 08.06.03 15:08

hatte ich schon gemacht, da meint er es sei eine ungültige typumwanlung


TomT - So 08.06.03 15:38

sicher? hab das bei mir selbst getestet bevor ichs gepostet hab. lief einwandfrei. (D6)


Tweafis - So 08.06.03 16:32

TomT hat folgendes geschrieben:
Explizite Typumwandlung:

Delphi-Quelltext
1:
zahl := integer(hotkey1.HotKey);                    


Vielleicht


Delphi-Quelltext
1:
zahl := (hotkey1.HotKey as Integer);                    


mimi - So 08.06.03 17:52

was heißt "Explizite" ?
werde ich mal ausprobieren:)


TomT - So 08.06.03 22:19

Explizite heisst ausdrückliche, will sagen: man teilt dem Compiler mit wohin er umwandeln soll.
Im Gegensatz dazu wandelt die implizite Typumwandlung "automatisch" um. z.B:

Delphi-Quelltext
1:
2:
3:
4:
5:
var a:float;
      b: integer;
begin
  a:=a+b; //hier wird b implizit ein einen float umgewandelt
end;


mimi - So 08.06.03 22:23

achso, aber damit ist das Problem noch nicht behoben :( :(


TomT - Mo 09.06.03 00:06

Könntest du vielleicht den Ausschnitt aus deinem Quellcode posten, weil bei mir klappt die von mir angegebene Lösung ohne Probleme. Welche Delphi Version nutzt Du?

PS: Die Sache mit dem as geht nicht, da es sich bei integer nicht um eine Klasse handelt.


mimi - So 15.06.03 20:24

meine frage hatte ich falsch gestellt.
die pfeiltasten habe den Asccicod 37-40 aber auf der Zehertastertur ist es das selbe.
wenn ich jetzt die zahl umwaldel zu einem Tastencode string steht da z.b.
Nach-Links und wenn ich auf die Zehertastertur drücke 2 (Zehertastertur)
egal ob ich nun Num lok an oder aus habe. wie kann ich es so machen das da im Hotkey nur "nach links" steht und nicht "4 (Zehertastertur) ?
hat da jemmand eine idee ?