#!/bin/env python
# -*- coding: utf-8 -*-
checkNames = ['První', 'Druhý', 'Třetí', 'Čtvrtý', 'Pátý']
# TK VARIANTA ############################################################
#
import Tkinter as tk #
#
# obsluha udalostí ------------------------------------------------------#
#
checks = [] #
def printStatus(): #
global checks #
for name, status in checks: #
if status.get(): #
print name, "je zatžen." #
else: #
print name, "není zatržen." #
#
# vytvoření GUI ---------------------------------------------------------#
#
root = tk.Tk() #
#
frame = tk.Frame(root) #
frame.pack() #
#
for name in checkNames: #
var = tk.IntVar() #
checks.append([name, var]) #
widget = tk.Checkbutton(frame, text=name, variable=var) #
widget.pack() #
#
pButton = tk.Button(frame, text="Tiskni výsledky", command=printStatus) #
pButton.pack() #
#
# čekání na událost -----------------------------------------------------#
#
root.mainloop() #
#
#######################################################################
# GTK VARIANTA ###########################################################
#
import gtk #
#
# obsluha udalostí ------------------------------------------------------#
#
def printStatus(button, checks): #
for check in checks: #
if check.get_active(): #
print check.get_label(), "je zatržen." #
else: #
print check.get_label(), "není zatržen." #
#
# vytvoření GUI ---------------------------------------------------------#
#
vbox = gtk.VBox() #
#
checks = [ gtk.CheckButton(label=name) for name in checkNames ] #
for check in checks: #
vbox.pack_start( check ) #
#
qButton = gtk.Button( label="Vytiskni stav" ) #
qButton.connect( 'clicked', printStatus, checks ) #
vbox.pack_start(qButton) #
#
win = gtk.Window() #
win.connect( 'destroy', lambda x: gtk.main_quit() ) #
win.add(vbox) #
win.show_all() #
#
# čekání na událost -----------------------------------------------------#
#
gtk.main() #
#
#######################################################################