ubuntuusers.de

GTK+ Fensterhintergrund Transparent Widgets aber nicht

Status: Ungelöst | Ubuntu-Version: Ubuntu 12.04 (Precise Pangolin)
Antworten |

microft

Avatar von microft

Anmeldungsdatum:
6. August 2009

Beiträge: 454

Wohnort: Norddeutschland

Hallo

Ich suche eine Möglichkeit ein GtkWindow transparent zu machen die Widgets im Window sollen aber nicht transparent sein. Opacity fürs Window setzt ja alles auf trasparent.

cu

Lasall

Ehemalige
Avatar von Lasall

Anmeldungsdatum:
30. März 2010

Beiträge: 7723

Hi microft,

zeichne dazu den CairoContext des Fensterwidgets manuell rgba(0,0,0,0).

Konkret also das GtkWindow paintable machen, dann prüfen, ob GdkScreen composited ist (andernfalls geht die Transparenz so nicht) und dann das GdkVisual des GdkScreens mit dem GtkWndow verbinden. Nach den Vorbereitungen dann einfach ins draw-Signal einhängen und dort den CairoContext zeichnen (set_source_rgba, paint). Direkt vor und nach dem paint den CairoOperator auf SOURCE bzw. OVER setzen, damit das Zeichnen der Transparenz funktioniert.

Gruss Lasall

Antworten |