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 23:11 | IT novinky

    Nový ovladač Steam Controller jde do prodeje 4. května. Cena je 99 eur.

    Ladislav Hagara | Komentářů: 0
    včera 14:22 | Komunita

    Greg Kroah-Hartman začal používat AI asistenta pojmenovaného gkh_clanker_t1000. V commitech se objevuje "Assisted-by: gkh_clanker_t1000". Na social.kernel.org publikoval jeho fotografii. Jedná se o Framework Desktop s AMD Ryzen AI Max a lokální LLM.

    Ladislav Hagara | Komentářů: 2
    včera 04:44 | Komunita

    Ubuntu 26.10 bude Stonking Stingray (úžasný rejnok).

    Ladislav Hagara | Komentářů: 1
    26.4. 22:22 | Nová verze

    Webový prohlížeč Dillo (Wikipedie) byl vydán ve verzi 3.3.0. S experimentální podporou FLTK 1.4. S příkazem dilloc pro ovládání prohlížeče z příkazové řádky. Vývoj prohlížeče se přesunul z GitHubu na vlastní doménu dillo-browser.org (Git).

    Ladislav Hagara | Komentářů: 1
    26.4. 21:55 | Komunita

    Byl publikován přehled dění a novinek z vývoje Asahi Linuxu, tj. Linuxu pro Apple Silicon. Vývojáři v přehledu vypíchli vylepšenou instalaci, podporu senzoru okolního světla, úsporu energie, opravy Bluetooth nebo zlepšení audia. Vývoj lze podpořit na Open Collective a GitHub Sponsors.

    Ladislav Hagara | Komentářů: 1
    25.4. 04:00 | Nová verze

    raylib (Wikipedie), tj. multiplatformní open-source knihovna pro vývoj grafických aplikací a her, byla vydána ve verzi 6.0.

    Ladislav Hagara | Komentářů: 0
    24.4. 18:33 | IT novinky

    Nové verze AI modelů. Společnost OpenAI představila GPT‑5.5. Společnost DeepSeek představila DeepSeek V4.

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

    Nová čísla časopisů od nakladatelství Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 164 (pdf) a Hello World 29 (pdf).

    Ladislav Hagara | Komentářů: 0
    24.4. 04:44 | Komunita

    Bylo oznámeno, že webový prohlížeč Opera GX zaměřený na hráče počítačových her je už také na Flathubu and Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    23.4. 23:11 | IT novinky

    Akcionáři americké mediální společnosti Warner Bros. Discovery dnes schválili převzetí firmy konkurentem Paramount Skydance za zhruba 110 miliard dolarů (téměř 2,3 bilionu Kč). Firmy se na spojení dohodly v únoru. O část společnosti Warner Bros. Discovery dříve usilovala rovněž streamovací platforma Netflix, se svou nabídkou však neuspěla. Transakci ještě budou schvalovat regulační orgány, a to nejen ve Spojených státech, ale také

    … více »
    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (14%)
     (8%)
     (2%)
     (13%)
     (31%)
     (3%)
     (6%)
     (3%)
     (15%)
     (25%)
    Celkem 1435 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Dotaz: PyGTK - win DLL gtkIEembed + ctypes

    27.10.2009 17:16 pq
    PyGTK - win DLL gtkIEembed + ctypes
    Přečteno: 234×

    Zdravim, potrebuji na win platforme vnorit do GUI okno internet exploreru pomoci PyGTK. Nasel jsem existujici DLL knihovnu GtkIEEmbed (http://live.gnome.org/GtkIEEmbed), ktera by mela pomoci funkce gtk_ie_embed_new() vytvorit objekt typu gtk.Widget. Volam tuto funkci pres ctypes (nemam s ni zatim zadne zkusenosti), ale nefunguje mi to - funkce vraci jen hodnotu INT, nedari se mi ji zmenit ani pomoci restype... Budu velmi vdecny za nejake nakopnuti...

    Prozatim experimentuju s timhle:

    import gtk
    from ctypes import *

    class TinyIE:
    def __init__(self):

    self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)

    gtkie = cdll.LoadLibrary("libgtkieembed-0.dll")
    gtkie.gtk_ie_embed_new.restype = gtk.Widget
    self.ie = gtkie.gtk_ie_embed_new()

    self.window.add(self.ie)
    self.window.show_all()

    if __name__ == '__main__':
    TinyIE()
    gtk.main()

    Odpovědi

    28.10.2009 22:24 pq
    Rozbalit Rozbalit vše Re: PyGTK - win DLL gtkIEembed + ctypes

    Člověk musí napřed položit dotaz, aby pak konečně o něco zakopl na webu :))

    Funkční kód:

    import ctypes
    from ctypes import *
    import gtk
    import gobject

    class _PyGObject_Functions(ctypes.Structure):
    _fields_ = [
    ('register_class',
    ctypes.PYFUNCTYPE(ctypes.c_void_p, ctypes.c_char_p,
    ctypes.c_int, ctypes.py_object,
    ctypes.py_object)),
    ('register_wrapper',
    ctypes.PYFUNCTYPE(ctypes.c_void_p, ctypes.py_object)),
    ('register_sinkfunc',
    ctypes.PYFUNCTYPE(ctypes.py_object, ctypes.c_void_p)),
    ('lookupclass',
    ctypes.PYFUNCTYPE(ctypes.py_object, ctypes.c_int)),
    ('newgobj',
    ctypes.PYFUNCTYPE(ctypes.py_object, ctypes.c_void_p)),
    ]


    class PyGObjectCAPI(object):
    def __init__(self):
    addr = ctypes.pythonapi.PyCObject_AsVoidPtr(
    ctypes.py_object(gobject._PyGObject_API))
    self._api = _PyGObject_Functions.from_address(addr)

    def pygobject_new(self, addr):
    return self._api.newgobj(addr)


    class TinyIE:
    def __init__(self):

    self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)

    gtkie = CDLL("libgtkieembed-0.dll")
    capi = PyGObjectCAPI()
    self.ie = capi.pygobject_new(gtkie.gtk_ie_embed_new())

    self.window.add(self.ie)
    self.window.show_all()

    contents = "<html><title>Hello world / html verze.</title><body><P><B>Hello</B> <i>world</i> <font color='red'>!</font></body></html>";
    gtkie.gtk_ie_embed_load_html_from_string (hash(self.ie), contents);


    if __name__ == '__main__':
    TinyIE()
    gtk.main()

    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.