object has no attribute "size"

Plattformunabhängige GUIs mit wxWidgets.
Antworten
memel82
User
Beiträge: 4
Registriert: Mittwoch 22. Juli 2009, 13:38
Wohnort: Hamburg

Hallo,

was ist an dem Code falsch?

Der Debugger zeigt mir beharrlich:

module object has no attribute "size"

und zwar beim erzeugen der MyFrame Instanz: also bei zeile 47

Python-Version ist 2.6 und wx 2.8.8.1

dank und Gruß

Code: Alles auswählen

import pdb
import wx

pdb.set_trace()

class MyPanel(wx.Panel):
    
    def __init__(self, *args, **kwargs):
        
        wx.Panel.__init__(self, *args, **kwargs)
        self.create_controls()
        
        #self.SetSizerAndFit(Sizer)
        
    def create_controls(self):
        self.h_sizer = wx.BoxSizer(wx.HORIZONTAL)
        
        self.text = wx.StaticText(self, label="Filter:")
        self.edit = wx.TextCtrl(self, size=wx.size(250, -1))
        
        self.h_sizer.Add(text, 0,)
        self.h_sizer.AddSpacer((5,0))
        self.h_sizer.Add(edit, 1)
        
        self.SetSizer(self.h_sizer)
    
    
    def showadsi(self, event=None):
        pass
        

class MyFrame(wx.Frame):

    def __init__(self, *args, **kwargs):
    
        wx.Frame.__init__(self, *args, **kwargs)
        
        self.Panel = MyPanel(self)
        
        #self.Fit()
        

if __name__=='__main__':
    app=wx.App(False)
    
    frame = MyFrame(None, title="Python-AD-wx", size=(500,500))
    frame.SetIcon(wx.Icon('py.ico', wx.BITMAP_TYPE_ICO))
    frame.Center()
    frame.Show()
    
    app.MainLoop()
Benutzeravatar
Rebecca
User
Beiträge: 1662
Registriert: Freitag 3. Februar 2006, 12:28
Wohnort: DN, Heimat: HB
Kontaktdaten:

Ui, warum pdb? Auch ohne gibt's einen sehr hilfreichen Traceback!

Zu dem Fehler: Size, nicht size (hier koennte die dir-Funktion oder die Doku nuetzen...)! Ausserdem kannst du einfach ein Tupel uebergeben: size=(250, -1)
Offizielles Python-Tutorial (Deutsche Version)

Urheberrecht, Datenschutz, Informationsfreiheit: Piratenpartei
memel82
User
Beiträge: 4
Registriert: Mittwoch 22. Juli 2009, 13:38
Wohnort: Hamburg

pdb weil bei dem normalen gar keine meldung kam.

das size in zeile 47 groß schreiben hatte ich schon probiert.

ansonsten kann ich deine vorschläge erst morgen weiter testen

dank erstmal.
Benutzeravatar
HWK
User
Beiträge: 1295
Registriert: Mittwoch 7. Juni 2006, 20:44

Der Fehler liegt in Zeile 20!
Auch ohne pdb erfolgt eine Fehlermeldung. Es folgen dann aber noch Fehler in Zeile 22 und 24 (self vergessen).

MfG
HWK
memel82
User
Beiträge: 4
Registriert: Mittwoch 22. Juli 2009, 13:38
Wohnort: Hamburg

Zu dem Fehler: Size, nicht size
Der Fehler liegt in Zeile 20!
Auch ohne pdb erfolgt eine Fehlermeldung. Es folgen dann aber noch Fehler in Zeile 22 und 24 (self vergessen).
korrekt, :oops:

=> gelöst
Benutzeravatar
Rebecca
User
Beiträge: 1662
Registriert: Freitag 3. Februar 2006, 12:28
Wohnort: DN, Heimat: HB
Kontaktdaten:

memel82 hat geschrieben:pdb weil bei dem normalen gar keine meldung kam.
Sollte aber. Script aus der Kommandozeile gestartet? ([wiki]FAQ#Wie starte ich Skripte.3F[/wiki])
Offizielles Python-Tutorial (Deutsche Version)

Urheberrecht, Datenschutz, Informationsfreiheit: Piratenpartei
memel82
User
Beiträge: 4
Registriert: Mittwoch 22. Juli 2009, 13:38
Wohnort: Hamburg

Sollte aber. Script aus der Kommandozeile gestartet?
Ja, geht jetzt auch wieder. Keine Ahnung woran es lag, aber gestern ging die konsole einfach zu, ohne meldung.

danke nochmal für die hilfe :)
Antworten