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 03:44 | Komunita

    Open source konference DevConf.CZ 2026 proběhne 18. a 19. června v Brně na FIT VUT. Publikován byl program a spuštěna byla registrace.

    Ladislav Hagara | Komentářů: 0
    včera 19:44 | Nová verze

    Společnost JetBrains uvolnila verzi 2 svého open-source velkého jazykového modelu (LLM) pro vývojáře Mellum.

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

    Probíhá konference Microsoft Build 2026. Microsoft představuje své novinky: kvantový čip Majorana 2, Surface Laptop Ultra a Surface RTX Spark Dev Box s NVIDIA RTX Spark, Intelligent Terminal, Coreutils for Windows (fork Rust Coreutils), AI modely MAI, AI agenta Scout, platformu pro agent-first zařízení Project Solara, …

    Ladislav Hagara | Komentářů: 0
    včera 12:44 | Nová verze

    Google Chrome 149 byl prohlášen za stabilní. Nejnovější stabilní verze 149.0.7827.53 přináší řadu novinek. Podrobný přehled v poznámkách k vydání. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    včera 10:55 | Nová verze

    Pluto.jl, reaktivní notebook pro programovací jazyk Julia, dospěl do verze 1.0.

    Ladislav Hagara | Komentářů: 3
    2.6. 13:44 | Nová verze

    Byla vydána nová verze 12.0.0 vizuálního programovacího jazyka Snap! (Wikipedie) inspirovaného jazykem Scratch (Wikipedie). Přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 0
    2.6. 11:44 | IT novinky

    Počítačovou hru Gravity Circuit (ProtonDB) lze do 14. června do 19:00 získat na Steamu zdarma. Napořád.

    Ladislav Hagara | Komentářů: 0
    2.6. 11:00 | Bezpečnostní upozornění

    Nejnovější X.Org X server 21.1.23 a Xwayland 24.1.12 řeší 9 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 0
    1.6. 22:33 | Bezpečnostní upozornění

    npm balíčky @redhat-cloud-services byly kompromitovány.

    Ladislav Hagara | Komentářů: 5
    1.6. 22:22 | Bezpečnostní upozornění

    Byly publikovány informace o zranitelnosti CVE-2026-46243 pojmenované CIFSwitch v Linuxu od roku 2007. Běžný uživatel může získat práva roota (lokální eskalaci práv). V upstreamu je již opraveno.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (12%)
     (8%)
     (2%)
     (15%)
     (31%)
     (4%)
     (6%)
     (3%)
     (15%)
     (26%)
    Celkem 1809 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník
    Štítky: není přiřazen žádný štítek


    Dotaz: Vytvareni oken v urcitem intervalu - gtkmm

    12.8.2006 12:04 H4wk | skóre: 9 | blog: H4wkuv_blog
    Vytvareni oken v urcitem intervalu - gtkmm
    Přečteno: 96×
    Ahoj, mam problem s mym programem v gtkmm. Je to client-server aplikace, kazdych x sekund se pripoji k serveru a stahne si zpravy. Toto delam pomoci Glib::signal_timeout. Pak chci novou zpravu zobrazit v novem okne. A tady je problem, protoze timeout nepokracuje dokud mu funkce nevrati true, Gtk::Window::run ale zablokuje funkci dokud se okno nezavre. Takze prijde jen jedna zprava a pak se timeout zablokuje dokud neni okno zavreno. Chtel jsem to vyresit pres vlakna. Udelal jsem si funkci, ktera by jen zavolala Gtk::Window::run a tu bych pouzil v Glib::Thread. Funguje to hezky dokud ono okno nezavru, potom vypisi Xka:
    Xlib: unexpected async reply (sequence 0x4921)!
    a hlavni okno se prestane vykreslovat. Zjistil jsem, ze Xka nepodporuji vicevlaknove aplikace. Nevite nekdo jak mam kazdych x sekund v gtkmm provest nejakou funkci, ktera muze vytvorit nove okno a tim se zablokovat?
    Korespondenční Seminář z Programování - Pro každého středoškoláka, který to s programováním myslí vážně.

    Odpovědi

    12.8.2006 19:45 0
    Rozbalit Rozbalit vše Re: Vytvareni oken v urcitem intervalu - gtkmm
    Nebylo by nejlepsi odchytit signal pri zavirani toho okna a pri te prilezitosti ukoncit handler toho vstupu?
    13.8.2006 13:25 H4wk | skóre: 9 | blog: H4wkuv_blog
    Rozbalit Rozbalit vše Re: Vytvareni oken v urcitem intervalu - gtkmm
    Nejsem si jisty, jak je to mysleno, zjednoduseny kod:
    #include <gtkmm.h>
    
    class Okno : public Gtk::Window {
    public:
    	Okno() {
    		Glib::thread_init();
    		show();
    		Glib::signal_timeout().connect(sigc::mem_fun(*this, &Okno::on_timer), 5000);	
    	}
    	bool on_timer () {
    		Glib::Thread::create(sigc::mem_fun(*this, &Okno::thread), false);
    		return true;
    	}
    	void thread() {
    		Gtk::Window w;
    		w.show();
    		Gtk::Main::run(w);
    	}
    };
    
    int main (int argc, char* argv[]) {
    	Gtk::Main kit(argc, argv);
    	Okno okno;
    	Gtk::Main::run(okno);
    }
    Jak to vidim tak timhle zpusobem to asi nepujde, je to skoda, protoze nemuzu uzivatele nutit aby kazdou minutu zmackl tlacitko, pokud vytvorim okno v handlu na button_clicked, tak samozrejme vse funguje. Asi se inspiruji xchatem a udelam jen jedno okno a v nem vice zalozek.
    Korespondenční Seminář z Programování - Pro každého středoškoláka, který to s programováním myslí vážně.

    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.