AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte "THookEdit" Zum Festdocken eines Labels

"THookEdit" Zum Festdocken eines Labels

Ein Thema von idefix2 · begonnen am 15. Jul 2010 · letzter Beitrag vom 15. Jul 2010
Antwort Antwort
idefix2
Registriert seit: 17. Mär 2010
Hallo,

Nachdem es mich immer wieder genervt hat, bei kleinen Änderungen im Formularlayout alle Labels wieder schön auszurichten, habe ich von TEdit eine Komponente abgeleitet, die das selbstständig macht.

DIe Verwendung ist denkbar einfach: Es gibt eine zusätzliche Eigenschaft: HookLabel, die im Objektinspektor angezeigt wird. Dort gibt man den Namen des Labels (sowie optional zusätzliche Formatierungsinformation) an. Der Label wandert dann automatisch mit dem Editfeld mit.

Die möglichen Formatierungsoptionen sind:
Format: "Labelname Mxxx"
M = L: Linksbündig, Label beginnt xxx Pixel links vom eingabefeld
M = X: Rechtsbündig, Label endet xxx Pixel links vom Eingabefeld
M = R: Label beginnt xxx Pixel rechts vom Eingabefeld
Default: X10, wenn nur der Name des Labels angegeben wird.

Der Code liesse sich natürlich für alle möglichen anderen Controls erweitern.

Derzeit gibt es noch zwei kleine Probleme:
Wenn das Editfeld sich nicht direkt am Formular, sondern in einem Panel befindet und ein ungültiger Labelname eingegeben wird, löst die Fehlermeldung, die das Programm bringt, eine Exception aus, und die IDE erlaubt der Maus nicht, das Panel zu verlssen, man muss die Fehlermeldung also mit der Tastatur quittieren.
Ich habe zum Nachführen des Labels noch keinen besseren Platz gefunden als TEdit.Update, wenn man das Editfeld irgendwohin versetzt hat, muss man es noch einmal anklicken, damit der Label im Formulardesigner gleich richtig angezeigt wird.
Angehängte Dateien
Dateityp: rar edithook.rar (1,1 KB, 11x aufgerufen)

Geändert von idefix2 (15. Jul 2010 um 02:49 Uhr)
 
Benutzerbild von sx2008
sx2008

 
Delphi 2007 Professional
 
#2
  Alt 15. Jul 2010, 03:09
Ich würde noch TCustomForm statt TForm und TCustomLabel statt TLabel schreiben um THookEdit etwas allgemeiner zu halten.
  Mit Zitat antworten Zitat
idefix2

 
RAD-Studio 2009 Pro
 
#3
  Alt 15. Jul 2010, 03:14
Ja, Du hast Recht - aber jetzt lege ich mich erst einmal schlafen
  Mit Zitat antworten Zitat
Namenloser

 
FreePascal / Lazarus
 
#4
  Alt 15. Jul 2010, 17:00
Gibt es das nicht schon in Form von Delphi-Referenz durchsuchenTLabeledEdit, oder gibt es einen Unterschied zu deiner Komponente?
  Mit Zitat antworten Zitat
idefix2

 
RAD-Studio 2009 Pro
 
#5
  Alt 15. Jul 2010, 22:16
Tatsächlich - Bis vor einiger Zeit hatte ich, wenn überhaupt, nur mit Delphi 5 zu tun, da weiss ich dass es keine derartige Komponente gegeben hat, deshalb habe ich jetzt im Delphi 2009 gar nicht daran gedacht, nach so etwas zu suchen. Die Komponente scheint ausser der linksbündigen Anordnung der Labeltexte alles zu können, was meine Komponente macht (und dafür sogar mehr die Labelanordnung über oder unter dem Eingabefeld - hab ich bis jetzt nirgends gebraucht und deshalb bei meiner Komponente auch nicht eingebaut.

Allerdings ordne ich meine Labels ganz gerne linksbündig an (der Abstand zum Eingabefeld ist dann eben nicht fix).
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:25 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz