Einzelnen Beitrag anzeigen

BAMatze

Registriert seit: 18. Aug 2008
Ort: Berlin
759 Beiträge
 
Turbo Delphi für Win32
 
#9

Re: größe der Komponente automatisch anpassen

  Alt 11. Mai 2009, 10:54
Zitat von jfheins:
Ich habe mal so eine Komponente gemacht - sie funktionierte im Grunde wie folgt:

Label und Edit erstellen, aber das Edit unsichtbar machen. (damit man nicht von außen alles verändern kann - was verändert werden soll, kann man ja wieder nach außen führen)

Beim Doppelklick aufs Label dem Edit den Text zuweisen (evtl. positionieren) und sichtbar machen

Wenn das Edit den Focus verliert oder Enter gedrückt wird, Label den text zuweisen und Edit unsichtbar machen

Wenn im Edit Esc gedrückt wird, Edit nur unsichtbar machen.


Ich denke die schwierigse Aufgabe ist es, das Edit so zu positionieren, dass der Text genau auf dem vom label zu liegen kommt. Könnte man vll. dadurch lösen, dass man die Mittelpunkte an die Gleiche Stelle rückt (ist aber nur so ne überlegung - in der Kompo die ich gemacht hab war die schriftgröße konstant)
Jap so funktioniert das kleine Programm, wie ich das oben mal gepostet habe. Label und Edit in einem TWinControl gepackt. Das TWinControl hat dort aber noch die feste Größe von 100 x 100 Pixel. Und noch hatte ich nix gefunden, wie man das eventuell ändern kann. Deswegen verfolge ich gerade oki´s Ansatz, das Edit in ein TCustomLabel zu integrieren.

Ps.: das Edit muss 3Pixel höher und 3 weiter nach links verschoben werden, dann liegen Schrift von Label und Edit genau übereinander (bei gleicher Textformatierung).
2. Account Sero
  Mit Zitat antworten Zitat