Ich bin ziemlich neu in Python und ich würde gerne eine SingleChoiceDialog Box mit einer Liste von Zeichenfolgen aus einer SQLite-Abfrage zeigen, aber ich mache etwas falsch und die Liste in der Box zeigt nur die letzte des Wertes der Variablenliste.Wie man richtig wx.SingleChoice in Python verwendet
Die Abfrage:
sql = u"select person.name from person"
c.execute(sql)
for row in c.execute(sql):
z = list(row)
Der Dialog:
def whatusr(parent=None, message='', default_value=''):
dlg = wx.SingleChoiceDialog(
self, "Who?", 'The Caption',
z,
wx.CHOICEDLG_STYLE
)
if dlg.ShowModal() == wx.ID_OK:
print 'You selected: %s\n' % dlg.GetStringSelection()
dlg.Destroy()
Als ich dies ausführen, wird das Dialogfeld zeigt nur den letzten Wert der Liste und nicht die ganze Liste. Ich denke, das ist, weil das Dialogfeld möchte, dass ich eine andere Form der Liste habe. Meine Liste z = list(row)
gibt den Wert als: [a], [b], [c], ..
aus, aber das Dialogfeld erwartet wahrscheinlich den Wert in diesem Formular: [a,b,c, ..]
. Kann mir jemand helfen? Vielen Dank.
Thx! z = [] für i in Statistik: z.append (i [0]) Arbeitete für mich. – jailolous