Radiobuttons in mein programm
Verfasst: Freitag 19. April 2013, 08:40
Hallo liebe Community
ich komme mal gleich zum 'sachlichen'
ich habe mit tkinter bereits ene csv datei ausgelesen und verschiedene spalten in eine Tabelle geschrieben
könnt ihr mir sagen wie ich dort einen radiobutton hinbekomme??
Grüße Popelnase
ich komme mal gleich zum 'sachlichen'
ich habe mit tkinter bereits ene csv datei ausgelesen und verschiedene spalten in eine Tabelle geschrieben
Code: Alles auswählen
from Tkinter import *
master = Tk()
v = StringVar()
class MultiListbox(Frame):
def __init__(self, master, lists):
Frame.__init__(self, master)
self.lists = []
for l,w in lists:
frame = Frame(self); frame.pack(side=LEFT, expand=YES, fill=BOTH)
Label(frame, text=l, borderwidth=1, relief=RAISED).pack(fill=X)
lb = Listbox(frame, width=w, borderwidth=0, selectborderwidth=0,
relief=FLAT, exportselection=FALSE)
lb.pack(expand=YES, fill=BOTH)
self.lists.append(lb)
lb.bind('<B1-Motion>', lambda e, s=self: s._select(e.y))
lb.bind('<Button-1>', lambda e, s=self: s._select(e.y))
lb.bind('<Leave>', lambda e: 'break')
lb.bind('<B2-Motion>', lambda e, s=self: s._b2motion(e.x, e.y))
lb.bind('<Button-2>', lambda e, s=self: s._button2(e.x, e.y))
frame = Frame(self); frame.pack(side=LEFT, fill=Y)
Label(frame, borderwidth=1, relief=RAISED).pack(fill=X)
sb = Scrollbar(frame, orient=VERTICAL, command=self._scroll)
sb.pack(expand=YES, fill=Y)
self.lists[0]['yscrollcommand']=sb.set
def _select(self, y):
row = self.lists[0].nearest(y)
self.selection_clear(0, END)
self.selection_set(row)
return 'break'
def _button2(self, x, y):
for l in self.lists: l.scan_mark(x, y)
return 'break'
def _b2motion(self, x, y):
for l in self.lists: l.scan_dragto(x, y)
return 'break'
def _scroll(self, *args):
for l in self.lists:
apply(l.yview, args)
def curselection(self):
return self.lists[0].curselection()
def delete(self, first, last=None):
for l in self.lists:
l.delete(first, last)
def get(self, first, last=None):
result = []
for l in self.lists:
result.append(l.get(first,last))
if last: return apply(map, [None] + result)
return result
def index(self, index):
self.lists[0].index(index)
def insert(self, index, *elements):
for e in elements:
i = 0
for l in self.lists:
l.insert(index, e[i])
i = i + 1
def size(self):
return self.lists[0].size()
def see(self, index):
for l in self.lists:
l.see(index)
def selection_anchor(self, index):
for l in self.lists:
l.selection_anchor(index)
def selection_clear(self, first, last=None):
for l in self.lists:
l.selection_clear(first, last)
def selection_includes(self, index):
return self.lists[0].selection_includes(index)
def selection_set(self, first, last=None):
for l in self.lists:
l.selection_set(first, last)
if __name__ == '__main__':
meineDatei=raw_input('Datei:')
import csv
reader=csv.reader(open(meineDatei, 'rb'), delimiter=';')
master.geometry('1366x768')
Label(master, text='Überschrift').pack()
mlb = MultiListbox(master, (('1', 30), ('2', 5), ('3', 30), ('4', 5), ('5', 1), ('6', 5), ('7', 10), ('8', 5)))
##for i in range (130):
tmp=[]
for row in reader:
#print row
mlb.insert(END,(str(row[6]),
str(row[1]),
str(row[7]),
str(row[2]),
str(row[14]),
str(row[16]),
str(row[22]),
#hier soll ein Radiobutton hin
))
tmp.append(row)
mlb.pack(expand=YES,fill=BOTH)
f = open('test.csv','w')
f.write('1;2;3;4;5;6;7;8')
print tmp
for row in tmp:
f.write('\n' + row[6] + ';' + row[1] + ';' + row[7] + ';' + row[2] + ';' + row[14] + ';' + row[16] + ';' + row[22] )
f.close()
master.mainloop()
Grüße Popelnase