[python]Problème de taille de fenêtre

Résolu
lonewolfs Messages postés 51 Statut Membre -  
sebsauvage Messages postés 33284 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

Je mets en place un petit programme destiné à faire un instantanée graphique des connections en cours sur le pc ainsi que les executables en cause.

Pour cela,j'utilise python et le programme fonctionne sauf que la fenetre est très grande selon les connections et que mes connaissances limités ne m'ont pas permis de trouver une solution de défilement pour l'affichage ce qui me permettrait de fixer la taille de ma fenêtre.

j'en appelle donc a votre aide et vous en remercie par avance

Lonewolf

from Tkinter import *
import os

#Création de la fenêtre
fen1=Tk()
#Mise en place de la commande dos
a=os.popen("netstat -bn")
#Récupération des données
b=a.read()
a.close()
#Affichage des variables dans un label
ent1=Label(fen1,text=b)
ent1.pack()
#Mise en place d'une sortie propre
bou=Button(fen1,text='Quitter',command=fen1.destroy)
bou.pack()
fen1.mainloop()
Configuration: Windows XP
Firefox 2.0.0.12

7 réponses

  1. lonewolfs Messages postés 51 Statut Membre 5
     
    Bonjour,

    Petit up !

    Personne n'a d'idée ?

    Amitiés

    Lonewolfs
    1
  2. lonewolfs Messages postés 51 Statut Membre 5
     
    Bonjour et merci sebsauvage,

    Bien vu, bien lu... mais comme ceci je perd la moitié de mes infos ou bien alors je dois agrandir ma fenetre pour voir le reste.

    Je cherchais a avoir une barre de défilement sur la fenetre principale, ce qui me permettrait de fixer ma taille de fenetre et d'avoir accès a toutes les infos en déroulant ma barre.

    Problème, je ne maitrise pas bien du tout scrollbar et j'ai beau chercher je n'ai trouvé le moyen de l'utiliser qu'avec une listbox, ce qui n'est pas intéressant dans mon cas.

    Merci quand meme de t'interesser a mon cas sebsauvage et de l'aide que tu veux bien m'apporter.

    Ps : au fait ton site est très bien, j'etais déjà allé le visiter.

    Lonewolfs
    0
  3. sebsauvage Messages postés 33284 Date d'inscription   Statut Modérateur Dernière intervention   15 684
     
    J'utilise les Pwm (Python Megawidgets) qui s'ajoutent à Tkinter.
    Ils contiennent un objet Pmw.ScrolledFrame qui s'occupera d'ajouter des barres pour scroller si nécessaire.
    http://pmw.sourceforge.net/

    Exemple:
            sf = Pmw.ScrolledFrame(self._parent)
            sf.grid(column=0,row=1,stick='news',columnspan=2)
            self.imageLabel = Tkinter.Label(sf.interior())
            self.imageLabel.pack(fill='both', expand=1)


    Ne pas oublier d'utiliser sf.interior() comme parent pour tout ce que tu veux ajouter dedans.
    0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. lonewolfs Messages postés 51 Statut Membre 5
     
    Merci encore sebsauvage,

    Je vais regarder ceci de plus près pour voir ce que je peux en faire.

    Merci encore

    Lonewolf
    0
  6. lonewolfs Messages postés 51 Statut Membre 5
     
    C'est bon, j'ai resolu ceci en utilisant une scrollbarText

    voici le code final. Merci encore

    # -*- coding: cp1252 -*-
    from Tkinter import *
    from ScrolledText import *
    import os
    
    #Création de la fenêtre
    fen1=Tk()
    fen1.title('Connexions Actives')
    #Mise en place de la commande dos
    a=os.popen("netstat -bn")
    
    #Récupération des données
    b=a.read()
    a.close()
    print b
    #Affichage des variables dans un label
    ent1=Label(fen1,text="Soft de Stéphane Pillot et de Lespinx")
    ent1.pack()
    
    #-Création de la zone Texte
    texte = ScrolledText(fen1, width = 75, height = 35, font = "Arial 10",
    relief = "groove")
    texte.pack()
    #Ecriture des données
    texte.config(state = NORMAL)    #Permettre l'écriture
    texte.insert("1.0", b)          #Gestion de l'insertin des lignes
                                            #1 = 1ere ligne  0 = 1er caractere de la ligne
    texte.config(state = DISABLED)  #Interdire les modifications
    
    
    #Mise en place d'une sortie propre
    bou=Button(fen1,text='Quitter',command=fen1.destroy)
    bou.pack()
    fen1.mainloop()
    
    0
  7. sebsauvage Messages postés 33284 Date d'inscription   Statut Modérateur Dernière intervention   15 684
     
    De rien !

    Merci du retour.
    0