базовый класс для класса ui, ui базовый класс |
Здравствуйте, гость ( Вход | Регистрация )
базовый класс для класса ui, ui базовый класс |
zaytsewa |
5.5.2011, 5:45
Сообщение
#1
|
Студент Группа: Участник Сообщений: 55 Регистрация: 20.4.2011 Пользователь №: 2620 Спасибо сказали: 1 раз(а) Репутация: 0 |
Всем привет!
Есть 2виджета с одинаковой функциональностью, состоящие из qslider и нескольких меток, все различие в ориентации слайдеров. хочется сделать их на основе форм из дизайнера, но чтобы указатели на слайдер и метки были вынесены в базовый класс для обеих форм. это нужно для вынесения всей общей функциональности по работе с ui в отдельный класс какие есть способы реализации? |
|
|
wiz29 |
5.5.2011, 9:11
Сообщение
#2
|
Старейший участник Группа: Участник Сообщений: 600 Регистрация: 7.7.2010 Из: Санкт-Петербург Пользователь №: 1866 Спасибо сказали: 94 раз(а) Репутация: 12 |
а что мешает программно менять ориентацию слайдеров в нужном коде?
|
|
|
zaytsewa |
5.5.2011, 10:42
Сообщение
#3
|
Студент Группа: Участник Сообщений: 55 Регистрация: 20.4.2011 Пользователь №: 2620 Спасибо сказали: 1 раз(а) Репутация: 0 |
хочется использовать формочки, чтобы можно было их править в QtDesigner
|
|
|
Litkevich Yuriy |
5.5.2011, 11:28
Сообщение
#4
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
zaytsewa, суть проблемы не понял.
Если не понятно как можно использовать ui-файлы, то читай в астстенте: Using a Designer UI File in Your Application |
|
|
zaytsewa |
5.5.2011, 13:38
Сообщение
#5
|
Студент Группа: Участник Сообщений: 55 Регистрация: 20.4.2011 Пользователь №: 2620 Спасибо сказали: 1 раз(а) Репутация: 0 |
ui-файлы я использовать умею
суть вопросы в другом у меня для двух custom-виджетов есть общие свойства и методы т.е. если бы не разный тип UI, то можно было бы вынести весь этот общий функционал в один базовый класс и от него наследоваться чтобы получить возможность наследоваться я вижу только один выход - писать всё вручную и отказаться от использования конструктора, но это вариант использовать не хочется т.е. сейчас у меня есть hSlider.ui и vSlider.ui если отказаться от использования ui, то вместо них делаем ui_base_slider.h - общая часть и 2 других - ui_hSlider.h и ui_vSlider.h я хотела узнать есть ли какой-то другой способ например указать в файле *.ui, что базовым виджетом является не QWidget как обычно, а мой виджет, в котором прописаны нужные мне элементы (указатели на метку и ползунок) Потом на основе ui-шек я делаю классы HSlider и VSlider, им я делаю setupUI() - те самые сгенерированные классы если бы оба Ui_HSlider и Ui_VSlider наследовались от Ui_BaseSlider то я могла бы вынести почти всю функциональность по работе с ui в BaseSlider а в HSlider и VSlider оставить только создание ui |
|
|
Litkevich Yuriy |
6.5.2011, 7:04
Сообщение
#6
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
например указать в файле *.ui, что базовым виджетом является не QWidget как обычно, а мой виджет, да, так можно сделать в самом дизайнере, кладёшь на форму стандартный виджет (от которого унаследован твой) щёлкаешь правой кнопкой мыши по нему, в пункте "Promote to" ("Унаследован от") вводишь информацию о своём виджете. Но отображаться в дизайнере он будет как базовый виджет.
|
|
|
zaytsewa |
6.5.2011, 8:25
Сообщение
#7
|
Студент Группа: Участник Сообщений: 55 Регистрация: 20.4.2011 Пользователь №: 2620 Спасибо сказали: 1 раз(а) Репутация: 0 |
|
|
|
Litkevich Yuriy |
7.5.2011, 13:34
Сообщение
#8
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
|
|
|
Текстовая версия | Сейчас: 27.4.2024, 19:19 |