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

    Od soboty do úterý probíhá v Hamburku konference 39C3 (Chaos Communication Congress) věnovaná také počítačové bezpečnosti nebo hardwaru. Program (jiná verze) slibuje řadu zajímavých přednášek. Streamy a záznamy budou k dispozici na media.ccc.de.

    Ladislav Hagara | Komentářů: 0
    dnes 13:22 | Zajímavý software

    Byl představen nový Xserver Phoenix, kompletně od nuly vyvíjený v programovacím jazyce Zig. Projekt Phoenix si klade za cíl být moderní alternativou k X.Org serveru.

    🇨🇽 | Komentářů: 0
    dnes 13:11 | Nová verze

    XLibre Xserver byl 21. prosince vydán ve verzi 25.1.0, 'winter solstice release'. Od založení tohoto forku X.Org serveru se jedná o vůbec první novou minor verzi (inkrementovalo se to druhé číslo v číselném kódu verze).

    🇨🇽 | Komentářů: 0
    dnes 03:33 | Nová verze

    Wayback byl vydán ve verzi 0.3. Wayback je "tak akorát Waylandu, aby fungoval Xwayland". Jedná se o kompatibilní vrstvu umožňující běh plnohodnotných X11 desktopových prostředí s využitím komponent z Waylandu. Cílem je nakonec nahradit klasický server X.Org, a tím snížit zátěž údržby aplikací X11.

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

    Byla vydána verze 4.0.0 programovacího jazyka Ruby (Wikipedie). S Ruby Box a ZJIT. Ruby lze vyzkoušet na webové stránce TryRuby. U příležitosti 30. narozenin, první veřejná verze Ruby 0.95 byla oznámena 21. prosince 1995, proběhl redesign webových stránek.

    Ladislav Hagara | Komentářů: 0
    24.12. 02:11 | Komunita

    Všem čtenářkám a čtenářům AbcLinuxu krásné Vánoce.

    Ladislav Hagara | Komentářů: 26
    24.12. 02:00 | Nová verze

    Byla vydána nová verze 7.0 linuxové distribuce Parrot OS (Wikipedie). S kódovým názvem Echo. Jedná se o linuxovou distribuci založenou na Debianu a zaměřenou na penetrační testování, digitální forenzní analýzu, reverzní inženýrství, hacking, anonymitu nebo kryptografii. Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    23.12. 18:33 | Nová verze

    Vývojáři postmarketOS vydali verzi 25.12 tohoto před osmi lety představeného operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky. Přehled novinek v příspěvku na blogu. Na výběr jsou 4 uživatelská rozhraní: GNOME Shell on Mobile, KDE Plasma Mobile, Phosh a Sxmo.

    Ladislav Hagara | Komentářů: 0
    23.12. 13:55 | Nová verze

    Byla vydána nová verze 0.41.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 6.1 nebo novější a také libplacebo 6.338.2 nebo novější.

    Ladislav Hagara | Komentářů: 0
    23.12. 12:44 | Nová verze

    Byla vydána nová verze 5.5 (novinky) skriptovacího jazyka Lua (Wikipedie). Po pěti a půl letech od vydání verze 5.4.

    Ladislav Hagara | Komentářů: 0
    Kdo vám letos nadělí dárek?
     (33%)
     (2%)
     (15%)
     (2%)
     (1%)
     (2%)
     (17%)
     (17%)
     (12%)
    Celkem 101 hlasů
     Komentářů: 18, poslední 24.12. 15:29
    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: 442×
    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.