Здравствуйте, гость ( Вход | Регистрация )
Гость_xrc2_* | Дата 21.4.2010, 10:13 |
хм, ну просто вызови соответствующий метод виджета: button->setDisabled(bool) ?? Лишь бы ляпнуть? Ты случаем не истонец? Ладно проехали тема закрыта! |
|
Litkevich Yuriy | Дата 20.4.2010, 23:29 |
хм, ну просто вызови соответствующий метод виджета: button->setDisabled(bool) ?? которые не издают сигналы, а менять измениться могут в любое время? переменные сами по себе не меняются, их кто-то меняет, кто этот кто-то? |
|
xrc2 | Дата 20.4.2010, 21:29 |
А в QT я заметил только такую реализацию: Ставиться QTimer и в колбэке отвечу в обратном порядке, в Qt почти не используются колбэки, я посидев на Qt, уже в буквальном смысле шарахаюсь, от систем разработки в которых нет слотов/сигналов.Я хочу динамически делать кнопку disable если чекбокс нажат (это просто пример таких элементов может быть множество). это делается с помощью слотов и сигналов это ВЕСЬ(!) кодПосмотри учебные пособия Да нет, дело не в этом... Хорошо немного изменим задачу: А если мне захочется изменить состояние кнопки (disable\enable) в зависимости от переменной или от переменных, которые не издают сигналы, а менять измениться могут в любое время? |
|
Litkevich Yuriy | Дата 20.4.2010, 20:33 |
А в QT я заметил только такую реализацию: Ставиться QTimer и в колбэке отвечу в обратном порядке, в Qt почти не используются колбэки, я посидев на Qt, уже в буквальном смысле шарахаюсь, от систем разработки в которых нет слотов/сигналов.Я хочу динамически делать кнопку disable если чекбокс нажат (это просто пример таких элементов может быть множество). это делается с помощью слотов и сигналов это ВЕСЬ(!) кодПосмотри учебные пособия |
|
xrc2 | Дата 20.4.2010, 19:22 |
заметил что здесь реализация UI свойств делается путем создания таймера, не понял, что за свойства и какова связь с таймером Допустим у меня на форме кнопка и чекбокс. Я хочу динамически делать кнопку disable если чекбокс нажат (это просто пример таких элементов может быть множество). В wxWidgets решается это таким образом: На кнопку регистрируется event аля wxUpdateUIEvent, а в колбэке этого ивента я проверяю нажат ли чекбокс или нет и соответственно делаю disable\enable кноки. А в QT я заметил только такую реализацию: Ставиться QTimer и в колбэке таймера проверяются все элементы которым нужно динамически изменять свойства, в моем случае это кнопка (disable\enable). |
|
Litkevich Yuriy | Дата 20.4.2010, 19:01 |
нет в Qt нет никакого упреждающего события. А просто событие рисования: QWidget::paintEvent(), реализация конкретного наследника этого базового виджета (визуального компонента) в этом методе осуществляет рисование на "устройстве рисования (QPaintDevice)" c помощью QPianter'а Установку состояний виджета можно производить в любое время методами: QWidget::show() QWidget::hide() QWidget::setEnabled(bool) QWidget::setDisabled(bool) заметил что здесь реализация UI свойств делается путем создания таймера, не понял, что за свойства и какова связь с таймером |
|
xrc2 | Дата 20.4.2010, 18:47 |
У wxWidgets перед тем как рисовать объект библиотека шлет wxUpdateUIEvent в котором можно динамически выставить disable\enable\visible\hide для объекта. Существует ли такая такая модель в QT? Просмотрел много кода в QT и заметил что здесь реализация UI свойств делается путем создания таймера, опрашивая каждую единицу времени состояние объекта - это конечно не так уж и плохо, может даже и удобно, но может есть и другие варианты на эту тему? |
|
Просмотр темы полностью (откроется в новом окне) | |
![]() |
Текстовая версия | Сейчас: 12.2.2025, 16:49 |