abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 11:55 | Nová verze

    UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04-2.1 a 24.04-1.5. S opravou kritických zranitelností.

    Ladislav Hagara | Komentářů: 0
    dnes 11:33 | IT novinky

    Společnost Škoda Auto zveřejnila na Printables bezplatné 3D modely příslušenství do svých vozů (držáky na nápoje, pomůcky pro vedení kabelů, mincovníky, háčky na USB kabely a čepice pro kapsy na zadních stranách opěradel sedadel, držáky na telefony a úchyty pro horní upevnění bezpečnostních pásů).

    Ladislav Hagara | Komentářů: 0
    dnes 05:11 | Zajímavý článek

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 170 (pdf).

    Ladislav Hagara | Komentářů: 0
    dnes 04:33 | Bezpečnostní upozornění

    Dnes v 16:00 (14:00 UTC) budou opraveny 2 kritické zranitelnosti s CVSS 9.2 v PHP.

    Ladislav Hagara | Komentářů: 3
    dnes 01:37 | Bezpečnostní upozornění

    Nizozemská policie 13. října 2026 zabavila v datacentru Amsterdam Science Park server italského poskytovatele internetových služeb Autistici/Inventati (A/I), a to na základě americké žádosti o mezinárodní právní pomoc.… více »

    vencour | Komentářů: 3
    včera 20:47 | Bezpečnostní upozornění
    Hlášeny RCE v NGINX. Náprava dostupná. … více »
    vencour | Komentářů: 0
    včera 20:33 | IT novinky

    Do 26. října do 18:00 běží na Steamu přehlídka nadcházejících her Festival Steam Next | říjen 2026 (YouTube) doplněná demoverzemi, přenosy a dalšími aktivitami. Demoverze lze hrát zdarma.

    Ladislav Hagara | Komentářů: 0
    včera 20:22 | Zajímavý software

    Čínská technologická společnost DeepSeek zveřejnila na GitHubu svůj framework DeepInfer, nástroj pro efektivní offline inferenci svého modelu DeepSeek-V4.1-Flash ve velkém měřítku. Software běží na Linuxu a nativně podporuje akcelerátory Nvidia ale i čipy Huawei Ascend 950. Jedná se pouze o samotný inferenční engine, ne kompletní produkční službu. Zdrojový kód je dostupný pod licencí Apache 2.0.

    ❗Červivý Hřib krade❗ | Komentářů: 0
    včera 17:00 | Nová verze

    Německo-americká společnost Black Forest Labs představila FLUX 3 Image Klein, otevřený model s 5,6 miliardami parametrů pro tvorbu a úpravu obrázků. Dovede pracovat až s deseti referenčními snímky a zvládá generování v rozlišení až 4K, díky své menší velikosti ('klein' v němčině znamená 'malý') je model vhodný pro používání na běžných grafických kartách. Jedná se bohužel o cenzurovaný generativní model, z korpusu byl před trénováním

    … více »
    ❗Červivý Hřib krade❗ | Komentářů: 6
    včera 11:33 | Nová verze Ladislav Hagara | Komentářů: 1
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (21%)
     (30%)
     (8%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2885 hlasů
     Komentářů: 33, poslední včera 23:44
    Rozcestník

    Dotaz: Python + Gtk + sleep

    7.8.2011 11:28 Petur
    Python + Gtk + sleep
    Přečteno: 529×
    Zdravím,

    mám malý problém a rád bych si nechal poradit.

    Psal jsem si malý prográmek v pythonu s Gtk a když chci provést něco takového:

          for i in range (1,10): 
            self.entry.set_text(str(i))
            time.sleep(1)
        

    tak se mi to Gtk UI nezastavuje po jedné vteřině, ale vždy na celou dobu cyklu. Když si to nechám vypsat v terminálu, tak se to zastaví vždy na jednu vteřinu a vypíše, Gtk se zastaví na celou dobu a nakonec vypíše poslední hodnotu.

    Nevíte někdo, co s tím? Jak by se to dalo napsat tak, aby se zastavovalo po jedné vteřině i to Gtk?

    Jsem vděčný za jakékoliv rady a nápady.

    Taky jsem uvažoval, jestli to je tím sleep(1) nebo celým cyklem for, skoro jako by to Gtk čekalo, až cyklus skončí, aby mohlo něco zobrazit..

    Odpovědi

    7.8.2011 12:50 l4m4
    Rozbalit Rozbalit vše Re: Python + Gtk + sleep
    Teď ti prostě v rámci hlavní smyčky Gtk+ proběhne věc, která tvrá 10 sekund, tedy celý ten cyklus. Během této doby se přirozeně nezpracují žádné jiné události ani se nic nevykreslí (ne, Entry.set_text() se do hlavní smyčky nevrátí, jen změní ten text). Pak se to konečně do hlavní smyčky vrátí a vykreslí finální hodnotu v té entry.

    Co přesně znamená zastavovalo po jedné sekundě Gtk+? Má po tom čase proběhnout jedna iterace hlavní smyčky? Mají se zpracovat události, dokud nějaké jsou (představ si uživatele zuřivě měnícího myší velikost okna a pod.)? Opravdu chceš, aby na sekundu mrzlo GUI?

    Viz

    http://developer.gnome.org/gtk-faq/stable/x601.html

    ale většinou je explicitní iterace výrazem maximálního zoufalství, protože kód pak není řízen událostmi.
    7.8.2011 14:18 Petur
    Rozbalit Rozbalit vše Re: Python + Gtk + sleep
    Ono ani moc nejde o to, aby GUI mrzlo, ale aby se každou vteřinu vypsal ten text, aby se to každou vteřinu opakovalo. Když jsem to dal dohromady s tím příspěvkem níže, tak se mi to podařilo už rozjet, a teď se snažím přijít na to, jak to zase zastavit
    7.8.2011 14:51 chrono
    Rozbalit Rozbalit vše Re: Python + Gtk + sleep
    Keď tá funkcia vráti False, prestane sa opakovať. Prípadne sa dá použiť funkcia glib.source_remove (ako parameter sa použije ID, ktoré vráti glib.timeout_add).
    7.8.2011 21:10 Petur
    Rozbalit Rozbalit vše Re: Python + Gtk + sleep
    To je přesně ono. Díky moc!
    7.8.2011 13:00 chrono
    Rozbalit Rozbalit vše Re: Python + Gtk + sleep
    Problém je v tom, že ten text sa tam síce mení raz za sekundu, UI sa ale neprekreslí (práve kvôli tomu sleep), takže to vyzerá tak, ako keby to nič nerobilo.

    Aby to robilo to čo chceš, budeš musieť použiť glib.timeout_add_seconds alebo glib.timeout_add. Vlastne tam stačí pridať (pred sleep) niečo ako
    while gtk.events_pending():
       gtk.main_iteration(False)
    to ale nezabráni tomu, aby sa UI prestalo vždy na tú sekundu reagovať.
    mess avatar 7.8.2011 15:23 mess | skóre: 43 | blog: bordel | Háj ve Slezsku - Smolkov
    Rozbalit Rozbalit vše Re: Python + Gtk + sleep
    Zeptám se blbě - nejde to spustit v dalším vlákně?
    Cez párne mesiace zošíváš vaginy, cez neparne montuješ hajzle.
    7.8.2011 15:29 chrono
    Rozbalit Rozbalit vše Re: Python + Gtk + sleep
    Spustiť v inom vlákne sa to určite dá, ale meniť niečo v UI z iného vlákna je málokedy dobrý nápad.
    Josef Kufner avatar 7.8.2011 15:36 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Python + Gtk + sleep
    Na tohle kadý GUI toolkit obsahuje časovače.
    Hello world ! Segmentation fault (core dumped)

    Založit nové vlákno • Nahoru

    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.