Russian Qt Forum

Qt => Model-View (MV) => Тема начата: Evgeniya от Февраль 09, 2010, 22:43



Название: методы record() и data() модели
Отправлено: Evgeniya от Февраль 09, 2010, 22:43
Всем доброго времени суток всем!!!
Есть такой вопрос,а точнее просьба...помогите пожалуйста понять в классе QSqlQueryModel методы record и data это практически одно и тоже?Или чем они отличаются? Ведь я могу обратиться к данным модели и одним и другим способом?
Например,
Код
C++ (Qt)
QSqlQueryModel *mod=new QSQlQueryModel();
mod->setQuery("SELECT Code,Name FROM Table");
tableView->setModel(mod);
QString name1=mod->data(mod->index(tableView->currentIndex().row(),1)).toString();
QString name2=mod->record(tableView->currentIndex().row()).value(1).toString();
 
т.е. получается,что name1 и name2 можно определить этими двумя способами.


Название: Re: методы record() и data() модели
Отправлено: BRE от Февраль 09, 2010, 22:53
т.е. получается,что name1 и name2 можно определить этими двумя способами.
Да.
Метод data общий для всех моделей, все view'ы его знают и пользуются им.
Метод record более узкоспециализированный и может использоваться для получения всей записи из результата выборки по номеру строки.


Название: Re: методы record() и data() модели
Отправлено: Evgeniya от Февраль 10, 2010, 08:10
Спасибо большое,за ответ... теперь у меня не будет сомнений в каких случаях какой метод лучше использоват  :)