URO Lesson 5

1. Pokračujte v návrhu a práci na GUI evidenci osob (hledání, zadávání, filtrování), zadání berte podle domluvy na cvičení.

Prezentace [ cviceni_5.pdf ]       [ okna.zip ]

2. Zaměřte se na další prvky (Menu, více oken, informační okna apod.)

 

import tkMessageBox

def About():
    tkMessageBox.showinfo(“Say Hello”,“Hello World”)

showinfo(), showwarning(), showerror (), askquestion(), askokcancel(), askyesno(), askretrycancel ()

3.  callback

def callback(f, *a):
“””
Vraci funkci f s nastavenym parametrem a.
Tato funkce umi osetrit i vice nez jeden parametr.
Pouziti:
callback(funkce, arg1, arg2, …, argn )
“””
return lambda: f(*a)

command=callback(self.vypis, “text”)

4. Okno

root=Tk()
bu=Button(root, text=”Tlačítko”)
bu.pack()

other = Toplevel()
other.resizable(width=FALSE, height=FALSE)
other.title(‘Foto’)
bu=Button(other, text=”Konec”)
bu.pack()

5. Matematické operace

from math import *
a=”50″
b=”10″
op=”+”
c=eval(a+op+b)
print (c)

6. Dialogy

import tkFileDialog
soubor  = tkFileDialog.askopenfile(
parent=root,
title=’Vyberte soubor’,
filetypes=[(‘all files’, ‘.*’),(‘gif files’, ‘*.gif’)])
if soubor != None:
self.other = Toplevel()
#nazev souboru soubor.name

 

import tkColorChooser
(rgb, hx) = tkColorChooser.askcolor()
self.frame.config(bg=hx)

6. Minimální velikost okna

root.update()
# now root.geometry() returns valid size/placement
root.minsize(root.winfo_width(), root.winfo_height())

root.protocol( “WM_DELETE_WINDOW”, my_function )

root.bind(‘<Shift-E>’, self.pressedCmdE)
root.bind(‘a’, self.pressedCmdE)

root.wm_attributes(‘-alpha’, 0.5)