Форум программистов, компьютерный форум CyberForum.ru

Qt

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.83
Хулиган
85 / 80 / 12
Регистрация: 08.08.2012
Сообщений: 737
#1

Динамическое изменения содержимого виджета - C++ Qt

01.11.2013, 01:22. Просмотров 1581. Ответов 7
Метки нет (Все метки)

Читаю Qt 4.8 Шлее возможно что то упустил, допустим есть виджет с кнопкой, связываем кнопку со слотом который делает чтот вроде такого:

C++
1
2
3
4
5
6
7
8
void boom()
{
    QVBoxLayout* box = new QVBoxLayout;
    
    ...
    
    setLayout(box);
}
вместо ... создаем новые кнопки и добавляем их в layout , почему по нажатию на кнопку вместо нее не появляется содержимое нового layouta? или это через события делается?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.11.2013, 01:22     Динамическое изменения содержимого виджета
Посмотрите здесь:

Динамическое изменение размера составного виджета - C++ Qt
Всем доброго времени суток! Делаю составной виджет, виджет довольно простой и служит для настройки ступеней/стадий (добавление, удаление и...

QML - изменение содержимого формы по клику кнопки и виджета - C++ Qt
Доброго дня всем!!! стоит задача - на qml написать прогу, где есть возможность изменения содержимого формы на другое содержимое по клику по...

QTableWidget сигнал изменения виджета в ячейке - C++ Qt
Qt 4.8.4 Есть таблица QTableWidget данных на строчек 20 не более. В ячейки этой таблицы с помощью метода setCellWidget добавляю...

Как отследить окончание изменения размеров виджета - C++ Qt
Как отследить окончание изменения размеров виджета?

Отлов любого изменения содержимого QListWidget - C++ Qt
Доброго времени суток. В программе есть текстовое поле, QListWidget и 2 кнопки. Одна - берет из текстового поля текст и добавляет его...

Возврат цвета виджета - C++ Qt
есть виджет wdg необходимо выполнить проверку чтот вроде: if (wdg->XXX == Qt::red) {} что нужно добавить вместо ХХХ, чтобы...

Добавление виджета в QTreeWidget - C++ Qt
В чем ошибка? ptw = new QTreeWidget(); ptw->setColumnCount(1); QList<QTreeWidgetItem*> items; ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Elboy
131 / 112 / 4
Регистрация: 01.09.2012
Сообщений: 288
01.11.2013, 02:20     Динамическое изменения содержимого виджета #2
Цитата Сообщение от Хулиган Посмотреть сообщение
добавляем их в layout
лейауты не содержат виджеты, а упорядочивают. То, что вы сделали по нажатию кнопки, - это установили вертикальный лейаут на родительский виджет.

Если хотите добавить в родительский виджет новые кнопки, то добавьте их в родительский лейаут(если он, конечно, есть):
parentLayout->addWidget(pNewButton);
Хулиган
85 / 80 / 12
Регистрация: 08.08.2012
Сообщений: 737
01.11.2013, 02:37  [ТС]     Динамическое изменения содержимого виджета #3
Я имел ввиду что на виджете кнопка, при её нажатии она пропадает и появляются другие кнопки. Ну типо как в обычной программе нажимаем кнопку и попадаем уже на другую "страницу" с кнопками текстом и т.д. а главное окно остается
Elboy
131 / 112 / 4
Регистрация: 01.09.2012
Сообщений: 288
01.11.2013, 10:51     Динамическое изменения содержимого виджета #4
Удаляем нажатую кнопку, запихиваем в родительский лейаут новые кнопки.
Хулиган
85 / 80 / 12
Регистрация: 08.08.2012
Сообщений: 737
01.11.2013, 18:42  [ТС]     Динамическое изменения содержимого виджета #5
Цитата Сообщение от Elboy Посмотреть сообщение
Удаляем нажатую кнопку, запихиваем в родительский лейаут новые кнопки.
Это вообще правильный подход? Например есть кнопка "Опции", нажимаем и на этом же виджете появляются доступные опции. В реальных программах это реализуется с помощью удаления кнопок с главного виджета и добавление новых?
Elboy
131 / 112 / 4
Регистрация: 01.09.2012
Сообщений: 288
01.11.2013, 22:12     Динамическое изменения содержимого виджета #6
Цитата Сообщение от Хулиган Посмотреть сообщение
В реальных программах это реализуется с помощью удаления кнопок с главного виджета и добавление новых
да реализовать-то можно по-всякому

Цитата Сообщение от Хулиган Посмотреть сообщение
есть кнопка "Опции", нажимаем и на этом же виджете появляются доступные опции
QStackedWidget
Хулиган
85 / 80 / 12
Регистрация: 08.08.2012
Сообщений: 737
01.11.2013, 22:22  [ТС]     Динамическое изменения содержимого виджета #7
Цитата Сообщение от Elboy Посмотреть сообщение
да реализовать-то можно по-всякому
а как наиболее часто это делается? допустим на виджете отображаются флажки, я выбираю нужные, нажимаю кнопку далее и тут ооппп и на том месте, где были кнопки прорисовуются фигуры а под ними уже другие кнопки, т.е главное меню(типо приветствие, меняется на рисование фигур)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.11.2013, 22:33     Динамическое изменения содержимого виджета
Еще ссылки по теме:

Закрытие (Х) сиротки-виджета - C++ Qt
Что-то, видимо у меня в башке заступорилось. Вот я создаю виджет без папы. Показываю его (show()). Щелкаю по евойному крестику. И...

Рекурсия + отображение виджета - C++ Qt
есть объект кнопка и виджет и значение количества раз нажатий на кнопку, нужно создать рекурсивную функцию, которая в зависимости от...

QDialog два виджета - C++ Qt
Добрый день. Мне нужно чтобы когда я жму на кнопку Dog, открывалось еще одно меню с инфой о собаке. И когда я закрою это меню, ...

Сохранение свойств виджета - C++ Qt
Здравствуйте, Делаю программу для визуализаций (графики, карты и т.д.) данных. Данные хранятся в SQL базе. Для каждого проекта будет...

Установка виджета в QScrollArea - C++ Qt
Добрый день! Есть QScrollArea, есть виджет QLabel. #define MARGIN 8 QScrollArea * scrollArea = new QScrollArea(parent); ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Elboy
131 / 112 / 4
Регистрация: 01.09.2012
Сообщений: 288
01.11.2013, 22:33     Динамическое изменения содержимого виджета #8
как уже и было сказано - QStackedWidget. Мы ничего не удаляем, просто перелистываем виджеты.
Yandex
Объявления
01.11.2013, 22:33     Динамическое изменения содержимого виджета
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru