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

Tkinter Python Discussion :

Tkinter - Image qui se balade sur le bureau


Sujet :

Tkinter Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2012
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2012
    Messages : 29
    Par défaut Tkinter - Image qui se balade sur le bureau
    Bonjour,

    j'aurais voulu savoir si il était possible de faire un programme tkinter qui affiche une image sur le bureau, tel mouton.exe, pour ceux qui connaissent.

    En gros une image transparente, sans fenetre.

  2. #2
    Membre Expert Avatar de PauseKawa
    Homme Profil pro
    Technicien Help Desk, maintenance, réseau, système et +
    Inscrit en
    Juin 2006
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicien Help Desk, maintenance, réseau, système et +
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 725
    Par défaut
    Bonjour,

    Techniquement non : la transparence s'applique à tous les objets de la fenêtre.

    @+

  3. #3
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 741
    Par défaut
    Salut,

    Citation Envoyé par PauseKawa Voir le message
    Techniquement non : la transparence s'applique à tous les objets de la fenêtre.
    Certes mais une image transparente qui se balade peut être construite avec un Toplevel (sans "bords"), Canvas, .create_image, ou autre widget qui permette de "remplir" la Toplevel. Puis on applique transparence et déplacements au Toplevel.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  4. #4
    Membre Expert Avatar de PauseKawa
    Homme Profil pro
    Technicien Help Desk, maintenance, réseau, système et +
    Inscrit en
    Juin 2006
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicien Help Desk, maintenance, réseau, système et +
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 725
    Par défaut
    Bonsoir wiztricks,

    Un exemple ?
    J'ai beau jouer avec alpha sur un toplevel mais rien n'y fait : La transparence reste égale. Ce qui est normal.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    import Tkinter as tk  # import tkinter as tk > pour Python 3.x
     
     
    root = tk.Tk()
    root.withdraw()
    top = tk.Toplevel(root)
    can = tk.Canvas(top)
    im = tk.PhotoImage(file="image.gif")  # image.gif a remplacer
    can.create_image(0, 0, image=im)
    can.pack()
    top.bind('<Button-1>', lambda e: root.destroy())
    top.overrideredirect(1)
    top.attributes("-alpha", 0.5)
    root.mainloop()
    Elle est ou l'idée ?

    Merci d'avance

  5. #5
    Membre Expert Avatar de PauseKawa
    Homme Profil pro
    Technicien Help Desk, maintenance, réseau, système et +
    Inscrit en
    Juin 2006
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicien Help Desk, maintenance, réseau, système et +
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 725
    Par défaut
    Bonjour,

    A vrais dire la seul moyen que je vois c'est de faire un grab de l'écran (Le sujet est déjà débattu plusieurs fois : faire une recherche sur le forum.) et d’insérer l'image dans un canvas.
    Le but ensuite et de dimensionner la fenêtre, sans bordure, aux dimensions de l'animation et de se déplacer dans le Canvas (scroll) et même temps que l'on déplace la fenêtre.
    Le tout est de faire un grab à intervalle régulier pour avoir quelque chose de proche de ce qui est à l'écran.
    La difficulté est qu'un grab prend du temps : Il vas falloir en prendre compte et le traiter 'à part'.
    C'est sans doute 'du bricolage' mais je ne vois pas comment appliquer un alpha de 1.0 sur un objet (d'un Canvas ou autre) alors que le reste de l'application a un alpha de 0.0.

    @+

  6. #6
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 741
    Par défaut
    Salut,

    Citation Envoyé par PauseKawa Voir le message
    J'ai beau jouer avec alpha sur un toplevel mais rien n'y fait : La transparence reste égale. Ce qui est normal.
    Je viens de faire le test sous Windows.
    Lorsque je modifie l'alpha du Toplevel, la transparence de l'image suit: "normal"?!?
    La différence est que j'ai utilisé PIL.ImageTk.PhotoImage (pas de .GIF dans le coin).
    Je n'ai pas le temps de tester plus cet am.
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  7. #7
    Expert confirmé
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    4 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 4 062
    Par défaut
    Je viens de faire le test sous Windows
    C'est peut-être là le problème

    Citation Envoyé par doc
    alpha=
    (Windows, Mac) Controls window transparency. 0.0 means fully transparent, 1.0 means fully opaque. This isn’t supported on all systems; where not supported, Tkinter always uses 1.0. Note that in this release, this attribute must be given as “-alpha”.

Discussions similaires

  1. Réponses: 1
    Dernier message: 23/06/2015, 18h13
  2. Images qui se baladent dans un rapport
    Par xavierdestev dans le forum Tableaux - Graphiques - Images - Flottants
    Réponses: 2
    Dernier message: 26/12/2013, 17h09
  3. Détecter ce qui se passe sur le bureau
    Par Apprenti-Programmeur dans le forum Général Java
    Réponses: 1
    Dernier message: 17/02/2009, 07h22
  4. pc qui fige arrivé sur le bureau
    Par topino dans le forum Windows 2000/Me/98/95
    Réponses: 2
    Dernier message: 06/05/2008, 09h25
  5. [Drole] petit animal qui se baladent sur les fenetres Windows
    Par Dsphinx dans le forum Autres Logiciels
    Réponses: 4
    Dernier message: 22/12/2006, 14h40

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