abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 17:22 | IT novinky

    Multiplatformní hororová adventura Whispering Willows je na portále GOG.com zdarma, akce trvá do 6. října.

    Fluttershy, yay! | Komentářů: 0
    dnes 14:33 | Komunita

    Na čem aktuálně pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za září (YouTube).

    Ladislav Hagara | Komentářů: 0
    dnes 14:11 | Nová verze

    Byla vydána nová verze 1.50.0 sady nástrojů pro správu síťových připojení NetworkManager. Novinkám se v příspěvku na blogu NetworkManageru věnuje Fernando F. Mancera. Vypíchnout lze podporu nastavení veth (virtual ethernet) v nmtui.

    Ladislav Hagara | Komentářů: 0
    dnes 14:00 | Nová verze

    Byla vydána nová verze 24.1 linuxové distribuce Manjaro (Wikipedie). Její kódové jméno je Xahea. Ke stažení je v edicích GNOME, KDE PLASMA a XFCE.

    Ladislav Hagara | Komentářů: 2
    dnes 13:11 | Nová verze

    Mobilní Datovka, tj. svobodná aplikace pro přístup k datovým schránkám pro zařízení s operačním systémem iOS a Android, byla vydána v nové verzi 2.1.0. Nově je pro sestavení potřeba Qt 6.7.

    Ladislav Hagara | Komentářů: 1
    dnes 12:33 | IT novinky

    Přesně před 35 lety, 3. října 1989, byla vydána počítačová hra Prince of Persia. Jejím tvůrcem je Jordan Mechner.

    Ladislav Hagara | Komentářů: 4
    včera 14:44 | IT novinky

    Společnost PINE64 stojící za telefony PinePhone nebo notebooky Pinebook publikovala na svém blogu zářijový souhrn novinek. Po půl roce od předchozího. Vypíchnout lze nové desky StarPro64, Oz64 a Quartz64-Zero.

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | IT novinky Ladislav Hagara | Komentářů: 8
    včera 06:33 | Humor Ladislav Hagara | Komentářů: 6
    1.10. 23:22 | Komunita

    Společnost Nintendo zařízla projekt Ryujinx (Wikipedie), tj. open source emulátor herní konzole Nintendo Switch. Odstraněna byla stránka ke stažení i repozitář na GitHubu.

    Ladislav Hagara | Komentářů: 13
    Rozcestník

    Dotaz: tkMessageBox v Pythonu

    14.8.2011 17:35 Raada | skóre: 4
    tkMessageBox v Pythonu
    Přečteno: 198×
    Ahoj, Zajimalo by me, jesli oknu se zpravou vytvorenemu pomoci tkMessageBox lze nejak sebrat focus, aby toto okno bylo videt, ale dalo se klikat do jineho okna. Napr rekneme, ze mam platno a chci si klikanim na nej vypsat souradnice kliku. V mem prikladu to je mozne pouze az po uzavreni messageboxu. Ja bych potreboval, aby mohl klikat i kdyz je messagebox zobrazeny a v idealnim pripade navazat konec bindingu na zmizeni toho messageboxu (nejlip tak, ze na tlacitko navazu jinou funkci, nez jen zavreni toho okna se zpravou). Jde to? Nebo si musim napsat vlastni msgbox?

    Priklad:
    import Tkinter, tkMessageBox
    
    class Platno():
    
        def __init__(self,master):
            p=Tkinter.Canvas(width=100, height=100)
            p.grid(column=0, row=0)
            p.bind("Button-1",self.funkce)
    
            self.souradnice=[]
           
        def funkce(self,event):
            self.souradnice.append([event.x,event.y])
            print self.souradnice[-1][0],self.souradnice[-1][1]
    
    top=Tkinter.Tk()
    platno=Platno(top)
    tkMessageBox.showinfo("Info","Klikej a pak zmackni OK")
    top.mainloop()
    
    Dik za info:-)

    ps.: misto "Button-1" ma byt samozrejme <"Button-1">, ale editor to nejak nechce vzit:-(

    Řešení dotazu:


    Odpovědi

    Řešení 1× (Raada (tazatel))
    15.8.2011 09:04 martin
    Rozbalit Rozbalit vše Re: tkMessageBox v Pythonu
    A proč místo tkMessageboxu kterej bude mít asi focus pořád dokud ho neukončíš
    nepoužiješ klasický Toplevel.

    hodně zjednodušeně:

    import Tkinter
    
    class InfoW(Tkinter.Toplevel):
        def __init__(self):
            Tkinter.Toplevel.__init__(self)
            self.title('Info Window')
            self.geometry('100x30+0+0')
            self.lab = Tkinter.Label(self, text='')
            self.lab.pack()
            
    class Platno():
    
        def __init__(self,master):
            p=Tkinter.Canvas(width=100, height=100)
            p.grid(column=0, row=0)
            p.bind("Button-1",self.funkce)
            self.info = InfoW()
           
        def funkce(self,event=None):
            self.info.lab['text'] = 'X:{}, Y:{}'.format(event.x, event.y)
    
    top=Tkinter.Tk()
    platno=Platno(top)
    top.title('Sem Klikej')
    top.mainloop()
    
    16.8.2011 10:16 Raada | skóre: 4
    Rozbalit Rozbalit vše Re: tkMessageBox v Pythonu
    To me samozrejme napadlo, ale nechtelo se mi kvuli jedne hlasce delat novou tridu:-( No, ale jestli to jinak nejde, tak to teda udelam tak.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.