![]() |
Re: transparentes formular in D3
Zitat:
![]() |
Re: transparentes formular in D3
Zitat:
Zitat:
beim verschieben stimmt es nicht mehr |
Re: transparentes formular in D3
Zitat:
|
Re: transparentes formular in D3
ja genau
|
Re: transparentes formular in D3
Dann gehts mit folgender Funktion
Delphi-Quellcode:
Du musst die Farbei deines Forms auf eine Farbe setzen die im Bild nicht vorkommt, und dann obige funktion mit dieser Farbe aufrufen.
function SetFormTransparent(AFormHandle: HWnd; ATransparentColor: TColor): Boolean;
const WS_EX_LAYERED = $00080000; LWA_COLORKEY = $00000001; var LStyle: Integer; LDLLHandle: Cardinal; LSetLayerdProc: function (Hwnd: THandle; crKey: COLORREF; bAlpha: Byte; dwFlags: DWORD): Boolean; stdcall; begin LDLLHandle := LoadLibrary('user32.dll'); if LDLLHandle <> 0 then begin @LSetLayerdProc := GetProcAddress(LDLLHandle, 'SetLayeredWindowAttributes'); if Assigned(LSetLayerdProc) then begin LStyle := GetWindowLong(AFormHandle, GWL_EXSTYLE); SetWindowLong(AFormHandle, GWL_EXSTYLE, LStyle or WS_EX_LAYERED); result := LSetLayerdProc(AFormHandle, ColorToRGB(ATransparentColor), 0, LWA_COLORKEY); end else result := False; FreeLibrary(LDLLHandle); end else result := False; end; Beispiel:
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin color := clFuchsia; //Farbe des Forms auf Rosa setzen (Rosa sollte also nicht im Bild vorkommen) SetFormTransparent(handle, Color); //Und dann Rosa als Transparenztsfarbe setzen end; |
Re: transparentes formular in D3
AFormHandle durch Form1.Handle ersetzen
und.... es klappt !!! :hello: :party: :thumb: Besten Dank für alle antworten !!! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:56 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz