wxpython : placement

wxpython : placement - Python - Programmation

Marsh Posté le 12-05-2004 à 14:11:19    

Bonjour,  
il y en qui utilisent wxpython ?
je voudrais alligner 2 boutons et 2 textes horizontalement mais je comprends rien dans aux exemples qui utilisent les sizers ...
Avez vous des bons sites sur ce sujet ou des exemples de code svp ?
Merci.

Reply

Marsh Posté le 12-05-2004 à 14:11:19   

Reply

Marsh Posté le 12-05-2004 à 14:23:28    

Reply

Marsh Posté le 12-05-2004 à 14:42:04    

vi c'est bien la page que j'avais vu, mais qui franchement ne m'inspire pas .
j'ai éssayé ceci mais les textes n'aparaissent pas :


class MyFrame(wxFrame):
    def __init__(self, parent, ID, title):
        wxFrame.__init__(self, parent, ID, title,
                         wxDefaultPosition, wxSize(400, 250))
        self.CreateStatusBar()
        t2=wxStaticText(self,-1,"""Répertoire source""" )
        b2 = wxButton(self, -1, "...", (30,30))
        self.Bind(EVT_BUTTON, self.selectSource, b2)
         
        t1=wxStaticText(self,-1,"""fichier liste de destination""" )
        b1= wxButton(self, 10, "...", (10, 10))
        self.Bind(EVT_BUTTON, self.selectDest, b1)
               
 
        box = wxBoxSizer(wxHORIZONTAL)
        box.Add(t2, 0,wxEXPAND)
        box.Add(b2, 0,wxEXPAND)
        box.Add(t1, 0,wxEXPAND)
        box.Add(b1, 1,wxEXPAND)
        self.SetAutoLayout(True)
        self.SetSizer(box)


Message édité par kayasax le 12-05-2004 à 14:42:25
Reply

Marsh Posté le 12-05-2004 à 14:55:21    

ah la reponse est ptetre dans les demo de wxpython :
"If you plan on using Sizers and auto-layout features, be aware that the Frame
class lacks the ability to handle these features unless it contains a Panel.
The Panel has all the necessary functionality to both control the size of
child components, and also communicate that information in a useful way to
the Frame itself."

Reply

Marsh Posté le 19-05-2004 à 15:48:29    

bon ce coup ci c'est aligné mais j'ai 2 pbs :
- les staticText ne s'affiche pas à l'écran (bien que la place semble bien réservée)
- la taille du Panel n'evolue pas avec le redimensionnement de la fenêtre .
 
quelqu'un peut'il m'expliquer pourquoi ?
Merci  
 


class MyFrame(wxFrame):
    def __init__(self, parent, ID, title):
        wxFrame.__init__(self, parent, ID, title, wxDefaultPosition, wxSize(600, 350))
....
        self.pan=wxPanel(self,-1,)
        self.sizer=wxBoxSizer(wxHORIZONTAL)
 
        self.lab1="""Répertoire Source"""
        self.t2=wxStaticText(self.pan,-1,self.lab1,style=wxALIGN_LEFT )
        self.b2 = wxButton(self.pan, -1, "...", (10,10))
        self.Bind(EVT_BUTTON, self.selectSource, self.b2)
        self.t1=wxStaticText(self.pan,-1,"""fichier liste de destination""" )
        self.b1= wxButton(self.pan, -1, "...", (10, 10))
        self.Bind(EVT_BUTTON, self.selectDest, self.b1)
 
 
        self.t2.SetLabel("""Répertoire source""" )
 
        self.sizer.Add(self.t2,1,wxEXPAND)
        self.sizer.Add(self.b2,1,wxEXPAND)
        self.sizer.Add(self.t1,1,wxEXPAND)
        self.sizer.Add(self.b1,1,wxEXPAND)
         
        self.SetSizer(self.sizer)
        self.SetAutoLayout(1)
        self.sizer.Fit(self.pan)
 
        self.Show(1)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed