Russian Qt Forum
Ноябрь 01, 2024, 12:31
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Общие вопросы
>
[Решено] Динамическое создание переменных
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: [Решено] Динамическое создание переменных (Прочитано 3620 раз)
PulSar.CE3194694
Гость
[Решено] Динамическое создание переменных
«
:
Август 05, 2010, 12:13 »
Как сделать так, чтобы программа сама создавала переменные? Обычно их программист создает, но в моем случае это не подойдет (или я думаю неправильно).
Пример:
Создал вкладку - QWidget * tab = new QWidget; В самой программе на панельке есть кнопка, при нажатии на которую в окне создается вкладка. Количество вкладок изначально не указано, их может быть очень много (сколько раз нажал - столько и вкладок). В созданную вкладку программа вписывает определенные данные №1. Далее снова нажимаем на кнопку, создается еще одна вкладка, а в ней появляются данные №2 (данные берутся не с потолка, конечно. Я их до нажатия кнопки в диалоге вбиваю). Тем не менее, так не получается. Когда я перелистываю все вкладки, то обнаруживаю, что все данные в них одинаковые - такие же, как последние, которые вбил. В моем понимании это случилось, потому что мы вновь раз за разом создаем одну и туже переменную (виджет) tab, куда последовательно вводим значения. Значит, чтобы в каждой вкладке были разные данные, нужно чтобы создавалась своя переменная (виджет) для каждой вкладки (не tab, а tab_2 например), так ведь? Как это сделать?
Заранее спасибо.
«
Последнее редактирование: Август 24, 2010, 15:49 от PulSar.CE3194694
»
Записан
lit-uriy
Джедай : наставник для всех
Offline
Сообщений: 3880
Re: Динамическое создание переменных
«
Ответ #1 :
Август 05, 2010, 13:06 »
заведи себе список (QList) или словарь (QMap) туда и помещай данные.
Полезно посмотреть пример "Калькулятор", в нём много кнопок, а слот обработки нажатия кнопки один на все. Разберись, как там данная ситуация разруливается.
Записан
Юра.
lit-uriy
Джедай : наставник для всех
Offline
Сообщений: 3880
Re: Динамическое создание переменных
«
Ответ #2 :
Август 05, 2010, 13:07 »
>>нужно чтобы создавалась своя переменная
для этого кучу переменных-указателей не надо, надо только кучу объектов QWidget
Записан
Юра.
Amigo_sa
Гость
Re: Динамическое создание переменных
«
Ответ #3 :
Август 05, 2010, 15:37 »
Цитата: PulSar.CE3194694 от Август 05, 2010, 12:13
Значит, чтобы в каждой вкладке были разные данные, нужно чтобы создавалась своя переменная (виджет) для каждой вкладки (не tab, а tab_2 например), так ведь? Как это сделать?
Нарисуйте в дизайнере формочку - содержимое таба, сохраните как класс в вашем приложении и создавайте динамически сколько угодно. Каждый раз вам нужно будет заполнить поля формы, и поместить форму внутрь таба. Чтобы обращаться удобно к каждому табу - все созданные формы помещайте,к примеру, в список. Ну это уже от логики вашей программы зависит.
Записан
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...