Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
|
maniakus |
30.8.2010, 0:20
Сообщение
#1
|
|
Новичок Группа: Новичок Сообщений: 3 Регистрация: 30.8.2010 Пользователь №: 1990 Спасибо сказали: 0 раз(а) Репутация: 0
|
Доброго времени суток.
Делаю свою модель на основе QSqlQueryModel. Нужно чтобы столбцы 2 и 3 были редактируемые и 3й представлялся в виде чекбокса. Скопипастил из примера, доработал. Получилось следующее: answersqlmodel.h : answersqlmodel.cpp : Проблема в том что при вызове data (при клике на ячейку например) в index передается индекс только с номером строки, а номер столбца всегда нулевой. Поэтому условие if (index.column() == 3) не срабатывает и никакого чекбокса не появляется. При вызове же setData индекс передается со строкой и столбцом. В чем может быть проблема? |
|
|
|
|
MoPDoBoPoT |
30.8.2010, 0:32
Сообщение
#2
|
|
Участник ![]() ![]() Группа: Участник Сообщений: 172 Регистрация: 7.5.2009 Из: Москва Пользователь №: 738 Спасибо сказали: 44 раз(а) Репутация: 9
|
Пока навскидку: нумерация столбцов начинается с 0, то есть редактируемыми должны быть столбцы 1 и 2 (просто из запроса не ясно сколько фактически столбцов).
|
|
|
|
|
maniakus |
30.8.2010, 0:44
Сообщение
#3
|
|
Новичок Группа: Новичок Сообщений: 3 Регистрация: 30.8.2010 Пользователь №: 1990 Спасибо сказали: 0 раз(а) Репутация: 0
|
Да нет там все правильно. Первые два столбца (0 и 1) в последствии будут скрыты, а последние два (2 и 3) как раз и будут использоваться.
|
|
|
|
| Гость_xls_* |
30.8.2010, 16:31
Сообщение
#4
|
|
Гости |
ты упустил модификатор const при объявлении функции data(...)
|
|
|
|
|
maniakus |
30.8.2010, 16:52
Сообщение
#5
|
|
Новичок Группа: Новичок Сообщений: 3 Регистрация: 30.8.2010 Пользователь №: 1990 Спасибо сказали: 0 раз(а) Репутация: 0
|
Omg в самом деле. Заработало! Спасибо! А то 2й день втыкаю.
|
|
|
|
|
Litkevich Yuriy |
30.8.2010, 22:20
Сообщение
#6
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
maniakus, убрав
Цитата(Гость_xls_* @ 30.8.2010, 20:31) Link модификатор const ты просто создал новую перегруженную функцию, вместо переопределения виртуальной.
|
|
|
|
![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 30.12.2025, 10:49 |