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 05:33 | Nová verze

    OpenTofu, tj. svobodný a otevřený fork Terraformu vzniknuvší jako reakce na přelicencování Terraformu z MPL na BSL (Business Source License) společností HashiCorp, bylo vydáno ve verzi 1.7.0. Přehled novinek v aktualizované dokumentaci. Vypíchnout lze State encryption.

    Ladislav Hagara | Komentářů: 0
    včera 23:55 | Humor

    Spouštět webový prohlížeč jenom kvůli nákupu kávy? Nestačí ssh? Stačí: ssh terminal.shop (𝕏).

    Ladislav Hagara | Komentářů: 3
    včera 18:11 | Nová verze

    Yocto Project byl vydán ve verzi 5.0. Její kódové jméno je Scarthgap. Yocto Project usnadňuje vývoj vestavěných (embedded) linuxových systémů na míru konkrétním zařízením. Cílem projektu je nabídnou vývojářům vše potřebné. Jedná se o projekt Linux Foundation.

    Ladislav Hagara | Komentářů: 0
    včera 17:56 | Nová verze

    Operační systém 9front, fork operačního systému Plan 9, byl vydán v nové verzi "do not install" (pdf). Více o 9front v FQA.

    Ladislav Hagara | Komentářů: 0
    včera 13:11 | Nová verze

    Svobodná webová platforma pro sdílení a přehrávání videí PeerTube (Wikipedie) byla vydána v nové verzi 6.1. Přehled novinek i s náhledy v oficiálním oznámení a na GitHubu. Řešeny jsou také 2 bezpečnostní chyby.

    Ladislav Hagara | Komentářů: 3
    včera 12:33 | Zajímavý software

    Lennart Poettering na Mastodonu představil utilitu run0. Jedná se o alternativu k příkazu sudo založenou na systemd. Bude součástí systemd verze 256.

    Ladislav Hagara | Komentářů: 16
    29.4. 23:22 | Nová verze

    Hudební přehrávač Amarok byl vydán v nové major verzi 3.0 postavené na Qt5/KDE Frameworks 5. Předchozí verze 2.9.0 vyšla před 6 lety a byla postavená na Qt4. Portace Amaroku na Qt6/KDE Frameworks 6 by měla začít v následujících měsících.

    Ladislav Hagara | Komentářů: 13
    29.4. 21:44 | Komunita

    Ubuntu 24.10 bude Oracular Oriole (věštecká žluva).

    Ladislav Hagara | Komentářů: 13
    29.4. 20:22 | Nová verze

    Byla vydána nová verze 2.45.0 distribuovaného systému správy verzí Git. Přispělo 96 vývojářů, z toho 38 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání. Vypíchnout lze počáteční podporu repozitářů, ve kterých lze používat SHA-1 i SHA-256.

    Ladislav Hagara | Komentářů: 0
    29.4. 13:33 | IT novinky

    Před 25 lety, ve čtvrtek 29. dubna 1999, byla spuštěna služba "Úschovna".

    Ladislav Hagara | Komentářů: 0
    KDE Plasma 6
     (75%)
     (8%)
     (2%)
     (16%)
    Celkem 889 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: glade python drawingarea

    28.5.2006 21:11 Jáchym Čepický | skóre: 29 | blog: U_Jachyma
    glade python drawingarea
    Přečteno: 374×
    Snažím se napsat jednu drobou aplikaci v pythonu s GUI generovaným gladem. Co bych to nepřiznal: jedná se v podstatě o prohlížečku map. Z toho důvodu potřebuji widget GtkDrawingarea a hlavně odchytávat události myši

    Snažím se něco vykoukat podle pygtk tutoriálu, ale narážím na problém, že pokud použiji vygenerované xml a přistoupím na jeho objekty, nejsou volány funkce, zachycující události myši. Zároveň se objevuje hláška
     GtkWarning: gtk_widget_set_events: assertion `!GTK_WIDGET_REALIZED (widget)' failed
      drawing_area.set_events(gtk.gdk.EXPOSURE_MASK
    
    chyba ukazuje na řádek, kde se snažím nastavit události:
    drawing_area.set_events(gtk.gdk.EXPOSURE_MASK
                                | gtk.gdk.LEAVE_NOTIFY_MASK
                                | gtk.gdk.BUTTON_PRESS_MASK
                                | gtk.gdk.POINTER_MOTION_MASK
                                | gtk.gdk.POINTER_MOTION_HINT_MASK)
    
    Podařilo se někomu napsat kreslící aplikaci za použití Gladu a pythonu? Příklad kódu by nebyl?

    Díky

    Odpovědi

    28.5.2006 21:35 Jáchym Čepický | skóre: 29 | blog: U_Jachyma
    Rozbalit Rozbalit vše Re: glade python drawingarea
    Něco mám:
    > Try to connect to signal_realize, and do add_events there.
    > Also, for motion event and for signal_realize use after flag = false
    > when connecting.
    > Syntax like: signal().connect( sigc::mem_fun( object, &mem_fun ), false );
    >

    Ale nerozumim tomu, neodpustím si neodpustitelné "Pomoc!" :-)

    Zdroj

    kus mého kódu:

    ...
    drawing_area.connect("motion_notify_event",self.motion_notify_event)
    drawing_area.connect("button_press_event", self.button_press_event)
    ...
    drawing_area.set_events(gtk.gdk.EXPOSURE_MASK
                                | gtk.gdk.LEAVE_NOTIFY_MASK
                                | gtk.gdk.BUTTON_PRESS_MASK
                                | gtk.gdk.POINTER_MOTION_MASK
                                | gtk.gdk.POINTER_MOTION_HINT_MASK)
    ...
    

    Díky

    Fuky avatar 28.5.2006 23:20 Fuky | skóre: 52 | blog: 4u
    Rozbalit Rozbalit vše Re: glade python drawingarea

    Nastav obsluhu signálů i masku událostí přímo v Gladu (obrázek) a po načtení XML souboru připoj signály (příklad):

    xml = gtk.glade.XML("platno.glade", "window")
    xml.signal_autoconnect(locals())
    
    29.5.2006 10:45 Jáchym Čepický | skóre: 29 | blog: U_Jachyma
    Rozbalit Rozbalit vše Re: glade python drawingarea
    TO je přesně ono!! Díky moc
    29.5.2006 01:31 pok | skóre: 11
    Rozbalit Rozbalit vše Re: glade python drawingarea
    Taky jsem to nedávno řešil: PyGTK DrawingArea (4 odkazy na nejdůležitější FAQ)
    30.5.2006 15:30 Jáchym Čepický | skóre: 29 | blog: U_Jachyma
    Rozbalit Rozbalit vše glade python menu
    Další dotaz připojuji sem, ať je to když tak pohromadě.

    Vytvořil jsem nezávislé menu, které se objeví při kliknutí pravým tlačítkem na drawing area. potud vše OK. Bohužel funkce, které by měly být zavolány při výběru menu volány nejsou. Nevíte prosím jak na to?

    Screenshot nastavení glade
    __init__(self):
        self.menu_tree = gtk.glade.XML(gladexml, "menu1")
        self.damenu = self.menu_tree.get_widget("menu1")
    
    def on_delete_one_activate(self,widget,event):
            print "TADY"
            print event
            #self.digitizedLine.pop()
    
    30.5.2006 22:26 Jáchym Čepický | skóre: 29 | blog: U_Jachyma
    Rozbalit Rozbalit vše Re: glade python menu
    self.menu_tree = gtk.glade.XML(gladexml, "menu1")
    self.settings_tree.signal_autoconnect(self)
    self.damenu = self.menu_tree.get_widget("menu1")
    

    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.