IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

GUI Python Discussion :

PyGtk et fenêtre transparente


Sujet :

GUI Python

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 112
    Points : 111
    Points
    111
    Par défaut PyGtk et fenêtre transparente
    Bonjour, j'utilise PyGtk 2 et je cherche à rendre une fenêtre principale transparente, c'est à dire sans décorations ni fond, et sans affecter le contenu.

    Je dessine dans un DrawingArea avec cairo.
    Screen::get_rgba_colormap() renvoie None sur Windows XP, donc j'ai essayé d'utiliser un masque avec un Pixmap (limité à 1 bit par pixel) mais les bords arrondis sont crénelés sans alpha.

    Est-ce qu'il existe une autre solution ?

  2. #2
    Expert éminent

    Avatar de deusyss
    Homme Profil pro
    Expert Python
    Inscrit en
    Mars 2010
    Messages
    1 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Expert Python
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 659
    Points : 8 442
    Points
    8 442
    Par défaut
    Bonjour,

    A ma connaissance, il n'y a pas d'autre solution que Cairo. J'ai longtemps cherché à faire de même, et mes recherches me ramenaient toujours vers Cairo.

    Peu être d'autre user du forum auraient-ils des pistes, mais pour moi Cairo reste la meilleure option.
    "La connaissance appartient à tout le monde" (Film Antitrust)

    Tout le nécessaire pour Python:
    *News/Accueil *Cours/tutoriels *FAQ
    *Forums *Outils dédiés *Mon espace personnel avec mes Articles, Cours et Tutoriels

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 112
    Points : 111
    Points
    111
    Par défaut
    Tu veux dire que uniquement avec Cairo je pourrais avoir de la transparence ?

    Parce que je n'ai pas réussi à simplement supprimer l'arrière-plan de la fenêtre principale, j'ai bien set_decorated à False et set_app_paintable n'a aucun effet. Donc comment le dessin avec Cairo dans un DrawingArea peut agir sur la fenêtre en arrière-plan ? Et le seul Drawable autrement c'est l'attribut window de gtk.Window, seulement il vaut None.

    Ca fait des jours que je cherche , je comprends pas pourquoi c'est si compliqué, dans d'autres langages je peux le faire plus facilement et sur la même machine, donc j'aimerais savoir si c'est au moins possible ? Je veux juste un bord arrondi sans crénelage, c'est quand même basique.

    Après Tkinter c'est même pas la peine tellement la doc est immangeable, donc il restera PyQt où j'ai pas encore testé le dessin.

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 112
    Points : 111
    Points
    111
    Par défaut
    Avec PyQt ça n'a pas été long, le paramètre magique c'est le drapeau WA_TranslucentBackground qu'on peut passer à la fenêtre, et là ni décorations ni fond, normal, je me disais aussi...
    Donc est-ce que PyGtk dispose d'un équivalent ?

  5. #5
    Expert éminent

    Avatar de deusyss
    Homme Profil pro
    Expert Python
    Inscrit en
    Mars 2010
    Messages
    1 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Expert Python
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 659
    Points : 8 442
    Points
    8 442
    Par défaut
    Bonsoir,

    On en apprend tous les jours . Je note donc pour le fond transparent Cairo et QT. D'un autre côté je ne code qu'en GTK.

    Côté GTK, je n'ai jamais rien trouvé personnellement, mais si tu trouves l'info, je suis preneur avec grand plaisir. Comme je le disais plus haut, tous les exemple que j'ai trouvé utilisais toujours Cairo en association avec GTK pour y faire des fonds transparents. Et en lisant les docs et en faisant des tests, je n'ai jamais rien trouvé de probant pour GTK.

    En tout cas merci pour l'info
    "La connaissance appartient à tout le monde" (Film Antitrust)

    Tout le nécessaire pour Python:
    *News/Accueil *Cours/tutoriels *FAQ
    *Forums *Outils dédiés *Mon espace personnel avec mes Articles, Cours et Tutoriels

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 112
    Points : 111
    Points
    111
    Par défaut
    De rien . Pour PyGtk j'ai cherché encore un peu dans les méthodes, attributs, drapeaux et autre styles mais je n'ai rien trouvé. Donc je vais passer à PyQt et voir ce que ça donne, sur un autre problème ça pourrait mieux marcher dans l'autre sens mais pour l'heure PyQt est plus concret.

  7. #7
    Expert éminent

    Avatar de deusyss
    Homme Profil pro
    Expert Python
    Inscrit en
    Mars 2010
    Messages
    1 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Expert Python
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 659
    Points : 8 442
    Points
    8 442
    Par défaut
    D'accord. Bonne chance pour ton projet alors, et encore merci pour l'info
    "La connaissance appartient à tout le monde" (Film Antitrust)

    Tout le nécessaire pour Python:
    *News/Accueil *Cours/tutoriels *FAQ
    *Forums *Outils dédiés *Mon espace personnel avec mes Articles, Cours et Tutoriels

Discussions similaires

  1. Fenêtre transparente
    Par c-top dans le forum Agents de placement/Fenêtres
    Réponses: 16
    Dernier message: 10/10/2013, 12h33
  2. Réponses: 6
    Dernier message: 18/03/2008, 20h55
  3. [Win32] Problème de fenêtre transparente et DirectX
    Par Reeter dans le forum Visual C++
    Réponses: 25
    Dernier message: 02/11/2006, 18h45
  4. Fenêtre transparente . . .
    Par lebesnec dans le forum AWT/Swing
    Réponses: 7
    Dernier message: 25/10/2006, 17h24
  5. [GTK#] Fenêtre transparente ?
    Par nicolas.pied dans le forum Général Dotnet
    Réponses: 2
    Dernier message: 15/05/2006, 22h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo