TMaskEdit und HexZahlen

Für Fragen von Einsteigern und Programmieranfängern...
Antworten
FrankS
Beiträge: 9
Registriert: Mi 26. Jan 2022, 18:55

TMaskEdit und HexZahlen

Beitrag von FrankS »

Hallo,
ich habe Lazarus Version 2.0.12 auf einem Windows 10 Rechner installiert und versuche mit einem TMaskEdit eine Hexzahl einzugeben.
Die Maskendefinition dafür -> "HHHH" (4 stellige HexZahl) wird aber nicht erkannt, ist dies ein bekanntes Problem?
Gibt es dafür einen Workaround?

Als mode habe ich folgende Definition "{$mode objfpc}{$H+}" sollte nach meinem Verstaändnis ok sein.

Gruß
Frank

Benutzeravatar
theo
Beiträge: 10467
Registriert: Mo 11. Sep 2006, 19:01

Re: TMaskEdit und HexZahlen

Beitrag von theo »

Was heisst "wird nicht erkannt"?

Hier auf Lazarus 2.3.0 geht das.

FrankS
Beiträge: 9
Registriert: Mi 26. Jan 2022, 18:55

Re: TMaskEdit und HexZahlen

Beitrag von FrankS »

Wenn ich unter Eigenschaften: EditMask folgendes Eintrage: '0000' erscheint im Eingabefenster '____' und ich kann eine 4Stellige Zahl eingeben.
Bei einem Eintrag von 'HHHH' erscheint im Eingabefenster 'HHHH' und es werden kein Eingaben akzeptiert.

Benutzeravatar
Winni
Beiträge: 1577
Registriert: Mo 2. Mär 2009, 16:45
OS, Lazarus, FPC: Laz2.2.2, fpc 3.2.2
CPU-Target: 64Bit
Wohnort: Fast Dänemark

Re: TMaskEdit und HexZahlen

Beitrag von Winni »

Hi!

Im Gegensatz zu Theo kenne ich den aktuellen Zustand nicht.

Aber: Maskedit ist seit Delphi-Zeiten vermurkster Mist.

Selber machen ist einfach:

Code: Alles auswählen

procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
  if NOT (key in [VK_0..VK_9,VK_A..VK_F,VK_LEFT,VK_Right,VK_BACK,VK_DELETE])
       then key := 0;
end;   
Winni

Benutzeravatar
theo
Beiträge: 10467
Registriert: Mo 11. Sep 2006, 19:01

Re: TMaskEdit und HexZahlen

Beitrag von theo »

FrankS hat geschrieben:
Mi 26. Jan 2022, 19:22
Wenn ich unter Eigenschaften: EditMask folgendes Eintrage: '0000' erscheint im Eingabefenster '____' und ich kann eine 4Stellige Zahl eingeben.
Bei einem Eintrag von 'HHHH' erscheint im Eingabefenster 'HHHH' und es werden kein Eingaben akzeptiert.
Wie gesagt, hier geht das.
Updaten ist sicher eine gute Idee. 2.0.12 ist auch schon bald ein Jahr alt.

Benutzeravatar
Winni
Beiträge: 1577
Registriert: Mo 2. Mär 2009, 16:45
OS, Lazarus, FPC: Laz2.2.2, fpc 3.2.2
CPU-Target: 64Bit
Wohnort: Fast Dänemark

Re: TMaskEdit und HexZahlen

Beitrag von Winni »

Hi!

Der Fehler mit HHHH wird unter 2.0.12 bestätigt.

Als Workaround kann man AAAA oder aaaa nehmen.

Liste der möglichen Masken:

https://wiki.freepascal.org/TMaskEdit

Winni

siro
Beiträge: 730
Registriert: Di 23. Aug 2016, 14:25
OS, Lazarus, FPC: Windows 11
CPU-Target: 64Bit
Wohnort: Berlin

Re: TMaskEdit und HexZahlen

Beitrag von siro »

Guten Morgen,

in Lazarusversion V2.0.8 geht es bei mir auch nicht.

In Lazarus Version V2.2.0 geht es.
Dafür hab ich es hinbekommen, dass es während der Maskeneditor offen war einen Acces Violation gab und die IDE wurde beendet.
Grüße von Siro
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...

FrankS
Beiträge: 9
Registriert: Mi 26. Jan 2022, 18:55

Re: TMaskEdit und HexZahlen

Beitrag von FrankS »

@Winni
Als Workaround kann man AAAA oder aaaa nehmen.
Da muss ich ja auch kodieren --> G-Z g-z raus.

Werde also deine ALternative mit dem TEdit nutzen.


FrankS

Antworten