Bonjour à tous,
TEdit en trompe-l'oeil
Prendre un TPanel (par exemple Panel1)
et lui donner les propriétés suivantes :
BevelInner : bvLowered
BevelOuter : bvLowered
BevelWidth : 1
Color : clWhite
Height : 21 (Width : au choix)
Dans ce TPanel,
placer un TEdit (par exemple Edit1)
et lui donner les propriétés suivantes :
BorderStyle : bsNone
Color : clWhite
Font.Color : clWhite
Height : 18
Left : TPanel.Width - 2 (*)
Top : 2
Width : 2
(*) ceci a un avantage car, lorsque l'on re-dimensionne
le TPanel, le TEdit suit !
On a donc un TEdit pratiquement invisible, placé à droite
d'un TPanel le contenant
écrire une procédure Panel1.Click comme suit :
begin Edit1.SetFocus; end;
ce qui permet de voir le curseur
Comme le TEdit est blanc et la fonte est blanche,
les caractères tapés seront invisibles, donc
écrire une procédure Edit1KeyUp comme suit :
begin Panel1.Caption := Edit1.Text; end;
Ceci permet toutefois la saisie des touches
Retour arrière (BS)
Suppression (Del)
Entrée (Enter)
Ceci permet également, pour le côté visuel de la 'chose',
de mettre le Panel1 en alignement gauche, centré ou droite,
ce que le TEdit de base ne sait pas faire !
Ceci permet enfin, pour le fun, d'avoir un TEdit 'spécial'
sans installer de composant nouveau !
Nota : toujours mettre la couleur du TPanel,
la couleur du Tedit et la couleur de FontColor du Tedit
à la même valeur, quelle que soit la couleur voulue
(dommage qu'il n'y ait pas de propriété 'transparent'
dans le TEdit de base, ça aurait aidé !)
Tout ceci n'est que pour se faire plaisir et n'a peut-être
qu'une utilité limitée, mais bon, le visuel est sympa !
A vous lire...
Pierre
Partager