Transparente Form

_X_
Beiträge: 250
Registriert: Di 16. Dez 2008, 20:13
OS, Lazarus, FPC: aptosid (aptosid.com); Lazarus SVN gtk2+qt4; FPC 2.4.0
CPU-Target: 32/64Bit

Transparente Form

Beitrag von _X_ »

Gibt es dafür eine Eigenschaft, oder muss ich da direkt mit der API arbeiten?
Ich denke mal es kann nicht so schwierig sein, weil TPopupNotifier kann es ja auch.
Ich bin aber scheinbar einfach zu blöd, um den Code zu finden, der die Form versteckt.

Ich bitte also einfach mal um Hilfe :oops:

mfg _X_

edit:// Titel geändert :oops:
Zuletzt geändert von _X_ am Mi 28. Okt 2009, 18:36, insgesamt 2-mal geändert.

creed steiger
Beiträge: 958
Registriert: Mo 11. Sep 2006, 22:56

Re: Rahmen [Titel, Schliesen Knopf, etz.] von Form verstecken

Beitrag von creed steiger »

Versteh ich dich völlig falsch oder suchst du BorderStyle:=bsnone im Objektinspektor?

_X_
Beiträge: 250
Registriert: Di 16. Dez 2008, 20:13
OS, Lazarus, FPC: aptosid (aptosid.com); Lazarus SVN gtk2+qt4; FPC 2.4.0
CPU-Target: 32/64Bit

Re: Rahmen [Titel, Schliesen Knopf, etz.] von Form verstecken

Beitrag von _X_ »

Danke.
Ich steh mal wieder voll aufm Schlauch. :oops: :oops:

mfg _X_

_X_
Beiträge: 250
Registriert: Di 16. Dez 2008, 20:13
OS, Lazarus, FPC: aptosid (aptosid.com); Lazarus SVN gtk2+qt4; FPC 2.4.0
CPU-Target: 32/64Bit

Re: Rahmen [Titel, Schliesen Knopf, etz.] von Form verstecken

Beitrag von _X_ »

Jetzt aber noch eine andere Spezialfrage.
Kann ich das TForm auch noch transparent machen?

mfg _X_

pluto
Lazarusforum e. V.
Beiträge: 7192
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Re: Rahmen [Titel, Schliesen Knopf, etz.] von Form verstecken

Beitrag von pluto »

Kann ich das TForm auch noch transparent machen?
Eine Interessante Frage. Meiner Meinung nach geht das nur über API Funktionen. Aber welche Darfst du mich nicht fragen....
MFG
Michael Springwald

_X_
Beiträge: 250
Registriert: Di 16. Dez 2008, 20:13
OS, Lazarus, FPC: aptosid (aptosid.com); Lazarus SVN gtk2+qt4; FPC 2.4.0
CPU-Target: 32/64Bit

Re: Transparente Form

Beitrag von _X_ »

Ich habe gerade das hier gefunden: http://bugs.freepascal.org/view.php?id=1804" onclick="window.open(this.href);return false;
Ich spiele da noch ein bisschen rum.
Wenn ich da was zum Zeug bringe, werde ich es hier natürlich melden.

mfg _X_

Teekeks
Beiträge: 359
Registriert: Mi 27. Mai 2009, 20:54
OS, Lazarus, FPC: OpenSuse11.4 x86 (Lazarus: 0.9.30 FPC 2.4.2)
CPU-Target: x86
Wohnort: Cottbus

Re: Transparente Form

Beitrag von Teekeks »

Hi!
Ich würde mich freuen wenn du was darüber rausfinden würdest, ich hätte da auch Interresse daran.
Ich versuch auch mal was hinzukriegen...

Gruß Teekeks

_X_
Beiträge: 250
Registriert: Di 16. Dez 2008, 20:13
OS, Lazarus, FPC: aptosid (aptosid.com); Lazarus SVN gtk2+qt4; FPC 2.4.0
CPU-Target: 32/64Bit

Re: Transparente Form

Beitrag von _X_ »

Code: Alles auswählen

uses
  Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics,
  Dialogs, xatom, X, xlib, gtk2, gdk2x, GTKProc, GtkDef, ctypes;
 
procedure af_setForm_transparency(const f: THandle; const tp: integer);
 
implementation
 
procedure af_setForm_transparency(const f: THandle; const tp: integer);
var
  transparency: double;
  opacity: integer;
  atom_window_opacity: TAtom;
  dpy: PDisplay;
  win: TWindow;
begin
  dpy := XOpenDisplay(nil);
  win := GDK_WINDOW_XWINDOW(PGtkWidget(PtrUInt(f))^.window);
 
 
  transparency := tp / 1000 * 10;
  opacity      := trunc($FFFFFFFF * transparency);
 
  atom_window_opacity := XInternAtom(dpy, '_NET_WM_WINDOW_OPACITY', False);
 
  XChangeProperty(dpy, win, atom_window_opacity, XA_CARDINAL,
    32, PropModeReplace, @PcuChar(opacity), 1);
 
  XCloseDisplay(dpy);
end;
Damit geht es zumindest unter Linux.
Beachten: nur mit einem Fenstermanager der das unterstützt [KDE4, Compiz, Beryl] funktioniert das ganze.

Vielen dank an Pluto, ich wollte den Fehler einfach nicht finden :mrgreen:

mfg _X_
Dateianhänge
Bei mir läuft alles bestens.<br />Da sieht man den Code für das ganze durch  *gg*<br />Die Trackbar läuft in Prozent, für ne ganze Demo habe ich jetzt aber keine Zeit mehr
Bei mir läuft alles bestens.
Da sieht man den Code für das ganze durch *gg*
Die Trackbar läuft in Prozent, für ne ganze Demo habe ich jetzt aber keine Zeit mehr

Targion
Beiträge: 688
Registriert: Mi 3. Okt 2007, 21:00
OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2)
CPU-Target: x86_64

Re: Transparente Form

Beitrag von Targion »

WOW! Wo hast du das Rausgefunden? Ich hatte gedacht, man müsse dafür explizit KWin oder Compiz-Funktionen importieren. Aber anscheinend funktioniert ordiäre GTK+-Transparenz auch mit KWin...

Benutzeravatar
theo
Beiträge: 10874
Registriert: Mo 11. Sep 2006, 19:01

Re: Transparente Form

Beitrag von theo »

Targion hat geschrieben:Aber anscheinend funktioniert ordiäre GTK+-Transparenz auch mit KWin...
Das ist reiner XLib Code.

Teekeks
Beiträge: 359
Registriert: Mi 27. Mai 2009, 20:54
OS, Lazarus, FPC: OpenSuse11.4 x86 (Lazarus: 0.9.30 FPC 2.4.2)
CPU-Target: x86
Wohnort: Cottbus

Re: Transparente Form

Beitrag von Teekeks »

hmmm, schade. Bei mir geht es nicht...
Jetzt weiß ich auch warum: ich nutze KDE3.
Kann man das dafür auch basteln? Rein generell gibt es dort auch schon Tranzparente Formen.

Targion
Beiträge: 688
Registriert: Mi 3. Okt 2007, 21:00
OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2)
CPU-Target: x86_64

Re: Transparente Form

Beitrag von Targion »

theo hat geschrieben:
Targion hat geschrieben:Aber anscheinend funktioniert ordiäre GTK+-Transparenz auch mit KWin...
Das ist reiner XLib Code.
:oops: Stimmt, habe nur die Einbindung der gtk2-libs gesehen und den Rest schnell überflogen.

_X_
Beiträge: 250
Registriert: Di 16. Dez 2008, 20:13
OS, Lazarus, FPC: aptosid (aptosid.com); Lazarus SVN gtk2+qt4; FPC 2.4.0
CPU-Target: 32/64Bit

Re: Transparente Form

Beitrag von _X_ »

Teekeks hat geschrieben:Kann man das dafür auch basteln?
http://en.gentoo-wiki.com/wiki/X.Org/Tr ... cy#KDE_3.x Keine Garantie für Fehler und/oder Schäden.
Ich weiß nicht, ob das jetzt geht; Ich selber verwende KDE4, weil der KDE3 grundsätzlich veraltet ist.

mfg _X_

_X_
Beiträge: 250
Registriert: Di 16. Dez 2008, 20:13
OS, Lazarus, FPC: aptosid (aptosid.com); Lazarus SVN gtk2+qt4; FPC 2.4.0
CPU-Target: 32/64Bit

Re: Transparente Form

Beitrag von _X_ »

Targion hat geschrieben:WOW! Wo hast du das Rausgefunden?
http://www.space-out.net/readarticle.php?article=1
Ich habe nur den Code übersetzt 8)

mfg _X_

Kuster Peter
Beiträge: 205
Registriert: So 2. Dez 2007, 20:47
OS, Lazarus, FPC: Windows XP Lazarus immer neueste Version
CPU-Target: xxBit
Wohnort: Schweiz

Re: Transparente Form

Beitrag von Kuster Peter »

Ist ja toll, läuft leider mit Windows nicht. Was muss ich anpassen?

Peter

Antworten