Wie für Edit (Delphi) Hintergrundbild festlegen
-
30-09-2019 - |
Frage
Wie kann ich ein Bild für Editbox Hintergrund?
Lösung
Das ist sehr gut möglich, in der Tat. In dem Formular definieren
private
{ Private declarations }
FBitmap: TBitmap;
FBrush: HBRUSH;
protected
procedure WndProc(var Message: TMessage); override;
und tun
procedure TForm1.FormCreate(Sender: TObject);
begin
FBitmap := TBitmap.Create;
FBitmap.LoadFromFile('C:\Users\Andreas Rejbrand\Pictures\AS20Utv.bmp');
FBrush := 0;
FBrush := CreatePatternBrush(FBitmap.Handle);
end;
und
procedure TForm1.WndProc(var Message: TMessage);
begin
inherited;
case Message.Msg of
WM_CTLCOLOREDIT, WM_CTLCOLORSTATIC:
if (Message.LParam = Edit1.Handle) and (FBrush <> 0) then
begin
SetBkMode(Message.WParam, TRANSPARENT);
Message.Result := FBrush;
end;
end;
end;
Natürlich können Sie diese in eine Komponente des eigenen, sagen wir TEditEx
wickeln. Wenn ich Zeit über, ich könnte dies tun. (Beachtet, dass es keine Notwendigkeit, eine teuer zu kaufen (und vielleicht auch nicht, dass qualitativ hochwertige) -Komponente Pack von einer Drittfirma.)
??
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow