Re: TRichEdit transparent bzw. mit Hintergrund
***Push***
Ich habe jetzt die Komponente TJvPanel gesehen, die man ja transparent machen kann, aber irgendwie funktioniert das, so wie es das TJvPanel macht, mit den anderen Komponenten nicht... Ich habe auch schon probiert, das TRichEdit auf ein Form zu geben und dann via TransparentColorValue transparent zu machen - das hat grundsätzlich funktioniert, nur sobald ich dem Form als Parent mein HauptForm gegeben habe war die Transparenz wieder weg, warum eigentlich? LG, ich |
Re: TRichEdit transparent bzw. mit Hintergrund
Also ich habe gerade meinen ersten Hinweis noch einmal ausprobiert mit:
Delphi-Quellcode:
und das funktioniert bei mir einwandfrei - auf jeden Fall so, dass man eine Bitmap dahinter legen kann, die durch den Text hindurchscheint (siehe Screenshot im Posting weiter oben).
unit TransparentRichEdit;
interface uses SysUtils, Windows, Messages, Classes, Controls, JvRichEdit; type TTransparentRichEdit = class(TJvRichEdit) private procedure WMEraseBkGnd(var Message: TWMEraseBkGnd); message WM_ERASEBKGND; protected procedure CreateParams(var Params: TCreateParams); override; end; implementation { TTransparentRichEdit } procedure TTransparentRichEdit.CreateParams(var Params: TCreateParams); begin inherited; Params.ExStyle := Params.ExStyle or WS_EX_TRANSPARENT; end; procedure TTransparentRichEdit.WMEraseBkGnd(var Message: TWMEraseBkGnd); begin Message.Result := 1; end; end. |
Re: TRichEdit transparent bzw. mit Hintergrund
VIELEN, VIELEN DANK! :thumb:
Jetzt funktionierts! Bitte entschuldige vielmals, ich habe deinen oberen Post irgendwie nur halb gelesen, ich habe es da nur mit WM_ERASEBKGND ausprobiert und nicht beides zusammen; ich weiß irgendwie nicht warum, wundert mich jetzt voll. Und das Beispiel-Bild - der "Beweis", dass es so gehen muss - ist mir irgendwie auch nicht aufgefallen, obwohl ich normalerweise auf Bilder immer scharf bin. :zwinker: LG, ich :dp: |
Re: TRichEdit transparent bzw. mit Hintergrund
öööhhhmmm... könnt ihr das Gnaze auch noch mal für Blöde erklrären :)
ich versuche gerade ein bild hintergrundbild in meine richedit zu packen... aber irgendwie will es niht ... |
Re: TRichEdit transparent bzw. mit Hintergrund
Als Basis brauchst du die JVCL oder eine andere RichEdit-Komponente die die neuere Version der RichEdit-DLLs nutzt - mit der Standardkomponente geht's nicht.
Speichere das hier:
Delphi-Quellcode:
in der Datei "TransparentRichEdit.pas" und installiere es als Komponente.
unit TransparentRichEdit;
interface uses SysUtils, Windows, Messages, Classes, Controls, JvRichEdit; type TTransparentRichEdit = class(TJvRichEdit) private procedure WMEraseBkGnd(var Message: TWMEraseBkGnd); message WM_ERASEBKGND; protected procedure CreateParams(var Params: TCreateParams); override; end; procedure Register; implementation { TTransparentRichEdit } procedure TTransparentRichEdit.CreateParams(var Params: TCreateParams); begin inherited; Params.ExStyle := Params.ExStyle or WS_EX_TRANSPARENT; end; procedure TTransparentRichEdit.WMEraseBkGnd(var Message: TWMEraseBkGnd); begin Message.Result := 1; end; procedure Register; begin RegisterComponents('Win32', [TTransparentRichEdit]); end; end. Die hat dann einen transparenten Hintergrund, d.h. du kannst ein TImage dahinter legen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:38 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