[PIPython] da locale a globale - un po' lungo
Topomorto
topomorto
Mar 18 Gen 2005 16:27:37 CET
Ciao a tutti. Sono nuovo in python e mi sto studiando wxPython con
boa-constructor e non mi sembra malaccio.
Sto facendo un giochino per mia figlia che andrà a scuola a settembre, e
sono intenzionato a lasciare libere anche le sorgenti.
Le stesse le trovate (dalle 7.30 alle 22.30) all'indirizzo
ftp://62.94.102.202
user: python
password: pitone
Non giudicatelo male... è ancora tutto da sviluppare inclusa la grafica
aggiungendo immagini, funzioni ecc.....
Fatta la premessa ho un problema.
Col programmillo cambio il valore della variabile locale (in wxFrame1)
di self.punteggioframe1.
Ora vorrei portarmi il punteggio totalizzato a spasso per altri frame -
magari per dire qualcosa del tipo: brava, hai fatto 19 punti....- su un
altro frame
Suppongo che devo far diventare self.punteggioframe1 in variabile
globale....
Ne ho provate tante ma senza riuscire.... qualcuno può aiutarmi?
Ecco lo script talgiato perchè lungo, cmque le sorgenti le trovate dove
ho detto sopra.
Grazie
from wxPython.wx import *
from wxPython.lib.intctrl import *
from wxPython.lib.stattext import wxGenStaticText
from domande import domande
from risposte import risposte
numerodelledomande = len(domande)
def create(parent):
return wxFrame1(parent)
[wxID_WXFRAME1, wxID_WXFRAME1BT1, wxID_WXFRAME1BT2, wxID_WXFRAME1BT3,
wxID_WXFRAME1NUMERODOMANDA, wxID_WXFRAME1NUMRISP, wxID_WXFRAME1PUNTEGGIO,
wxID_WXFRAME1TESTOPUNTEGGIO, wxID_WXFRAME1TESTOSTATICO2,
wxID_WXFRAME1GENSTATICTEXT1,
] = map(lambda _init_ctrls: wxNewId(), range(10))
[wxID_WXFRAME1PUNTEGGIO] = map(lambda punti: wxNewId(), range(1))
[wxID_WXFRAME1GESTISCIITEMS0] = map(lambda _init_coll_Gestisci_Items:
wxNewId(), range(1))
[wxID_WXFRAME1FILEITEMS0] = map(lambda _init_coll_File_Items: wxNewId(),
range(1))
class wxFrame1(wxFrame):
#taglio.......
def _init_ctrls(self, prnt):
# generated method, don't edit
wxFrame.__init__(self, id=wxID_WXFRAME1, name='wxFrame1',
parent=prnt, pos=wxPoint(292, 334), size=wxSize(608, 342),
style=wxDEFAULT_FRAME_STYLE, title='Giulia impara a leggere')
self._init_utils()
##altro taglio........
self.bt1 = wxButton(id=wxID_WXFRAME1BT1, label='Bau', name='bt1',
parent=self, pos=wxPoint(136, 112), size=wxSize(99,
32), style=0)
self.bt1.SetBackgroundColour(wxColour(255, 255, 128))
self.bt1.SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, False,
'Comic Sans MS'))
EVT_BUTTON(self.bt1, wxID_WXFRAME1BT1, self.OnBt1Button)
###altro taglio
self.punteggio = wxIntCtrl(allow_long=False, allow_none=False,
default_color=wxBLACK, id=wxID_WXFRAME1PUNTEGGIO,
limited=True,
max=None, min=None, name='punteggio', oob_color=wxRED,
parent=self, pos=wxPoint(264, 200), size=wxSize(40, 34),
style=0,
value=0)
self.punteggio.Show(False)
self.punteggio.SetBackgroundColour(wxColour(255, 191, 255))
self.punteggio.SetFont(wxFont(12, wxSWISS, wxNORMAL, wxBOLD, False,
u'Comic Sans MS'))
self.punteggio.SetForegroundColour(wxColour(202, 0, 202))
self.punteggio.SetThemeEnabled(True)
self.punteggio.Enable(False)
self.punteggio.SetAutoLayout(True)
EVT_INT(self.punteggio, wxID_WXFRAME1PUNTEGGIO, self.OnPunteggioInt)
####altro taglio
def OnBt1Button(self, event):
self.puntrisp = self.numrisp.GetValue() + 1
self.numrisp.SetValue(self.numrisp.GetValue()+4)
self.ladomanda = self.numerodomanda.GetValue()+1
self.punteggioframe1 = self.punteggioframe1 +
risposte[self.puntrisp]
self.punteggio.SetValue(self.punteggioframe1)
self.bt1.SetLabel(risposte[self.numrisp.GetValue()])
if self.ladomanda < numerodelledomande:
self.testoStatico2.SetLabel(domande[self.ladomanda])
self.numerodomanda.SetValue(self.numerodomanda.GetValue()+1)
else:
self.testoStatico2.SetLabel('Gioco finito')
self.bt1.Show(False)
self.bt2.Show(False)
self.bt3.Show(True)
self.numrispt2 = self.numrisp.GetValue()+2
self.bt2.SetLabel(risposte[self.numrispt2])
self.testopunteggio.SetLabel('Il tuo punteggio attuale \xe8: '+
str(self.punteggioframe1) + ' Punti')
#####altro taglio
def __init__(self, parent):
self._init_ctrls(parent)
self.punteggioframe1 = 0
--
Topomorto... per una sentenza sbagliata :'(
Topomorto dice NO alla pena di morte... soprattutto la sua
More information about the Python
mailing list