crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

gogi
  опции профиля:
сообщение 14.7.2008, 9:10
Сообщение #1


Новичок


Группа: Новичок
Сообщений: 9
Регистрация: 19.6.2008
Пользователь №: 207

Спасибо сказали: 0 раз(а)




Репутация:   0  


У меня возникают сложности с добавлением/удалением записей в базу данных.
Вот написал тестовый проект, в котором просматривается проблема с добавлением (приаттачен).
Суть проблемы - после запуска в таблице одна строка. Жму Add. Появляется строка 2. В ней написано "www". Меняю на "222". Жму ещё раз Add. Появляется третья строка (с "www") и во второй строке какого-то хрена надпись становится также "www".

Проверял под: Debian GNU/Linux 4.0 (testing), g++ - 4.3.1-2, Qt - 4.4.0-3; Windows XP SP2 - MinGW-3.4.2, qt-win-opensource-4.4.0-mingw.
Прикрепленный файл  test_qt.zip ( 2.67 килобайт ) Кол-во скачиваний: 202
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
gogi
  опции профиля:
сообщение 14.7.2008, 10:46
Сообщение #2


Новичок


Группа: Новичок
Сообщений: 9
Регистрация: 19.6.2008
Пользователь №: 207

Спасибо сказали: 0 раз(а)




Репутация:   0  


А откуда я его возьму? Это значение пользователь должен вводить. А здесь я просто добавляю строку. Если я напишу вот так:

model->setData(model->index(row, 1), "");


То ситуация повторяется, с той лишь разницей, что теперь в вместо "www" в строки заносится "".
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
AD
  опции профиля:
сообщение 14.7.2008, 10:52
Сообщение #3


Профессионал
*****

Группа: Участник
Сообщений: 2003
Регистрация: 4.2.2008
Из: S-Petersburg
Пользователь №: 84

Спасибо сказали: 70 раз(а)




Репутация:   17  


Цитата(gogi @ 14.7.2008, 11:46) *
А откуда я его возьму? Это значение пользователь должен вводить. А здесь я просто добавляю строку. Если я напишу вот так:

model->setData(model->index(row, 1), "");


То ситуация повторяется, с той лишь разницей, что теперь в вместо "www" в строки заносится "".

Ну правильно: значит, ошибка именно в этом!!! :) Ты должен это делать, после того, как пользователь отредактировал поле ввода! ;)

Если я ничего не перепутал, то это можно сделать вроде бы так:
QSqlRecord record = model -> record(tableView -> currentIndex().row());
// далее твои действия с этой строкой!


Сообщение отредактировал AD - 14.7.2008, 12:10
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 30.6.2025, 2:21