Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Transparentes Memo mit Background (https://www.delphipraxis.net/190507-transparentes-memo-mit-background.html)

whiteF 10. Okt 2016 20:57

Transparentes Memo mit Background
 
hi,
ich brauch mal wieder seit Jahren ein Memo mit transparentem Hintergrund.
Also habe ich mal eine alte Komponente rausgekrammt "TranComp.pas" (von Medialight Software Solutions).
Ich verwende RAD Studio 10 (Win 10).

Wenn ich nun bei dieser Komponente im Objektinspektor "Transparent" auf True stelle wird lediglich die Höhe des weißen Backgrounds um ca 5 pixel kleiner.

Also dachte ich mir ich suche mal eine neue Komponente...
Ich habe mir "TFusedMemo" installiert und auch "cool! TTransparentMemo".
> Hier funktioniert die Transparenz!

Nur beide haben das selbe Problem:
-Eigenschaft ReadOnly := True, dann kommt wieder diese verkleinerte weiße Background.
-OnKeyDown mit Key := 0 wird gekonnt ignoriert und das Memo kann fröhlich beschrieben werden.
-OnKeyPress mit Key := #0 wird gekonnt ignoriert und das Memo kann fröhlich beschrieben werden.


Habt ihr Ideen woran sowas liegt oder habt ihr eine Komponentenempfehlung welche auf den aktuellen Delphi Versionen laufen?
(Ziel ist es ein nichtbeschreibbares Memofeld mit fester Breit und Höhe ohne Scrollbalken auf einem Image zu platzieren, bei dem der Text variiert.)

VG

DeddyH 10. Okt 2016 21:08

AW: Transparentes Memo mit Background
 
Ginge das nicht auch ohne Memo oder sonstige VCL-Komponenten? Ich denke da an DrawText oder vergleichbare API-Aufrufe.

whiteF 11. Okt 2016 08:04

AW: Transparentes Memo mit Background
 
im Prinzip würde das ja auch mit einem zeilenumbrechenden Label funktionieren, dem ich nach übergabe des textes die width und höhe werte bestimme, jedoch fehlt eine grundlegende Funktion (auch für DrawText meine ich).

Ich liebe es Texte zu kopieren und auch dieser text soll auswählbar und kopierbar (strg+c / rmb/copy) sein.

whiteF 12. Okt 2016 19:39

AW: Transparentes Memo mit Background
 
hi,
habe eine Lösung gefunden.

Ein normales RichEdit. Und bei Form.OnCreate reicht folgendes damit dies transparent dargestellt wird.

Delphi-Quellcode:
Form.RichEdit.Brush.Style := BsClear;
SetWindowLong(Form.RichEdit.Handle, GWL_EXSTYLE, WS_EX_TRANSPARENT);
VG


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:08 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