Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Edit-Feld selber erstellen! (https://www.delphipraxis.net/31690-edit-feld-selber-erstellen.html)

ISAS 12. Okt 2004 17:32


Edit-Feld selber erstellen!
 
Will ein Editfeld selber programmieren. Also nicht das ganze, aber das reinschreiben. Arbeite mit DelphiX (soll aber egal sein ). Also, was ich machen will und was ich wissen will: :nerd:

Die OnKeyDown procedure geht vollgendermassen (nur Hilfe zur Erklärung):

Delphi-Quellcode:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
showmessage(floattostr(Key));
end;
Wenn ich zB. 'a' drücke, dann bekomm ich den Wert '65' als showmessage ausgegeben. Nun könnte ich natürlich hergehen und folgenden code eingeben:

Delphi-Quellcode:
if key=65 then string:=string+a; //Bei drücken der 'a' Taste bekommt der string ein kleines a dazu.
Nun könnte ich das ganze so machen um einen eingetippten text in einen String zu bekommen. Gibt es aber nichts, wo das schon gespeichert ist, dann brauch ich das ganze nicht eintippen. Woher weiss den das EditFeld, dass die Taste 65 ein 'a' ist?? Das muss doch irgendwo drinnen stehen und ich will das abrufen.

Also, ich tippe einen Text ins "leere" und ein string soll dann den text bekommen.
zB.: Tippe ich 'Hallo' ein, dann is string:='Hallo';

dizzy 12. Okt 2004 17:35

Re: Edit-Feld selber erstellen!
 
Delphi-Quellcode:
DeinString := DeinString + chr(Key);
;)

Was du suchst ist eine ASCII-Tabelle, aber wie du siehst garnicht nötig!

ISAS 12. Okt 2004 17:45

Re: Edit-Feld selber erstellen!
 
Delphi-Quellcode:
//alles weg
Ja, jetzt isas weg, dafür hab ich aber was neues geschrieben. Hat sich gelöst. Habs schon gefunden. Aber ein Problem bleibt mir noch. Wenn ich zB. einen Beistrich mache, dann kommt bei mir ein '%'. Ist das die englische Tastertur?? Kann aber net sein, weil ers mir in einem Textfeld richtig ausgibt.

dizzy 12. Okt 2004 17:48

Re: Edit-Feld selber erstellen!
 
1) Neue Frage -> neuer Thread

2) schnall ich grad nicht :gruebel:

\\edit: getz hatters wegeditiert... :D

ISAS 12. Okt 2004 18:05

Re: Edit-Feld selber erstellen!
 
Nein, es ist 1/4 was da kommt, nicht ein %-Zeichen

Gruber_Hans_12345 12. Okt 2004 18:08

Re: Edit-Feld selber erstellen!
 
Zitat:

Zitat von dizzy
Delphi-Quellcode:
DeinString := DeinString + chr(Key);
;)

Was du suchst ist eine ASCII-Tabelle, aber wie du siehst garnicht nötig!

Liefert KeyDown nicht die Virtuellen Key Codes ? :gruebel:

Dann kannst ja nicht so einfach mit Chr wandeln oder ?

eventuell wäre es gleich einfacher den Code in die KEyPress zu stellen, da bekomms den Key schon als char und brauchst einfach nur dazuzählen

ISAS 12. Okt 2004 18:35

Re: Edit-Feld selber erstellen!
 
Ja, das is besser, hat aber einen nachteil.

bei OnKeyDown kann man dann nach der Taste abfragen. key=65 -> a
bei OnKeyPress gibs da sowas nicht. Man kann zwar dann so abfragen: key='a', aber wie siehts mit Enter, ESC, Backspace(oder wie das heiist, wo man eins weglöschen kann) und Leertaste aus??

Und dumm is auch noch, dass er bei backspace oder Enter ein komisch Quadrat hinmacht.

ISAS 12. Okt 2004 19:15

Re: Edit-Feld selber erstellen!
 
Habs nun so gemacht, dass ich das einfach kopiert habe. Hab die Taste in ein Edit feld gegeben, dann kopiert und in eine If-Bedinngung verschachtelt. Was genial is. Es is immer ein Quadrat, das gleich ausschaut, aber doch unterschiedlich ist.

-> Backspace
-> ESC


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:14 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