Нужно получить доступ к главной форме из класса наследника |
Здравствуйте, гость ( Вход | Регистрация )
Нужно получить доступ к главной форме из класса наследника |
RazrFalcon |
16.5.2011, 23:03
Сообщение
#1
|
Zombie Mod Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212 |
Пример:
Наследник QListWidget .h
.cpp
Затем в дизайнере "Promote to" и выбираю ListWidget. Не понятно как, в данном случае, передать удаленный текст из ListWidget в комбобокс на форме. Сообщение отредактировал RazrFalcon - 16.5.2011, 23:26
Прикрепленные файлы
|
|
|
Litkevich Yuriy |
17.5.2011, 5:37
Сообщение
#2
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
у класса ListWidget сделать сигнал, с параметром типа QString содержащий текст.
В родительском объекте (например, главном окне) соединяешь этот сигнал со специальным слотом, туда и будет передаваться текст. |
|
|
RazrFalcon |
17.5.2011, 13:34
Сообщение
#3
|
Zombie Mod Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212 |
Ого. Сначала ничего не понял. Никогда такого не делал.
Потом немного помучал и вышло! Пару вопросов возникло по поводу сигнало. 1) Я не должен описывать сигнал как функцию? Компилятор говорит что она уже определена в moc*. 2) Это правильное создание сигнала? Оно то работает, но мало ли.
PS: намекающие ответы рулят! |
|
|
Rocky |
17.5.2011, 14:39
Сообщение
#4
|
Старейший участник Группа: Участник Сообщений: 530 Регистрация: 22.12.2008 Из: Санкт-Петербург Пользователь №: 463 Спасибо сказали: 22 раз(а) Репутация: 7 |
Зачем ему давать возвращаемое значение? Так тогда уж
Если нужно чтоб обратно что-то передавалось, то генерь в конце слота еще один сигнал, и соединяй его со слотом того класса, которому он нужен. |
|
|
RazrFalcon |
17.5.2011, 16:51
Сообщение
#5
|
Zombie Mod Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212 |
А в чем разница? QString -> void - это понятно, недосмотрел. Сообщение отредактировал RazrFalcon - 17.5.2011, 16:52 |
|
|
Rocky |
17.5.2011, 19:31
Сообщение
#6
|
Старейший участник Группа: Участник Сообщений: 530 Регистрация: 22.12.2008 Из: Санкт-Петербург Пользователь №: 463 Спасибо сказали: 22 раз(а) Репутация: 7 |
Если вопрос заключается в чем вообще разница, то идти читать Страуструпа (что такое передача значений по ссылке, а что такое по значению).
Если вопрос конкретно про QString - то ни в чем. Тогда читать про qt implicit sharing. |
|
|
RazrFalcon |
17.5.2011, 20:18
Сообщение
#7
|
Zombie Mod Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212 |
Ушол читать.
|
|
|
Litkevich Yuriy |
19.5.2011, 7:13
Сообщение
#8
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
1) Я не должен описывать сигнал как функцию? Компилятор говорит что она уже определена в moc*. только объявить, реализацией функции-сигнала занимается мета-объектный компилятор (moc)Зачем ему давать возвращаемое значение? да, этого лучше избегать, т.к. это не документированная возможность
|
|
|
Текстовая версия | Сейчас: 28.12.2024, 5:33 |