Название: Переход с QT3 на QT4, или ломка стереотипов Отправлено: pacmanoid от Июнь 29, 2006, 20:40 Испытываю затроуднения при переходе с QT3 на QT4, концепция библиотеки сильно изменилась. А посему пишу этот пост. Уважаемые господа модераторы сайта, если можно то нельзя ли прилепить данный пост. Думаю есть еще многие кто сидит и пишит под QT3 и рано или поздно они перейдут на QT4. У них также начнется ломка стереотипов.
Предлагаю сдесь ВСЕМ ЖЕЛАЮЩИМ задавать вопросы типа: Как сделать в QT4 что-то что делал в QT3 так... Вопрос первый: Раньше обновлял записи в экземпляре класса QDataTable так: MyDataTable->refresh(); как это делать в QT4? Название: Переход с QT3 на QT4, или ломка стереотипов Отправлено: Admin от Июнь 29, 2006, 22:01 ага можно еще расказать
как я переходил с 1 на 2 2 на 3 и так далее да я пару прог перевел, взвыл! но что делать, приходится бежать за лошадью :) Название: Переход с QT3 на QT4, или ломка стереотипов Отправлено: pacmanoid от Июнь 30, 2006, 07:12 Цитировать ага можно еще расказать как я переходил с 1 на 2 2 на 3 и так далее Я выбирал тему исходя из актуальности на сегоднишний день. QT3 to QT4 сегодня актуально, а Qt1 to QT2 or QT2 to QT3 сейчас не неактуально. Посмотрите сами, большинство вопросов на форуме в основном по QT3 и QT4. Название: Переход с QT3 на QT4, или ломка стереотипов Отправлено: Admin от Июнь 30, 2006, 08:48 просто 1 темой тут не обойдешься! :)
если че, задавай конкретный вопрос, попробуем помочь :) Название: Переход с QT3 на QT4, или ломка стереотипов Отправлено: pacmanoid от Июнь 30, 2006, 09:03 Цитата: "Admin" просто 1 темой тут не обойдешься! :) если че, задавай конкретный вопрос, попробуем помочь :) Ну я ведь и задал свой первый конкретный вопрос. Раньше обновлял записи в экземпляре класса QDataTable так: MyDataTable->refresh(); как это делать в QT4? понятно что теперь есть просто QTableView и к нему можно прилепить любую модель, например QSqlQeryModel. Предположим я выполнил запрос model = new QSqlQueryModel; view = new QTableView; view->setModel(model); view->setSelectionBehavior ( QAbstractItemView::SelectRows ); view->setSelectionMode ( QAbstractItemView::SingleSelection ); // Вот этот запрос model->setQuery("SELECT * FROM S_BAL ORDER BY KOD"); данные в таблице отобразились через время я хочу обновить записи в таблиц, так как их туда забрасывает другая программа, демон под Линуксом. И кидает их каждые 15 сек туда. Стало быть надо через время обновлять данные в таблице, чтобы они не теряли актуальности. Вот в QT3 я делал так: MyDataTable->refresh(); И в таблице появлялись новые записи. как это делать в QT4? неужели надо заново делать model->setQuery("SELECT * FROM S_BAL ORDER BY KOD"); Название: Переход с QT3 на QT4, или ломка стереотипов Отправлено: LestorN от Июнь 30, 2006, 09:33 Похоже что так делать и надо...
Хотя для QSqlTableModel обновление происходить по select(); это даже в документации описано. Название: Переход с QT3 на QT4, или ломка стереотипов Отправлено: Admin от Июнь 30, 2006, 11:53 именно так, или ручками модель перестраивать
щас это напоминает MFC архитектуру document/view Название: Переход с QT3 на QT4, или ломка стереотипов Отправлено: pacmanoid от Июнь 30, 2006, 14:06 Ну понятно, надо будет наверное сделать так:
QString sqlStr = "SELECT * FROM S_BAL ORDER BY KOD"; ... А потом где надо то писать: model->setQuery(sqlStr); ... Вы так предлагаете? Название: Переход с QT3 на QT4, или ломка стереотипов Отправлено: Admin от Июнь 30, 2006, 17:54 подход такой
но я с этими моделями неделю сидел пока вкурил что к чему |