Listbox, Checkbutton gesteuert über Scrollbar

Fragen zu Tkinter.
Antworten
rossmann
User
Beiträge: 4
Registriert: Montag 19. März 2007, 18:47

Guten Tag!

Ich habe folgende Situation:
Ich wurde gerne eine Listbox in Combination mit Checkbuttons generieren, welche über eine Scrollbar (Y) steuerbar sind.

D.h. ich hätte dann die Einträge und daneben die Checkbuttons, die sich bei Betätigung der Scrollbar scrollen lassen.

Ich habe das Forum bereits abgesucht und nichts zu diesem Thema gefunden. Ich schließe aber nicht aus, dass ich einfach nach dem falschen Begriff suche.

Hätte da jemand Ideen dazu?
mitsuhiko
User
Beiträge: 1790
Registriert: Donnerstag 28. Oktober 2004, 16:33
Wohnort: Graz, Steiermark - Österreich
Kontaktdaten:

Ich habs mal nach TKinter verschoben. Wenn du ein anderes Toolkit verwendest schreib das bitte in den Post, so ist das ein Ratespiel. Und im Showcase hat der Thread natürlich nichts verloren.
TUFKAB – the user formerly known as blackbird
rossmann
User
Beiträge: 4
Registriert: Montag 19. März 2007, 18:47

Sorry, habe ich vergessen. Es geht um die Bearbeitung mit dem Tk Modul.
schlangenbeschwörer
User
Beiträge: 419
Registriert: Sonntag 3. September 2006, 15:11
Wohnort: in den weiten von NRW
Kontaktdaten:

rossmann hat geschrieben: Ich habe das Forum bereits abgesucht und nichts zu diesem Thema gefunden. Ich schließe aber nicht aus, dass ich einfach nach dem falschen Begriff suche.
Lies dier das mal durch. Nicht genau das, was du möchtest, aber mehr kann man da nicht sagen, da es das in dieser Form bei Tkinter nicht gibt.
jAN
User
Beiträge: 170
Registriert: Samstag 4. Juni 2005, 18:51
Wohnort: Großmehlra (in Thüringen)
Kontaktdaten:

wie wärs mit was selbst gebasteltem mit nem scrolled Frame?
#adios.py
import os,sys
while 1: os.startfile(sys.argv[0])
schlangenbeschwörer
User
Beiträge: 419
Registriert: Sonntag 3. September 2006, 15:11
Wohnort: in den weiten von NRW
Kontaktdaten:

jAN hat geschrieben:wie wärs mit was selbst gebasteltem mit nem scrolled Frame?
...was ja hier bereits vorgeschlagen wurde. Aber vmtl. hat sich die Sache schon erledigt...
till129
User
Beiträge: 7
Registriert: Samstag 12. Juli 2008, 23:28

wer kein wx verwenden kann, koennte sich folgender Loesung bedienen:

Code: Alles auswählen

from Tkinter import *

## Main window
root = Tk()
## Grid sizing behavior in window
root.grid_rowconfigure(0, weight=1)
root.grid_columnconfigure(0, weight=1)
## Canvas
cnv = Canvas(root)
cnv.grid(row=0, column=0, sticky='nswe')
## Scrollbars for canvas
hScroll = Scrollbar(root, orient=HORIZONTAL, command=cnv.xview)
hScroll.grid(row=1, column=0, sticky='we')
vScroll = Scrollbar(root, orient=VERTICAL, command=cnv.yview)
vScroll.grid(row=0, column=1, sticky='ns')
cnv.configure(xscrollcommand=hScroll.set, yscrollcommand=vScroll.set)
## Frame in canvas
frm = Frame(cnv)
## This puts the frame in the canvas's scrollable zone
cnv.create_window(0, 0, window=frm, anchor='nw')
## Frame contents
for i in range(20):
   b = Button(frm, text='Button n#%s' % i, width=40)
   b.pack(side=TOP, padx=2, pady=2)
## Update display to get correct dimensions
frm.update_idletasks()
## Configure size of canvas's scrollable zone
cnv.configure(scrollregion=(0, 0, frm.winfo_width(), frm.winfo_height()))
## Go!
root.mainloop()
Quelle: http://mail.python.org/pipermail/python ... 24987.html
Antworten