Python 3 und Tix

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
baracuda
User
Beiträge: 21
Registriert: Mittwoch 5. November 2008, 13:08

Python 3 und Tix

Beitragvon baracuda » Dienstag 13. Januar 2009, 15:01

Hi!

Mal eine relativ unkomplizierte Frage... ich werde aus der Tix-Dokumentation einfach nicht schlau!
Ich wollte mir die erweiterten Tkinter Widgets mal ansehen, und einen einfachen Fortschrittsbalken programmieren (wenn man von "programmieren" überhaupt reden darf):

Code: Alles auswählen

from tkinter import tix
root = tix.Tk()
bar = tix.Meter(root, value=0.0)


Damit hörts dann schon auf. Ich konnte zum Beispiel aus der Doku auch keine Liste der benötigten Parameter ausmachen.
Folgender Error-Code:

Code: Alles auswählen

Traceback (most recent call last):
  File "<pyshell#5>", line 1, in <module>
    bar = tix.Meter(root)
  File "C:\Python30\lib\tkinter\tix.py", line 1130, in __init__
    ['options'], cnf, kw)
  File "C:\Python30\lib\tkinter\tix.py", line 296, in __init__
    for k,v in cnf.items()[:]:
TypeError: 'dict_items' object is unsubscriptable


Danke im Voraus
Benutzeravatar
numerix
User
Beiträge: 2696
Registriert: Montag 11. Juni 2007, 15:09

Beitragvon numerix » Dienstag 13. Januar 2009, 15:24

Da hast du einen Bug in tix aufgespürt:
In Python 2.x hat dict.items() eine Liste zurückgeliefert, in Python 3.0 ist es aber eine "view" und da lässt sich die "slice-notation" nicht anwenden.

Also: Entweder Python 2.x verwenden oder den Fortschrittsbalken selbst implementieren (ist soooo schwierig auch nicht) oder tix an der Stelle reparieren ...
baracuda
User
Beiträge: 21
Registriert: Mittwoch 5. November 2008, 13:08

Beitragvon baracuda » Dienstag 13. Januar 2009, 15:26

Danke...

hoffentlich wirds bald gefixt.
Ich habe sowieso das Gefühl, dass Python 3 noch nicht bei allen so angekommen ist. Ich habe mir überlegt, auch mal PyGTK zu verwenden.
Aber das funktioniert bis jetzt auch nur mit 2.x .

lg
BlackJack

Beitragvon BlackJack » Dienstag 13. Januar 2009, 16:10

Das Gefühl dürfte begründet sein. Ich bin immer noch bei Python 2.5 und das wird sich so schnell auch nicht ändern. Bis zum Jahresende vielleicht 2.6 -- mal sehen.

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder