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í
×
    včera 16:44 | Nová verze

    Byl vydán Mozilla Firefox 154.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 154 bude brzy k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    včera 14:33 | Nová verze

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

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

    Open-source citační manažer Zotero (Wikipedie, GitHub) byl vydán v nové major verzi 10. Přehled novinek v příspěvku na blogu.

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

    Interaktivní editor binárních dat GNU poke byl vydán ve verzi 5.0 (seznam změn).

    |🇵🇸 | Komentářů: 8
    17.8. 18:55 | Nová verze

    Byla vydána verze 0.85 telnet a ssh klienta PuTTY (Wikipedie). Řešeno je 5 zranitelností.

    Ladislav Hagara | Komentářů: 0
    17.8. 13:33 | Zajímavý článek

    Byly publikovány novinky z vývoje GIMPu. Pracuje se na novém formátu souborů. Stávající binární XCF bude nahrazen "zazipovaným XML". XCF zůstane plně podporován pouze pro načítání starých souborů.

    Ladislav Hagara | Komentářů: 10
    17.8. 12:33 | Zajímavý projekt

    Workshop o umělé inteligenci v Dartmouthu proběhl před 70 lety, od 18. června do 17. srpna 1956. Dvouměsíční soustředění 6–11 informatiků, iniciované Johnem McCarthym, položilo základy oboru umělé inteligence.

    |🇵🇸 | Komentářů: 6
    17.8. 03:00 | Nová verze

    Po 9 týdnech vývoje od vydání Linuxu 7.1 oznámil Linus Torvalds vydání Linuxu 7.2. Podrobný přehled novinek a vylepšení na Linux Kernel Newbies nebo LWN.net: první a druhá polovina začleňovacího okna.

    Ladislav Hagara | Komentářů: 1
    16.8. 18:55 | Komunita

    Debian dnes slaví 33 let. Ian Murdock oznámil vydání "Debian Linux Release" 16. srpna 1993.

    Ladislav Hagara | Komentářů: 1
    16.8. 04:22 | Komunita

    Probíhá hlasování o používání LLM při vývoji Debianu. Vývojáři Debianu mají na výběr 9 možností (návrhy A až H a žádný z nich).

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (2%)
     (18%)
     (30%)
     (7%)
     (6%)
     (2%)
     (15%)
     (22%)
    Celkem 2418 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    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: 563×
    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.