| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets > Инверсия фона PushButton |
| Автор: plica98 8.2.2013, 12:12 |
| Добрый день, Qt-шники. Нужна ваша консультация. Есть кнопочная панель 16х16 (компоновка табличного размещения pgrLayout - своего рода калькулятор). Кнопки пронумерованы 1, ... 256 (текст кнопки). Каждая кнопка должна задавть двоичное значение 1 или 0. Каждое нажатие кнопки инвертирует ее значение 1/0. Хотел текущее значение кнопки (1/0) показывать либо цветом фона, либо цветом текста кнопки. Но измениь цвет фона (текста) с помощью QPalette что-то не получается. Возможно ли это ? Может что-то не так делаю ? Тогда как? Подскажите. Заранее благодарю за помощь. |
| Автор: Amp 8.2.2013, 14:53 |
| Почему бы QPushButton просто не сделать checkable? |
| Автор: plica98 8.2.2013, 15:00 |
И что мне это даст? |
| Автор: Amp 8.2.2013, 15:13 |
| Это даст то, что кнопка сможет фиксировать свое нажатое состоение. В итоге у нее будет два состояния - нажат и отжата. |
| Автор: _GRIN_ 8.2.2013, 17:56 | ||||
Самый простой вариант через StyleSheet
Можно конечно отлавливать клик (что бы чекабл не делать) и там через палтиры рулить. Но лично я с палитрами каждый раз заново эксперементирую, т.к. они в частности зависят от QPalette::BackgroundRole, который может от родительского виджета наследоваться и т.д. - я бы не советовал =) |