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 :

Après exportation en .exe, la fenêtre n'a plus la même taille.


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
    Janvier 2016
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2016
    Messages : 41
    Par défaut Après exportation en .exe, la fenêtre n'a plus la même taille.
    Bonsoir,

    J'ai créé un programme utilisant Tkinter et je l'ai exporté en .exe grâce à cx_freeze.
    Le problème, c'est que quand je lance l'exe obtenu, la fenêtre est disproportionnée !
    Deux screens pour comprendre :
    Comment ça devrait être:
    Nom : 1.PNG
Affichages : 603
Taille : 14,8 Ko
    Comment c'est :
    Nom : 2.PNG
Affichages : 477
Taille : 29,7 Ko

    Voilà. En revanche, quand je fais un clic droit sur le fichier .exe > Propriétés > Compatibilité et que je coche la case "Désactiver la mise à l'échelle pour les résolutions élevées", la fenêtre s'affiche correctement.
    Je pensais que le problème pouvait venir de Windows 10, mais j'ai vérifié avec Seven, et c'est pareil (en revanche, sur Seven, la case "Désactiver..." est grisée).

    A noter que j'ai bien précisé la taille de la fenêtre dans le script (1280x720), et que les résolutions des deux PCs sur lesquels j'ai essayé étaient plus grandes (1600x900 et 1920x1080).

    Que dois-je faire ?

    Merci par avance !

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 748
    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 748
    Par défaut
    Citation Envoyé par ColChope Voir le message
    A noter que j'ai bien précisé la taille de la fenêtre dans le script (1280x720), et que les résolutions des deux PCs sur lesquels j'ai essayé étaient plus grandes (1600x900 et 1920x1080).

    Que dois-je faire ?
    Montrer comment vous avez codé cela?

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

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2016
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2016
    Messages : 41
    Par défaut
    Tout simplement avec fenetre.geometry("1280x720"), fenetre étant le nom du Tk().

  4. #4
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 748
    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 748
    Par défaut
    Citation Envoyé par ColChope Voir le message
    Tout simplement avec fenetre.geometry("1280x720"), fenetre étant le nom du Tk().
    Dans les images que vous montrez, ce n'est pas la fenêtre principale qui pose problème mais comment les fenêtres placées à l'intérieur occupent l'espace disponible.
    Et çà c'est le boulot des "geometry manager" utilisés (et que vous ne montrez pas).

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

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2016
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2016
    Messages : 41
    Par défaut
    Alors, je définis l'emplacement de tous mes objets avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    nomde'objet.place(x=50, y=50)
    (50 étant un exemple).
    Pour la taille de la zone de texte, j'ai tout simplement définis sa hauteur et sa largeur (pas en pixel mais en ligne!) quand je l'ai créée:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Text = Text(fenetre, width="86", height="30")
    Voilà, après je ne vais pas vous montrer tout le script parce qu'il est beaucoup trop long :p

  6. #6
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 748
    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 748
    Par défaut
    Les geometry manager .pack et .grid ont été inventés pour ne pas à avoir à gérer soi-même "ce qui reste à remplir".
    Avec .place, c'est à vous de le faire et prendre en compte les réalités physiques des différents écrans sur lesquelles va tourner votre application.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 14/06/2013, 11h10
  2. Exporter un .exe vers un autre ordinateur
    Par ben_ghost dans le forum Visual C++
    Réponses: 16
    Dernier message: 12/07/2006, 15h39
  3. actualiser page après validation formulai dans autre fenêtre
    Par allowen dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 05/01/2006, 16h02
  4. [FLASH MX2004] Ouvrir un exe sans fenêtre batch
    Par daner06 dans le forum Flash
    Réponses: 4
    Dernier message: 08/11/2005, 18h39
  5. largeur colonne excel après export
    Par scully2501 dans le forum Access
    Réponses: 6
    Dernier message: 18/06/2005, 10h52

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