Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Form mit Komponenten Transparent machen, aber wie? (https://www.delphipraxis.net/105258-form-mit-komponenten-transparent-machen-aber-wie.html)

0NyX 18. Dez 2007 21:43


Form mit Komponenten Transparent machen, aber wie?
 
Guten Abend DP User,

ich hab mal wieder ein kleines Problem :oops:
Und zwar würde ich gerne eine Funktion in mein Tool bauen, die es Transparent machen kann, aber nicht vollständig sondern in Prozent.

Also für die Prozent Einstellung habe ich die TTrackBar verwendet.

Die Form die Transpiriert werden soll beinhaltet folgende Sachen:
MainMenu, TMemo, TListView, TRZToolbar, TRZStatusBar.

Würde mich riesig freuen wenn ihr mit ein paar Tipps geben könntet, da ich zur Zeit keine Ahnung habe wie ich es anstellen soll.

Vielen Dank im voraus!

MfG

Aurelius 18. Dez 2007 21:49

Re: Form mit Komponenten Transparent machen, aber wie?
 
http://www.swissdelphicenter.ch/de/showcode.php?id=924

Bitteschö :D

0NyX 18. Dez 2007 21:52

Re: Form mit Komponenten Transparent machen, aber wie?
 
Zitat:

Zitat von xX0815Xx
http://www.swissdelphicenter.ch/de/showcode.php?id=924

Bitteschö :D

wow vielen Dank :)
Ging ja schnell, schaue ich mir direkt mal an =)

EDIT: LEIDER wird nur die Schrift Transperent, aber nicht die Form an sich, weiß einer woran das liegt?

Crazy Ivan 18. Dez 2007 22:23

Re: Form mit Komponenten Transparent machen, aber wie?
 
alphablend.

du bildest das verhältnis von der position der trackbar und der gesammtlänge dieser und rechnest diesen faktor auf 255 hoch. den entstehenden wert setzt du dann ins alphablending ein.

form.alphablend:=true;
form.alphablendvalue:= [errechneter wert]

0NyX 19. Dez 2007 07:41

Re: Form mit Komponenten Transparent machen, aber wie?
 
Zitat:

Zitat von Crazy Ivan
alphablend.

du bildest das verhältnis von der position der trackbar und der gesammtlänge dieser und rechnest diesen faktor auf 255 hoch. den entstehenden wert setzt du dann ins alphablending ein.

form.alphablend:=true;
form.alphablendvalue:= [errechneter wert]

Vielen Dank für die super Hilfe klapp soweit ganz gut =)

Hab es jetzt so gelöst:
Delphi-Quellcode:
  if cbTransparent.Checked then
    begin
      AStyle := Round(tbTransparent.Position * 255 div 100);
      Main.AlphaBlend := true;
      Main.AlphaBlendValue := AStyle;
    end;
Es gibt nur noch einen kleinen Fehler, und der ist wenn ich die aktion durchführe, kann ich das Fenster "Einstellungen" nicht erneut öffnen. Denn es kommt folgender Fehler: [...]'Zugriffsverletzung bei Adresse 00477582 in Modul'[...]


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