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

    Byla vydána nová verze 2.44.0 distribuovaného systému správy verzí Git. Přispělo 85 vývojářů, z toho 34 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.

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

    KiCad (Wikipedie), sada svobodných softwarových nástrojů pro počítačový návrh elektronických zařízení (EDA), byl vydán v nové major verzi 8.0.0 (𝕏). Přehled novinek v příspěvku na blogu.

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

    Na čem aktuálně pracují vývojáři GNOME a KDE? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE.

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

    Google zveřejnil seznam 195 organizací přijatých do letošního Google Summer of Code (GSoC). Dle plánu se zájemci přihlašují od 18. března do 2. dubna. Vydělat si mohou od 750 do 6600 dolarů. V Česku a na Slovensku je to 900 dolarů za malý, 1800 dolarů za střední a 3600 dolarů pro velký projekt. Další informace v často kladených otázkách (FAQ). K dispozici jsou také statistiky z minulých let.

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

    Mixxx (Wikipedie), tj. svobodný software určený (nejenom) pro diskžokeje, byl vydán v nové major verzi 2.4.0. Přehled novinek i s videi v oficiálním oznámení. Aktualizována byla také uživatelská příručka. Oficiální flatpak je k dispozici na Flathubu.

    Ladislav Hagara | Komentářů: 0
    23.2. 18:44 | IT novinky

    Softwarová společnost Avast musí ve Spojených státech zaplatit pokutu 16,5 milionu dolarů (více než 386 milionů Kč) a přestat prodávat data o uživatelích k reklamním účelům. V tiskové zprávě to ve čtvrtek oznámila americká Federální obchodní komise (FTC). Společnost Avast se sídlem v Británii se podle FTC nedovoleného jednání dopouštěla přes svou českou součást Jumpshot.

    Ladislav Hagara | Komentářů: 16
    23.2. 14:33 | Zajímavý článek

    Andrey Konovalov popisuje, jak se mu podařilo na notebooku Lenovo ThinkPad X1 Carbon 6. generace povolit řadič xDCI, aby umožnil emulaci libovolných USB zařízení.

    Fluttershy, yay! | Komentářů: 1
    23.2. 10:00 | Nová verze

    Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 24.2 Kereru. Přehled novinek v Changelogu.

    Ladislav Hagara | Komentářů: 0
    23.2. 09:00 | Nová verze

    MindForger, tj. poznámkový blok, markdown editor a nástroj pro management znalostí, byl vydán v nové major verzi 2.0.0. Přehled novinek na GitHubu. Hlavní novinkou je integrace s LLM (OpenAI).

    Ladislav Hagara | Komentářů: 0
    23.2. 08:00 | IT novinky Ladislav Hagara | Komentářů: 8
    Kolik máte nálepek na víku notebooku?
     (17%)
     (60%)
     (5%)
     (4%)
     (5%)
     (9%)
    Celkem 381 hlasů
     Komentářů: 14, poslední včera 17:01
    Rozcestník

    Dotaz: Python OOP QT, QTabWidget - dynamická tvorba tabů

    14.6.2013 18:49 patrikpb
    Python OOP QT, QTabWidget - dynamická tvorba tabů
    Přečteno: 368×
    Zdravím! Nevěděl jsem jak ve zkratce popsat překážku, kterou řeším. Zkouším v pythonu napsat jednoduché GUI pro NetworkManager. Mám myšlenku, jednoduchého okna, ve kterém bude QTabWidget a na každém tabu bude nastavení jednoho interface (wlan,eth,...) plus pár dalších. Chtěl bych udělat tvorbu těchto tabů závislou na zařízeních, která jsou ve stroji dostupná. Mohu zjistit, jaká zařízení jsou dostupná, ale jsou to jen hodnoty typu string nebo obdobné.

    Měl jsem asi takovouto představu
    ifaces=["wlan0","wlan1","eth0"]#seznam síťových zařízení
    for I in ifaces:
        I=MujWidget()
        #a nasledovalo by pridani instance widgetu jako noveho tabu
    
    Je to jen nástin co od části kódu chci a vím, že nemůže fungovat. Potřebuji nějakým způsobem vytvořil pro každý řetězec jednu instanci widgetu. Má někdo nápad, příklad kódu nebo jiný způsob jak řešit tuto situaci?

    Řešení dotazu:


    Odpovědi

    pavlix avatar 14.6.2013 19:14 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Python OOP QT, QTabWidget - dynamická tvorba tabů
    Možností je spousta. Každopádně nepoužívej proměnou, která slouží k procházení cyklu k ničemu jinému. Widget bude muset vědět, ke kterému interface se vztahuje. Python je na tyhle hříčky docela dobře uzpůsobený.
    for iface in ifaces:
        widget = MujWidget(iface);
        # další práce s widgetem
    
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    14.6.2013 19:42 patrikpb
    Rozbalit Rozbalit vše Re: Python OOP QT, QTabWidget - dynamická tvorba tabů
    Díky, dělá to přesně co jsem v textu chtěl. Jde potom ještě přistupovat jednotlivě k takto vytvořeným widgetům? Nemám tušení jak třeba přistupovat k předposlednímu widgetu, který byl v cyklu vytvořen.
    pavlix avatar 14.6.2013 20:11 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Python OOP QT, QTabWidget - dynamická tvorba tabů
    Buď přes ten tabbed widget, který je zcela jistě zná, nebo si je můžeš někam uložit, třeba do seznamu nebo slovníku, podle toho, jestli k nim chceš přistupovat podle pořadí nebo podle názvu.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    14.6.2013 20:35 patrikpb
    Rozbalit Rozbalit vše Re: Python OOP QT, QTabWidget - dynamická tvorba tabů
    Wow, tak python zase jednou překonal má očekávání. Moc díky za rady, slovník bude to pravé. Vyřešeno :-)
    pavlix avatar 14.6.2013 20:41 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Python OOP QT, QTabWidget - dynamická tvorba tabů
    Jinak s GUI pro NetworkManager si hraje hromada lidí, takže by možná stálo za to spojit síly, pokud chceš dělat něco, co se bude fakt používat.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    14.6.2013 21:12 patrikpb
    Rozbalit Rozbalit vše Re: Python OOP QT, QTabWidget - dynamická tvorba tabů
    Klidně bych s někým spojil síly, jen toho neumím zase tolik a nemám tušení kde hledat takové lidi. Chtěl jsem vytvořit něco nezávislého na DE a využívajícího Qt. V Razor-Qt mi tento nástroj schází.

    Sotva jsem překonal jeden problém, mám další :D. Teď řeším jak pro všechny wifi taby udělat jeden template widgetů abych nemusel všechny widgety definovat znova a znova. Tvorba vlastního widgetu není zase taková hračka jak koukám...
    pavlix avatar 14.6.2013 21:38 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Python OOP QT, QTabWidget - dynamická tvorba tabů
    Vím o někom, kdo má okolo Qt projektů docela přehled:

    https://fedoraproject.org/wiki/JaroslavReznik

    Jinak se určitě někdy stav na IRC freenode #nm.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    19.6.2013 10:53 Radek Novacek | skóre: 3
    Rozbalit Rozbalit vše Re: Python OOP QT, QTabWidget - dynamická tvorba tabů
    Tvorba vlastního widgetu je celkem jednoduchá, stačí podědit QWidget
    class MyWidget(QtGui.QWidget):
        def __init__(self, name, parent=None):
            QtGui.QWidget.__init__(self, parent)
            # Vytvoreni obsahu widgetu
            label = QtGui.QLabel(name, parent)
            # Vytvoreni layoutu
            layout = QtGui.QVBoxLayout(self)
            layout.addWidget(label)
    

    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.