Nevim jak vy?e?it tla??tko k ukon?en? aplikace, kdy? m?m n?jakou aplikaci v Tkinteru. zkou?el sem nazev_okna.quit(), ale to funguje spravn? jen kdy? tu aplikaci p?evedu do .exe ,jinak se to kousne.
J??t? bych potřeboval v?d?t jak ud?lat: m?m hlavn? okno aplikace kde je tla??tko co spou?t? nov? podokno, kdy? na n?j kliknu tak se to okno objevi ale neni "v pop?ed?" nevím jak to nastavit aby to vyskakovalo jako "aktivn?" okno.
2 Geon:Kdy? si mi opravoval úkol ?.14 s prvo??sly tak si mi tam napsal do pozn?mky: "PRo? tzam nem?? for x in range(N): ? to while je tam celkem zbyte?n?..." nevím jak to mysl?? tak pros?m o vysv?tlen? :)
Fórum › Python
Dotaz k Tkinteru
[i]Nevim jak vyřešit tlačítko k ukončení aplikace, když mám nějakou aplikaci v Tkinteru. zkoušel sem nazev_okna.quit(),[/i]
okno.destroy()
[i]Ještě bych potřeboval vědět jak udělat: mám hlavní okno aplikace kde je tlačítko co spouští nové podokno, když na něj kliknu tak se to okno objevi ale neni "v popředí" nevím jak to nastavit aby to vyskakovalo jako "aktivní" okno.[/i]
okno.focus_set()
okno.transient()
okno.grab_set()
[i]2 Geon:Když si mi opravoval úkol č.14 s prvočísly tak si mi tam napsal do poznámky: "PRoč tzam nemáš for x in range(N): ? to while je tam celkem zbytečné..." nevím jak to myslíš tak prosím o vysvětlení [/i]
no, máš tam přeci: for x in cisla: ... a předtím si celkem zbytečně vytváříš "cisla" jako seznam cisel od 0..N pomocí while. To by slo přeci udělat:
for x in range(N): ...
nebo efektivněji:
for x in range(N/2+1):
;-)
Jo to aktivn? vstupn? pole sem vy?e?il, s t?m p??kazem na ukon?en? si mi pomohl tak?e d?kuji mnohokr?t. Ale to
for x in range(N)
tak to sem zkou?el u? p?edt?m ale n?jak se mu to nel?b? tak proto sem tam vytv??el ten seznam ??sel.
A m?m je?t? nov? dotaz(ur?it? si r?d :D):jak p?i?adit k Buttonu kl?vesu, aby po stisku kl?vesy se vykonola to sam? jako bych na to klikl my??? Nem??u na to p?ij?t v?dy to nap??e chybu.
def test():
N=int(vstup.get()) # zm?na
if N>1000000:
import tkMessageBox
tkMessageBox.showwarning("To je MOC!","Zadane cislo je prilis vysoke")
else:
for x in range(2,N): # zm?na
if N%x==0:
jeprvocislo=False
...........
[i]přirazení klávesy k Buttonu [/i]
spíš se kl?vesy přiřazují k Entry nebo k hlvnímu oknu, protože pokud ho přiřadíš k Buttonu, bude klávesa fungovat, jen když tlačítko bude mít focus ;-)
jinak se to dělá pomocí metody bind ...ukaž kod a co ti to píše zachybu, ale nejdřív se podívej na 21. lekci a na http://www.tkintercz.wz.cz/tkinter-events-and-bindings.htm
chlapi, nebojte se zakl?dat nov? t?mata. JE to p?ehledn?j??. TAky se snad nau??te volit lep?? n?zvy t?mat nez "pomoc s Tkinter" :-)
Hezk? ?e?en? bohu?el nezn?m, i kdy? si mysl?m, ?e existuje. Zn?m toto:
1. listbox mus? m?t kl?vesnicov? focus. Nejl?pe snad - kdy? na n?ho najede? tak ho z?sk? a kdy? z n?j odede? tak ho ztrat? (z?sk? ho n?kco jin?). A pak bude MouseWheel fungovat norm?ln?, dokonce i kurzorov? ?ipky + PageUp/DOwn.
listbox.bind("<Enter>", zaostrit)
listbox.bind("<Leave>", odostrit)
Asi nejde, aby focus m?lo nic, tak?e mus?? v odostrit focus n?komu p?edat (t?eba Framu). A nap?.:
def zaostrit(udalost):
udalost.widget.focus_set()
2. Dal?? mo?nost je, ?e focus bude po??d sledovat my?:
frame.tk_focusFollowsMouse()
, ale to ti bude b?hat po v?ech widgetech takov? ta zna?ka, ?e m? focus, leda?e bys u v?eho zm?nil toto chov?n?.
Snad to pomohlo.
Ale dalo by se to celkem bez problemu naprogramovat:
from Tkinter import*
def priRolovani(udalost):
listbox.yview(SCROLL,-(udalost.delta/listbox.size()),"units")
okno=Tk()
scrollbar=Scrollbar()
scrollbar.pack(fill=Y,side=RIGHT)
listbox=Listbox(yscrollcommand=scrollbar.set)
listbox.pack()
scrollbar.config(command=listbox.yview)
for i in range(50):
listbox.insert(END,i)
def vstup(udalost):
okno.bind('<MouseWheel>', priRolovani)
def vystup(udalost):
okno.unbind('<MouseWheel>')
listbox.bind('<Enter>',vstup)
listbox.bind('<Leave>',vystup)
okno.mainloop()
Najdete zde články zabývající se matematikou základních a středních škol a databázi hlavolamů.
Pro vyzkoušení Vaš
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Textvariable v Tkinteru — založil Marek Kadlčík
Zarovnání v Tkinteru — založil maral
Tisk v Tkinteru — založil wickzig
Zavření okna ve tkinteru — založil pawlik
Ulozeni souboru v Tkinteru — založil
Moderátoři diskuze