Изменение одного виджета через другой, QMainWidget + QDialog |
Здравствуйте, гость ( Вход | Регистрация )
Изменение одного виджета через другой, QMainWidget + QDialog |
QTchaynik |
3.3.2012, 11:55
Сообщение
#1
|
Новичок Группа: Новичок Сообщений: 5 Регистрация: 3.3.2012 Пользователь №: 3246 Спасибо сказали: 0 раз(а) Репутация: 0 |
Имеется главная форма mainwidget.ui с label1 и диалог dialog.ui c label2 и кнопками "ok" и "cansel"
В диалоге пользователь меняет шрифт label2 через FontDialog и подтверждает кнопкой "ok". Как сделать, чтобы при нажатии кнопки "ok" на диалоге, менялся шрифт label1 на главной форме? в dialog.cpp
PS начинающий QT и С++, заранее благодарю |
|
|
RazrFalcon |
3.3.2012, 12:40
Сообщение
#2
|
Zombie Mod Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212 |
1) По нажатию "Ок" в дочернем окне оно закрывается, а потом уже меняется шрифт? Тогда:
2) Если у вас дочернее окно не закрывается, а как бы аналог "Apply". То есть изменения вступают в силу сразу же. То в конструктор класса MyDialog добавьте ссылку на MainWindow, как то так:
Оба варианта уже 100 раз поднимались на этом форуме, в поиске много примеров. |
|
|
QTchaynik |
3.3.2012, 18:18
Сообщение
#3
|
Новичок Группа: Новичок Сообщений: 5 Регистрация: 3.3.2012 Пользователь №: 3246 Спасибо сказали: 0 раз(а) Репутация: 0 |
первый нужный вариант не работает, выдает ошибку
ошибка: 'class MyDialog' has no member named 'newFont' и при чем здесь чекбокс? если шрифт от лэйбла нужен |
|
|
RazrFalcon |
3.3.2012, 19:43
Сообщение
#4
|
Zombie Mod Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212 |
чекбокс -> ваш диалог шрифотов (попутал)
ну правильно, я же написал "newFont - это публичная функция класса MyDialog" создайте в MyDialog функцию QString newFont(); которая будет выглядеть так: QString MyDialog::newFont() { return string; // string содержит назание щрифта, который вы выбрали, задаете сами. } |
|
|
QTchaynik |
4.3.2012, 15:34
Сообщение
#5
|
Новичок Группа: Новичок Сообщений: 5 Регистрация: 3.3.2012 Пользователь №: 3246 Спасибо сказали: 0 раз(а) Репутация: 0 |
Все равно не работает
|
|
|
QTchaynik |
6.3.2012, 19:29
Сообщение
#6
|
Новичок Группа: Новичок Сообщений: 5 Регистрация: 3.3.2012 Пользователь №: 3246 Спасибо сказали: 0 раз(а) Репутация: 0 |
Правильнее было:
|
|
|
Текстовая версия | Сейчас: 29.11.2024, 8:23 |