![]() |
Form Halbtransparent |> Fast durchsichtig
Hallo ihr.
Ich hab schon das Forum durchsucht un google schon seit 20 Minuten, habe aber leider nix gefunden Also.. ich habe eine Form, auf der ein Bild ist,wobei die Form mit Autosize angepasst ist. Diese Form soll halbtransparent sein, also dass ich das dahinterliegende durch die Form und das Bild sehe, das Bild aber trotzdem auch noch (eben halbtransparent). Danke schonmal :P Mfg Oldy |
Re: Form Halbtransparent |> Fast durchsichtig
Je nachdem welche Delphi-Version du einsetzt, ab Delphi 6 gibt es die Form-property AlphaBlend und AlphaBlendValue.
Diese musst du einfach auf einen gewünschten Wert setzen (zwischen 0 und 255). ![]() |
Re: Form Halbtransparent |> Fast durchsichtig
Zitat:
Dann wäre 50% ja 128! |
Re: Form Halbtransparent |> Fast durchsichtig
Zitat:
|
Re: Form Halbtransparent |> Fast durchsichtig
habe leider nur Delphi 5
|
Re: Form Halbtransparent |> Fast durchsichtig
Dann könntest du das versuchen:
![]() Das Handle deiner Form bekommst du über Form.Handle ;) |
Re: Form Halbtransparent |> Fast durchsichtig
Du kannst es auch mit folgendem Code machen:
Delphi-Quellcode:
procedure MakeWindowTransparent(Wnd: HWND; Alpha: Byte);
const WS_EX_LAYERED = $80000; LWA_ALPHA = $02; type TSetLayeredWindowAttributes = function(const hWnd: HWND; crKey: Integer; bAlpha: Byte; dwFlags: Integer) : Integer; stdcall; var SetLayeredWindowAttributes : TSetLayeredWindowAttributes; User32DLL : THandle; begin User32DLL := LoadLibrary('User32.dll'); if User32DLL <> 0 then begin @SetLayeredWindowAttributes := GetProcAddress(User32DLL, 'SetLayeredWindowAttributes'); if @SetLayeredWindowAttributes <> nil then begin SetWindowLong(Wnd, GWL_EXSTYLE, GetWindowLong(Wnd, GWL_EXSTYLE) or WS_EX_LAYERED); SetLayeredWindowAttributes(Wnd, 0, Alpha, LWA_ALPHA); end; end; FreeLibrary(User32DLL); end; Aufrufen tust du es dann so:
Delphi-Quellcode:
Edit:
MakeWindowTransparent(Form1.Handle, 128);
Mhh mitm Link war einer schneller ;-) |
Re: Form Halbtransparent |> Fast durchsichtig
ich hab beides ausprobiert und bei beiden das selbe
Keine fehlermeldung, es passiert einfach nichts.. liegts daran dass ich win 98 verwende? |
Re: Form Halbtransparent |> Fast durchsichtig
Zitat:
|
Re: Form Halbtransparent |> Fast durchsichtig
Hilft
![]()
Delphi-Quellcode:
Grüße, Matze
procedure TForm1.FormCreate(Sender: TObject);
begin SetWindowLong(Form1.Handle, GWL_EXSTYLE, (GetWindowLong(Form1.Handle, GWL_EXSTYLE) or WS_WX_TRANSPARENT)); end; Edit: Ach Mist, dann wird's ja komplett durchsichtig (unsichtbar). Sorry. :( |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:39 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