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: QT4 tableView removerow

    23.4.2012 11:05 mmartin
    QT4 tableView removerow
    Přečteno: 426×

    Ahoj,

    trochu se potykam s problemem removerow v tableView.

     

    Napsal jsem jednoduchou funkci, ktera zjisti aktualni radek a ten se pokusi smazat.

    int row = ui->mainTable->currentIndex().row();

    mainModel->removeRow(0);

     

    Insertovani noveho radku do modelu provadim takto:

    mainModel->record()

    r.setValue("date", "2012-04-22");

    ...

    mainModel->insertRecord(-1, r);

     

    Problem ale je, ze maze vice radku nez ma. Podotykam ze tableview je nastaveny tak, aby neumoznoval vyber vice nez jednoho zaznamu.

     

    Data ukladam do SQLite. Uvadim to tu proto, protoze se zda s mym problemem nejak souvisi.

     

    Spustim aplikaci a do SQLite db nasazim 10 radku. Ukoncim aplikaci. Spustim aplikaci podruhe, nasazim do ni dalsich 5 radku (tedy celkem 15). Pokud se pokusim smazat jeden s tech 5ti poslednich radku. smazou se mi vsechny naraz. A to jak z tableView tak samozrejme z DB.

     

    Netrkne vas neco co delam spatne? Neresili uz jste to nekdo? Nejaky commit do db? commit modelu atp?

     

    Diky predem za jakykoliv napad.

    Odpovědi

    23.4.2012 21:24 mmartin
    Rozbalit Rozbalit vše Re: QT4 tableView removerow

    jen jeste opravuju jeden omyl. samozrejme ze tam patri

    mainModel->removeRow(row);

    23.4.2012 22:36 mmartin
    Rozbalit Rozbalit vše Re: QT4 tableView removerow - vyreseno

    Takze jak jsem predpokladal. Omyl na me strane.

     

    QSqlTableModel::OnFieldChange = All changes to the model will be applied immediately to the database.

    QSqlTableModel::OnRowChange = Changes to a row will be applied when the user selects a different row.

    QSqlTableModel::OnManualSubmit = All changes will be cached in the model until either submitAll() or revertAll is called.

     

    Muj problem byl v kombinaci spatne editstrategy a k tomu spatneho comitu.

     

    Tedy model jsem musel nastavit

    mainModel->setEditStrategy(QSqlTableModel::OnFieldChange);

     

    A na konci kazdeho smazani pak zavolat

    mainModel->submitAll();

    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.