QTableWidget, Как при выделении ячейки вывести на её месте другой виджет?, Неужели так нельзя сделать? |
Здравствуйте, гость ( Вход | Регистрация )
QTableWidget, Как при выделении ячейки вывести на её месте другой виджет?, Неужели так нельзя сделать? |
Strikevld |
6.9.2011, 19:56
Сообщение
#1
|
Студент Группа: Участник Сообщений: 53 Регистрация: 6.9.2011 Пользователь №: 2849 Спасибо сказали: 6 раз(а) Репутация: 0 |
Что нужно сделать при сигнале cellActivated чтобы вместо текста вывести QComboBox
При этом чтобы текст никуда не делся, Надо чтобы другой виджет(этот самый QComboBox) как бы перекрывал ячейку (это касается не только QComboBox) При выделении другой ячейки этот виджет будет перемещён! |
|
|
Алексей1153 |
7.9.2011, 6:26
Сообщение
#2
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
нужно создать экземпляр QComboBox с родителем==таблица, затем комбу разместить ровно в размер ячейки на таблице
|
|
|
Litkevich Yuriy |
7.9.2011, 7:57
Сообщение
#3
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
|
|
|
Sokoloff |
7.9.2011, 9:45
Сообщение
#4
|
Участник Группа: Участник Сообщений: 237 Регистрация: 1.4.2009 Из: Москва Пользователь №: 654 Спасибо сказали: 50 раз(а) Репутация: 11 |
Что нужно сделать при сигнале cellActivated чтобы вместо текста вывести QComboBox При этом чтобы текст никуда не делся, Надо чтобы другой виджет(этот самый QComboBox) как бы перекрывал ячейку (это касается не только QComboBox) При выделении другой ячейки этот виджет будет перемещён! По моему такое можно сделать через делегата. |
|
|
Strikevld |
7.9.2011, 15:44
Сообщение
#5
|
Студент Группа: Участник Сообщений: 53 Регистрация: 6.9.2011 Пользователь №: 2849 Спасибо сказали: 6 раз(а) Репутация: 0 |
Да пытался! (Так как описал Алексей1153) нужно создать экземпляр QComboBox с родителем==таблица, затем комбу разместить ровно в размер ячейки на таблице Я пробовал так, только я создавал QComboBox без родителя а потом делал его родителем таблицу через setParent. Ведь одно и тоже но комбо не видно! Ставил позицию и размеры,,, всё-равно! Кстати насчет: >>>как бы перекрывал ячейку Точнее сказать чтобы ячейка была его родителем! (Возможно ли это?) |
|
|
Алексей1153 |
7.9.2011, 16:53
Сообщение
#6
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
Цитата Ведь одно и тоже но комбо не видно! так надо было его показать ) |
|
|
Strikevld |
7.9.2011, 17:43
Сообщение
#7
|
Студент Группа: Участник Сообщений: 53 Регистрация: 6.9.2011 Пользователь №: 2849 Спасибо сказали: 6 раз(а) Репутация: 0 |
|
|
|
MoPDoBoPoT |
7.9.2011, 19:32
Сообщение
#8
|
Участник Группа: Участник Сообщений: 172 Регистрация: 7.5.2009 Из: Москва Пользователь №: 738 Спасибо сказали: 44 раз(а) Репутация: 9 |
Делегат + нужная стратегия редактирования у представления (QAbstractItemView::EditTriggers)
|
|
|
Алексей1153 |
8.9.2011, 6:54
Сообщение
#9
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
Strikevld, да я и не говорил, что кто-то идиот. Если не видно виджет, это одно из трёх:
1)он не создан 2)он скрыт 3)он передвинут не туда |
|
|
MoPDoBoPoT |
8.9.2011, 20:27
Сообщение
#10
|
Участник Группа: Участник Сообщений: 172 Регистрация: 7.5.2009 Из: Москва Пользователь №: 738 Спасибо сказали: 44 раз(а) Репутация: 9 |
нужно создать экземпляр QComboBox с родителем==таблица, затем комбу разместить ровно в размер ячейки на таблице Кстати, чтобы так сделать, надо парентом сделать вьюпорт (QAbstractScrollArea::viewport()), а не саму таблицу. Но через делегат, по-моему, правильней и удобней. |
|
|
Текстовая версия | Сейчас: 25.11.2024, 5:41 |