Russian Qt Forum
Ноябрь 10, 2024, 21:04
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Пользовательский интерфейс (GUI)
>
Обязательно ли создание отдельного класса для каждой формы?
Страниц: [
1
]
2
3
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Обязательно ли создание отдельного класса для каждой формы? (Прочитано 16453 раз)
NetWorm
Гость
Обязательно ли создание отдельного класса для каждой формы?
«
:
Май 14, 2012, 19:38 »
Здравия всем! Вопрос такой! Есть например таблица. Там список сотрудников, и кнопки добавить, редактировать, удалить! При нажатии на первые 2 должна появится форма записи сотрудника, с соответствующими полями.. Таких похожих форм будет очень много! Вопрос обязательно ли для каждого ui файла создавать отдельный класс? т.е. помимо ui файла формы еще создавать .h и .cpp. Или же можно ui файл использовать прямо из текущего кода?
Записан
kambala
Джедай : наставник для всех
Offline
Сообщений: 4746
Re: Обязательно ли создание отдельного класса для каждой формы?
«
Ответ #1 :
Май 14, 2012, 20:15 »
можно, QUiLoader например
Записан
Изучением C++ вымощена дорога в Qt.
UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
Bepec
Гость
Re: Обязательно ли создание отдельного класса для каждой формы?
«
Ответ #2 :
Май 14, 2012, 21:20 »
Насколько я понял ТСса - он хочет сказать, что ему нужно много одинаковых форм...
Или же я совсем разучился понимать людей.
Записан
NetWorm
Гость
Re: Обязательно ли создание отдельного класса для каждой формы?
«
Ответ #3 :
Май 14, 2012, 21:31 »
Много мелких форм редактирования! Например добавление и редактирование сотрудника. Добавление и редактирование пользователей. Редактирование товара и прочих справочных данных... Как то не хочется для каждой мелкой формы писать свой класс. Хочется как-то оптимально чтоб все было. Например разные формы обрабатывались в одном классе!
Записан
iroln
Гость
Re: Обязательно ли создание отдельного класса для каждой формы?
«
Ответ #4 :
Май 14, 2012, 21:52 »
Класс должен выполнять одну единственную задачу. Если пихать в один класс обработку разных данных, такой код быстро превратится в лапшу и говнокод. Антипаттерн god object. У вас будет god form object.
ну или я не понимаю вашу идею.
Записан
kambala
Джедай : наставник для всех
Offline
Сообщений: 4746
Re: Обязательно ли создание отдельного класса для каждой формы?
«
Ответ #5 :
Май 14, 2012, 21:55 »
можно просто свой базовый класс-наследник виджета или диалога создать, а потом всё наследовать от него
Записан
Изучением C++ вымощена дорога в Qt.
UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
NetWorm
Гость
Re: Обязательно ли создание отдельного класса для каждой формы?
«
Ответ #6 :
Май 14, 2012, 22:00 »
Мне не хочется загромождать проект классами форм в которых будет по 2 метода init и save. Но сами формы внешне разные...
Записан
V1KT0P
Гость
Re: Обязательно ли создание отдельного класса для каждой формы?
«
Ответ #7 :
Май 14, 2012, 22:08 »
Цитата: NetWorm от Май 14, 2012, 22:00
Мне не хочется загромождать проект классами форм в которых будет по 2 метода init и save. Но сами формы внешне разные...
И куда-же будешь пихать валидацию данных?
Я бы наверно сделал класс который считывает параметры формы из xml. Правда чем больше разницы между логикой форм тем запутанее будет класс.
Записан
NetWorm
Гость
Re: Обязательно ли создание отдельного класса для каждой формы?
«
Ответ #8 :
Май 14, 2012, 22:11 »
т.е. Предлагаете для каждой формы делать отдельный класс?
Записан
V1KT0P
Гость
Re: Обязательно ли создание отдельного класса для каждой формы?
«
Ответ #9 :
Май 14, 2012, 22:25 »
Цитата: NetWorm от Май 14, 2012, 22:11
т.е. Предлагаете для каждой формы делать отдельный класс?
Нет, я же написал, один единственный класс. Логика которого задается xml файлом. В xml файле описание формы(ссылка на ui, валидаторы для полей, куда сохранять, откуда загружать и т.д.). Если у тебя действительно все очень похоже, то сможешь создавать новые формы не меняя ни одной строчки кода, просто добавить xml файл.
Записан
daimon
Гость
Re: Обязательно ли создание отдельного класса для каждой формы?
«
Ответ #10 :
Май 14, 2012, 23:05 »
Цитата: V1KT0P от Май 14, 2012, 22:25
Цитата: NetWorm от Май 14, 2012, 22:11
т.е. Предлагаете для каждой формы делать отдельный класс?
Нет, я же написал, один единственный класс. Логика которого задается xml файлом. В xml файле описание формы(ссылка на ui, валидаторы для полей, куда сохранять, откуда загружать и т.д.). Если у тебя действительно все очень похоже, то сможешь создавать новые формы не меняя ни одной строчки кода, просто добавить xml файл.
прикольная затея
а вот погугли ещё тут
http://www.learnqt.com/how-to-learn-qt/qt-bookvar/qt-designer-steps-more/
«
Последнее редактирование: Май 14, 2012, 23:14 от daimon
»
Записан
NetWorm
Гость
Re: Обязательно ли создание отдельного класса для каждой формы?
«
Ответ #11 :
Май 15, 2012, 09:02 »
Меня вдохновила сия программа
http://www.evolution-it.ru/files/KlatchSetup_Demo.exe
там в БД есть интересная таблица. "z_core" там хранится xml файл с описанием всего интерфейса... Вот что-то типа такого мне и нужно
Записан
daimon
Гость
Re: Обязательно ли создание отдельного класса для каждой формы?
«
Ответ #12 :
Май 15, 2012, 11:58 »
Цитата: NetWorm от Май 15, 2012, 09:02
Меня вдохновила сия программа
http://www.evolution-it.ru/files/KlatchSetup_Demo.exe
там в БД есть интересная таблица. "z_core" там хранится xml файл с описанием всего интерфейса... Вот что-то типа такого мне и нужно
на самый крайняк можно поменять всё содержимое формы, та где создаёшь её объект - через findChild, с XMLвсё равно получиться универсальн0))
Записан
NetWorm
Гость
Re: Обязательно ли создание отдельного класса для каждой формы?
«
Ответ #13 :
Май 15, 2012, 12:05 »
Короче я понял более универсально будет написать некий движок который будет строить формы на основании XML файла!!!
Записан
daimon
Гость
Re: Обязательно ли создание отдельного класса для каждой формы?
«
Ответ #14 :
Май 15, 2012, 12:07 »
Цитата: NetWorm от Май 15, 2012, 12:05
Короче я понял более универсально будет написать некий движок который будет строить формы на основании XML файла!!!
выложишь потом на обозрение?
далеко не отходи глянь как дизайнер генерит ui
Записан
Страниц: [
1
]
2
3
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
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 сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...