У меня есть таблица, которая в основном представляет собой QTreeWidget, и я хочу поместить интерактивный виджет, возможно, кнопку внутри него. Каждая строка представляет собой QTreeWidgetItem, но я не вижу, как я могу добавить кнопку с QTreeWidgetItem :: УстановитьДанныеQT Clickable widget (возможно, кнопка) внутри QTreeWidget?
ответ
Вот модификация примера, приведенного в Qt документации для QTreeWidget
добавив QPushButton ко второму элементу
ui->treeWidget->setColumnCount(1);
QList<QTreeWidgetItem *> items;
for (int i = 0; i < 10; ++i)
items.append(new QTreeWidgetItem((QTreeWidget*)0, QStringList(QString("item: %1").arg(i))));
ui->treeWidget->insertTopLevelItems(0, items);
ui->treeWidget->setItemWidget(items.value(1),0,new QPushButton("Click Me")); // Solution for your problem
для двух кнопок бок о бок в пределах элемента, вы можете принять этот подход
QWidget *dualPushButtons = new QWidget();
QHBoxLayout *hLayout = new QHBoxLayout();
hLayout->addWidget(new QPushButton("Button1"));
hLayout->addWidget(new QPushButton("Button2"));
dualPushButtons->setLayout(hLayout);
ui->treeWidget->setItemWidget(items.value(1),0,dualPushButtons);
вы можете приспособить это, добавляя свойства кнопок и т.д.
Большое спасибо, возможно ли иметь 2 кнопки в одном слоте? Как две маленькие кнопки рядом друг с другом в одном слоте/ячейке таблицы? –
Вы можете создать собственный виджет с двумя кнопками с расположением (макет), который вы хотите, а вместо QPushButton в вышеупомянутом решении вы можете добавить этот виджет 'ui-> treeWidget-> setItemWidget (items.value (1), 0, widgetWithTwoButtons); ' – techneaz
Можете ли это сделать чисто программно или я должен использовать дизайнер пользовательского интерфейса? –
- 1. Qt WIdget внутри ToolTip
- 2. Qt - QTableView - кнопка Clickable в строке таблицы
- 3. android widget listview clickable
- 4. qt drop event get widget
- 5. Qt QTreeWidget альтернатива IndexFromItem?
- 6. Кнопка onclick внутри всего clickable div
- 7. Reparenting Qt widget
- 8. Qt QTreeWidget сохранить колонки порядка
- 9. Значок нажмите на Qt QTreeWidget
- 10. Qt Quick vs. Qt Widget
- 11. android widget на Qt
- 12. Кнопка Flexible DataGrid clickable
- 13. Целая кнопка Clickable
- 14. Как добавить processBar внутри QTreeWidget cloum
- 15. Qt Action Dropdown Widget
- 16. QT Widget Pointer
- 17. QT Произвольное View Widget
- 18. Qt ballget widget mask
- 19. fscanf QT widget C++
- 20. Qt Widget с слайдером
- 21. Qt Color Picker Widget?
- 22. Qt Widget Overlays
- 23. qt - widget - positioning
- 24. Qt Widget Layout Фон
- 25. Qt GraphicsScene on Widget
- 26. Qt: Access Widget из основной функции и осуществлять кнопка выхода
- 27. Кнопка в ячейке таблицы clickable
- 28. Кнопка Clickable (или любой вид) внутри EditText в android
- 29. Как реализовать Clickable Widget для QListView?
- 30. Qt: Как исправить ширину столбца для QTreeWidget?
Рассмотрите возможность использования 'QTreeWidget :: setItemWidget()'. – vahancho
@ vahancho родителем в PushButton является QTreeWidgetItem, к которому я устанавливаю его или QTreeWidget? –
'QTreeWidgetItem' не может быть родителем для кнопки. Вы не устанавливаете родителя, поскольку документация говорит: '" Примечание: Дерево берет на себя ответственность за виджет. "'. – vahancho