[Tutor PyCZ] přenos hodnoty proměnné z elementu GUI (Tkinter) do hlavního programu

Roman Miklos RMiklos na pss.sk
Pondělí Říjen 9 15:34:15 CEST 2006


Pri premennej v pouzi metodu get(), takze takto:

# zacatek programu
from Tkinter import *

okno = Tk() 
v = IntVar() 

Radiobutton(okno, text="Jedna", variable=v, value=1).pack(anchor=W) 
Radiobutton(okno, text="Dva", variable=v, value=2).pack(anchor=W) 

def callback():
  print v.get()

b = Button(okno, text="OK", command=callback)
b.pack()

mainloop() 
# konec programu



"Jan Šimůnek" <jsim na med.muni.cz> 
Sent by: tutor-bounces na py.cz
09.10.2006 15:18
Please respond to
Konference Tutor portalu PyCZ <tutor na py.cz>


To
tutor na py.cz
cc

Subject
[Tutor PyCZ] přenos hodnoty proměnné z elementu GUI (Tkinter) do hlavního 
programu






Potřeboval bych vytvořit nějaké udělátko, kde by se myší naťukaly hodnoty 
(vybrané z předem daných, takže níže uvedený radiobutton je přímo ideální 
volba), a pak se v hlavním programu přenesly do textového řetězce, který 
by 
se uložil. 

Když například použiju Radiobutton a Button, který by měl vypsat hodnotu 
proměnné nastavené tím Radiobuttonem:

# začátek programu
from Tkinter import * 
 
okno = Tk() 
v = IntVar() 
    
Radiobutton(okno, text="Jedna", variable=v, value=1).pack(anchor=W) 
Radiobutton(okno, text="Dva", variable=v, value=2).pack(anchor=W) 

def callback():
    print v

b = Button(okno, text="OK", command=callback)
b.pack()
 
mainloop() 
# konec programu

tak mi funkce callback pořád vypisuje (bez ohledu na to, jaký je stav 
Radiobuttonu) jen nedefinovanou proměnnou. Pokud za definicí nastavím v=0,
tak zase tato hodnota zůstává 0, bez ohledu na to, co se před zmáčknutím 
Buttonu dělo s Radiobuttonem. 
Očekával jsem, že po zmáčknutí Buttonu se budou vypisovat hodnoty 1 nebo 2 

podle toho, který Radiobutton je zmáčknutý (a že nedefinovaná nebo na 
původní 
hodnotu nastavená bude v jen před prvním zmáčknutím Radiobuttonu.

Zkoušel jsem i nadefinovat funkce "jedna"  a "dve", které by přidělily 
proměnné v příslušnou hodnotu a volat je z Radiobuttonu command=jedna, 
resp. 
command=dve - u příslušného knoflíku, ale ani to hodnotu v neovlivní.

Děkuji za případnou radu

Jan Šimůnek
_______________________________________________
Tutor mailing list
Tutor na py.cz
http://www.py.cz/mailman/listinfo/tutor


Mgr. Ing. Roman MIKLÓŠ 
Prvá stavebná sporiteľňa a.s. 
Bajkalská 30, P. O. Box 48 
829 48  Bratislava 25 
Tel.: +421/ 2 / 582 31 174 
Fax: +421/ 2 / 582 31 109 
------------- další část ---------------
HTML příloha byla odstraněna...
URL: http://www.py.cz/pipermail/tutor/attachments/20061009/cd60e73c/attachment.htm 


Další informace o konferenci Tutor