Russian Qt Forum
Ноябрь 24, 2024, 02:36 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: возможно ли такое сделать?  (Прочитано 5698 раз)
sk8ter
Гость
« : Август 10, 2009, 17:01 »

Я впервые делаю на Qt подобное, в форуме поискал - не нашел ответ на свой вопрос...

В общем есть таблица с колонками: Услуга, Подуслуга, количество, стоимость за ед., сумма
Услуг около 30, в каждой услуге - свои названия подуслуг со своей ценой (их количество варьируется)

Можно ли сделать так, чтобы при щелчке на конкретной ячейке по услуге выпадал их список, выбрав нужную услугу -> загружались из таблицы базы данных полуслуги (в соседнем столбце, в других строках ничего не менялось), тоже выпадающий список.
+ Это все надо будет сохранять как заказ в базу данных

Если можно, то что почитать, есть ли пример...
Записан
sk8ter
Гость
« Ответ #1 : Август 10, 2009, 19:14 »

Т.е. чтобы поведение содержимого выпадающего списка зависело от содержимого соседней ячейки.
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #2 : Август 10, 2009, 19:26 »

свою модель делать надо
Записан

Юра.
sk8ter
Гость
« Ответ #3 : Август 10, 2009, 19:34 »

... что почитать, есть ли пример...
Записан
crossly
Гость
« Ответ #4 : Август 12, 2009, 17:50 »

а чем не устроит QSqlRelationalTableModel...??
Записан
sk8ter
Гость
« Ответ #5 : Август 17, 2009, 18:24 »

Оказывается кто-то уже пробовал подобное сделать:
http://www.prog.org.ru/topic_7901_0.html
Пока работаю над этим

Только мне не надо показывать сохраненную таблицу - пользователь сам добавляет новые строки, редактирует их , а потом эту таблицу нужно сохранить ("заказ").
Как это делать, создавать Table Widget и самому в каждую ячейку записывать даные, и обрабатывать собятия, чтобы отредактировать? А потом также и сохранять..?  или все-таки представление с этой задачей справится?
Записан
LeX
Гость
« Ответ #6 : Август 31, 2009, 09:42 »

Только мне не надо показывать сохраненную таблицу - пользователь сам добавляет новые строки, редактирует их , а потом эту таблицу нужно сохранить ("заказ").
Как это делать, создавать Table Widget и самому в каждую ячейку записывать даные, и обрабатывать собятия, чтобы отредактировать? А потом также и сохранять..?  или все-таки представление с этой задачей справится?

На сколько я тебя понял, ты хочешь в одной таблице выбирать услуги (т.е. формировать строку) и кидать эту строку в новую таблицу (заказ), так?
Если да так это просто:
Ну сформируй заказ, и сохраняй его в другой таблице по требуемому событию, в чём проблема? В БД создай, предварительно, нужную тебе таблицу (для сохранения заказа) и всё.
Записан
break
Гипер активный житель
*****
Offline Offline

Сообщений: 846


Просмотр профиля
« Ответ #7 : Октябрь 18, 2009, 01:49 »

Цитировать
Т.е. чтобы поведение содержимого выпадающего списка зависело от содержимого соседней ячейки.

я делал такое следующим способом:

делается делегат для подуслуги который должен знать номер колонки с услугой - далее соотв. запрос для выборки из БД нужных подуслуг - никаких проблем, единственное после создания основной модели - на этапе создания делегатов нашему делегату надо сделать так:

QSqlRecord rec = model.record();
PodUslugaDelegat.setUslugaColumnNum( rec.indexOf( "НАЗВАНИЕ_СТОЛБЦА_УСЛУГИ_В_ТАВБЛИЦЕ_БД" ) );

говорим делегату где колонка с услугой - а он в момент создания элемента редактирования делегата ( createEditor ) берет из своего индекса строку а колонку ту самую переданную и запомненную! и все!
« Последнее редактирование: Октябрь 18, 2009, 01:51 от break » Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.057 секунд. Запросов: 23.