Можно ли просто указать изменение какого-либо свойства элемента управления Qt путем изменения значения определенной пользователем переменной (выполнить действие по изменению значения). Например. Я объявил int a
который часто используется несколькими функциями. Теперь мне нужно построить отношение: if ( a == 0 ) then
мой контроль неактивен else
мой контроль активен. (Меня вдохновили привязки данных C #.)
В Qt элементы управления включаются / отключаются с помощью QWidget :: setEnabled. Что вам нужно сделать, это создать подкласс, из которого будут получены все ваши графические окна, в котором вы определяете функцию, которая устанавливает эту переменную и вызывает setEnabled. Как это:
class Widget : public QWidget
{
...
MySetEnabled(bool b)
{
a = b;
setEnabled(b);
}
int a;
};
В ваших методах доступа генерируется сигнал, который подключается к действиям, которые вам нравятся.