Entwickler-Ecke
Sonstiges (Delphi) - variable maske für registry
tommie-lie - Di 23.07.02 15:53
Titel: variable maske für registry
Hallo,
Ich habe ein Eingabefeld, in das der User nur bestimmt Sachen eintragen soll.
Genaugenommen sind es Registry-Einträge, die eine Bstimmt Form haben müssen, um übernommen zu werden.
Also brauche ich ein Eingabefeld, das eine Maske über den String legt. Dieser muss so aus sehen:
"HKEY_Local_Machine\Key\Subkey\Subsubkey\Parameter = Value"
Ich dachte ein ein MaskEdit, aber da kann ich ja nicht variable Masken einstellen, will meinen, der User kann ja mehr als 2 Subkeys verwenden, und die Länge der Namen ist auch nciht immer gleich.
Wie krieg ich denn so eine Abfrage hin?
Nochmal: Sie muss überprüfen, ob Text steht, dann ein \, dann wieder Text, dann wieder \, usw, beliebig oft, und am Ende darf kein \ stehen, dafür aber ein Leerzeichen, ein = und noch ein Leerzeichen, gefolgt von Text.
Tschüß
tommie-lie
tommie-lie - Sa 27.07.02 13:43
wie, weiß das keiner? Hat noch keiner einen Installer geschrieben? Sieht aber schlacht aus für mich.
O'rallY - Sa 27.07.02 17:12
wie wärs, wenn du ne For-Schleife schreibst, mit der du rausfinden kannst, an welchen Stellen ein '\' ist. Dann extrahierst du mittels MidStr(...) (Unit StrUtils) die "Zwischenräume" und überprüfst diese. usw.
tommie-lie - Sa 27.07.02 18:34
tut mir leid, aber versteh ich nicht.
Wie soll das denn wie eine erweiterte MaskEdit wirken?
O'rallY - Mo 29.07.02 10:04
willst du denn, dass diese "Maske" schon beim Eingeben in ein TEdit (o.ä.) überprüft wird oder willst du das erst hinterher auswerten?
Während der Eingabe lässt sich das so auswerten:
Quelltext
1: 2: 3: 4: 5: 6: 7:
| procedure Tform_Options.Edit1KeyPress(Sender: TObject; var Key: Char); begin if not (Key in [#8, #48..#57]) then {bewirkt z.B., dass nur Zahlen eingegeben und die Backspace Taste gedrückt werden kann} Key := #0; end; |
jetzt musst du nur noch den ASCII-Code der Zeichen herausfinden, die erwünscht sind und da dann eingeben:
Quelltext
1:
| if not (Key in [#..., #... .. #...]) then |
Hilft dir das weiter? Um ehrlich zu sein, ich weiß nicht genau was dir vorschwebt... :?
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!