Tlačítko a proměnné – Python – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Tlačítko a proměnné – Python – Fórum – Programujte.comTlačítko a proměnné – Python – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
27. 2. 2009   #1
-
0
-

Mám problém s tlačítkem procházet, pomocí:

 #Definice funkce kliknutí na tlačítko procházet

def vyberSouboru():
import tkFileDialog
cesta=tkFileDialog.askopenfilename()


tohoto nadefinuji, aby se cesta z askopenfile uložila do proměnné "cesta" - ona se tam uloží a je tam až po dobu než se program rozjede dál, tzn. že když dám ihned po otevření funkci print cesta se vytiskne, ale po vytisknutí se okamžitě smaže a už ji nemůžu dále používat po stisknutí na tlačítko OK =)

Nahlásit jako SPAM
IP: 78.102.16.–
Reklama
Reklama
Blujacker
~ Moderátor
0
Grafoman
27. 2. 2009   #2
-
0
-

Tak tvůj problém nechápu. Proměnná se rozhodně po "vytisknutí" pomocí print rozhodně nesmaže... Následující kod by měl fungovat:



#-*- coding: utf-8 -*-
from Tkinter import*
import tkFileDialog
okno = Tk()
label = Label()
label.pack()
def vyber():
cesta=tkFileDialog.askopenfilename()
print cesta
label["text"] = cesta
Button(text="vyber", command=vyber).pack()
mainloop()

PS: import patří na začátek programu, ne do funkcí (v py2.x to funguje, ale tuším že v py3000 by ti už import uvnitř funkce neprošel...

Nahlásit jako SPAM
IP: 206.77.0.–
Navštivte server Matematika pro každého
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š
27. 2. 2009   #3
-
0
-

Ano, ten import tam byl jen dočasně než ho dám na začátek kvůli testu, o to mi teď nejde, jde mi o to že ta proměnná řekněme cesta... si do sebe nabere C:\program files\hry\neco.txt... potom to ihned vytiskne zavre se okno pro vybrani souboru a uz ta promenna neni nadefinovana a program s ni neumi dale pracovat


Exception in Tkinter callback

Traceback (most recent call last):
File "C:\Python26\lib\lib-tk\Tkinter.py", line 1410, in __call__
return self.func(*args)
File "C:\Python26\realmchanger.py", line 40, in volanafunkce
soubor=file(cesta,"w")
NameError: global name 'cesta' is not defined


Edit: Tak už jsem to vyřešil ;)

Nahlásit jako SPAM
IP: 78.102.16.–
Blujacker
~ Moderátor
0
Grafoman
27. 2. 2009   #4
-
0
-

Ale samozřejmě že ta proměnná je stále definována. V tom mém příkladu se vždy dokonce zobrazí do komponenty Label...
Tvuj problém bych viděl spíš na globální/lokální proměnnou

Nahlásit jako SPAM
IP: 66.68.54.–
Navštivte server Matematika pro každého
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š
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 23 hostů

Podobná vlákna

Tlačítko — založil 12dawe34

Tlačítko C — založil Fíkus

Tlacitko so)t — založil gerry

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý