Название: QTableWidget + QComboBox Отправлено: muaddib1981@mail.ru от Май 20, 2009, 10:34 подскажите можно в QTableWidget вместо текста встроить QComboBox.
Мне нужно чтобы редактировались фиксированные значения. И если можно то как. Спасибо. Название: Re: QTableWidget + QComboBox Отправлено: mugabe от Май 20, 2009, 10:48 http://doc.crossplatform.ru/qt/4.5.0/model-view-delegate.html
Название: Re: QTableWidget + QComboBox Отправлено: muaddib1981@mail.ru от Май 20, 2009, 11:04 м-м-м, спасибо. Буду изучать.
Название: Re: QTableWidget + QComboBox Отправлено: break от Май 20, 2009, 23:11 простой вариант реализации дляп примера:
h файл: Код: #ifndef __COMBO_DELEGATE_H__ cpp файл: Код: #include "Combo_Delegate.h" пример использования с QTableView Код: QSqlRecord rec = m_SqlTableModel.record(); Название: Re: QTableWidget + QComboBox Отправлено: chu от Декабрь 15, 2010, 15:35 Выходит, что для того чтобы заменить ячейку в таблице на элементарный комбо-бокс (выбор между значениями: А или Б),
нужно приписывать к своей программе огромный кусок описания делегата?... Может быть есть другие более простые и удобные методы? Название: Re: QTableWidget + QComboBox Отправлено: break от Декабрь 16, 2010, 00:14 Цитировать огромный кусок Покажите мне этот огромный кусок? 10 строк кода это много? Там реально их не больше - остальное издержки описания виртуальных функций C++.Цитировать Может быть есть другие более простые и удобные методы? Может есть какой-то сторонний TableView в котором есть куча опций в том числе вшитые комбобоксы... Со стандартным этот подход подразумевался разработчиками.Название: Re: QTableWidget + QComboBox Отправлено: brankovic от Декабрь 22, 2010, 21:20 QAbstractItemView::openPersistentEditor делает так, что редактор ячейки отображается постоянно.
Название: Re: QTableWidget + QComboBox Отправлено: chu от Февраль 03, 2011, 14:49 В QTableWidget есть функция
Код: void QTableWidget::setCellWidget ( int row, int column, QWidget * widget ) В QTableView её можно как-нибудь запилить? Название: Re: QTableWidget + QComboBox Отправлено: Etud от Февраль 03, 2011, 15:53 10 строк кода это много? 1 байт уже много. Для каждого писка писать свой напильник ! Вначале надо проверить известные методы и их применить. Вот chu верно написал. Название: Re: QTableWidget + QComboBox Отправлено: break от Февраль 06, 2011, 03:26 Цитировать Вот chu верно написал. Неверно, хотите простоты - юзайте QTableWidget и не лезте в модель представление.Хотите универсальности и отделенности модели от представления - делайте так как запланировали разработчики, объявляя новый класс для своего делегата и каждый раз вставляя эти 10 строк кода. Цитировать 1 байт уже много. А тут можно поспорить и еще какВставляя в каждую ячейку таблицы новый экземпляр виджета (setCellWidget) вы получаете громадный перерасход памяти по сравнению с использованием делегата который будет 1 раз создан и использоваться для всего столбца. Удачи в чтении документации... Название: Re: QTableWidget + QComboBox Отправлено: serg_hd от Февраль 06, 2011, 03:51 В QTableWidget есть функция Можно. Метод setIndexWidget(const QModelIndex & index, QWidget * widget), унаследованный от того же QAbstractItemView, кстати.Код: void QTableWidget::setCellWidget ( int row, int column, QWidget * widget ) В QTableView её можно как-нибудь запилить? Название: Re: QTableWidget + QComboBox Отправлено: Etud от Февраль 06, 2011, 15:11 Цитата: break Неверно, хотите простоты - юзайте QTableWidget и не лезте в модель представление. По сабжу и был QTableWidget.Цитата: break Хотите универсальности и отделенности модели от представления - делайте так как запланировали разработчики, объявляя новый класс для своего делегата и каждый раз вставляя эти 10 строк кода. Только принцип - наследование в простых случаях (малая таблица)ведет к разрастанию файлов проекта. Т.е. еще + 2 файла. Цитата: break Вставляя в каждую ячейку таблицы новый экземпляр виджета (setCellWidget) вы получаете громадный перерасход памяти по сравнению с использованием делегата который будет 1 раз создан и использоваться для всего столбца. Наверное Вы правы, но не во всех случаях.Цитата: break Удачи в чтении документации... И всем того же ! ;DНазвание: Re: QTableWidget + QComboBox Отправлено: break от Февраль 06, 2011, 16:05 Цитировать Только принцип - наследование в простых случаях (малая таблица) ведет к разрастанию файлов проекта. Т.е. еще + 2 файла. И что? Название: Re: QTableWidget + QComboBox Отправлено: shirushizo от Февраль 06, 2011, 22:56 Согласен. 10 строк кода, еще 2 файла в проекте - ничего страшного, просто бывает лень. И от Q*Widget стоит отказать в пользу MVC - пару дней изучения и потом полная свобода действий (хотя с drag'n'drop проблемы были). Так что дерзайте и не бойтесь трудностей ;)
Название: Re: QTableWidget + QComboBox Отправлено: spirits25 от Январь 19, 2012, 14:44 Для питона ни у кого нет случайно примера, как QComboBox вставить в QTableWidget?
Спасибо, нашёл сам. Или дошёл, не знаю=) Название: Re: QTableWidget + QComboBox Отправлено: Пытон от Январь 22, 2012, 18:11 Для питона ни у кого нет случайно примера, как QComboBox вставить в QTableWidget? Спасибо, нашёл сам. Или дошёл, не знаю=) А с другими питонерами вроде меня поделиться? >:( :'( Название: Re: QTableWidget + QComboBox Отправлено: spirits25 от Январь 25, 2012, 10:41 всегда пожалуйста
Код: pCombo = QtGui.QComboBox(self) |