Qt: обновить несколько значений одним нажатием кнопки - PullRequest
0 голосов
/ 26 июня 2011

У меня проблема с механизмом сигналов и слотов Qt.Суть проблемы здесь:

Мое приложение состоит из 2 классов:

MainGUI : этот класс обладает всеми основными функциями приложения и имеет некоторые переменныекоторые хранят значения, относящиеся к приложению.

Предпочтения : Этот класс используется для рисования и отображения панели «Настройки» и имеет поля редактирования строки для обновления переменных в MainGUI (используя Signal-Механизм слотов)

В настоящее время я подключил их следующим образом:

Preferences *Pref;
MainGUI *M;
.
.
.
connect(Pref, SIGNAL(pref_varAChanged(QString)), M, SLOT(setVarA(QString)));
connect(Pref, SIGNAL(pref_varBChanged(QString)), M, SLOT(setVarB(QString)));
connect(Pref, SIGNAL(pref_varCChanged(QString)), M, SLOT(setVarC(QString)));
.
.
.

Но эта часть состоит в том, что КАК МОЖНО изменить значения, переменные обновляются, даже еслия не нажимал кнопку «ПРИМЕНИТЬ» (или эквивалентную кнопку ПРИНЯТЬ ...)

Пожалуйста, помогите мне в реализации этой функции, чтобы значения A, B, C обновлялись только тогда, когда кнопка, скажем, btn_acceptщелкают ...

PS: я знаю, что это кажется очень простой проблемой, и она должна быть длиной всего в несколько строк, но я пытался ее решить и каждый раз бил стенувремя.Буду признателен, если кто-нибудь укажет мне правильное направление

1 Ответ

0 голосов
/ 27 июня 2011

Ну, похоже, я понял проблему. Это был просто вопрос генерации сигналов «variableChanged», когда была нажата кнопка «ПРИНЯТЬ». Это обновит переменные в классе MainGUI.

Кажется, я нашел решение (прочитайте мой комментарий), но я неправильно прочитал вывод, который дала моя программа, поэтому я не понял, что решил проблему намного позже.

Спасибо всем за ваши комментарии. Мне жаль, что это оказалось пустой тратой времени.

С уважением,

Грубое

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...