Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: zavulon от Сентябрь 30, 2008, 14:57



Название: Изменение цвета текста для QAction
Отправлено: zavulon от Сентябрь 30, 2008, 14:57
Кто знает как изменить цвет текста на кнопке тулбара, которая создается через QAction?


Название: Re: Изменение цвета текста для QAction
Отправлено: spirit от Сентябрь 30, 2008, 15:06
через QFont можно. или через style sheet.


Название: Re: Изменение цвета текста для QAction
Отправлено: ритт от Сентябрь 30, 2008, 18:04
завулону:

QAction - контейнтер с информацией о том, какую информацию о действии преподнести пользователю и как пользователь может использовать это действие.
QToolButton - виджет - один из методов, повзоляющих пользователю взаимодействовать (с программой) посредством предопределённых действий.
теперь если включить логику, где надо менять цвет шрифта: в QAction или в QToolButton? :)

думаю, самым простым будет применить определённую схему стилей на QToolBar, который и создаёт QToolButton'ы по описаниям...


Название: Re: Изменение цвета текста для QAction
Отправлено: zavulon от Октябрь 03, 2008, 14:49
Мне нужна очень простая вещь. Несколько QAction добавляются в тулбар, соответственно тулбар создает кнопки. Хочу, чтобы текст на кнопках был определенных цветов.

Еще задолго до того, как задал вопрос, лазил в свойствах QAction, хотел найти как установить цвет шрифта. До сих пор не нашел. Проскальзывали возможности где-то поменять foreground role или что-то около того - но foreground role оказалось совсем не тем, что нужно.

У QAction есть возможность получить виджет, который является визульным представлением данного действия. Так я даже не могу найти как же у QToolButton поменять этот цвет. В QFont тоже нет цвета. Просто разочарование какое-то.


Название: Re: Изменение цвета текста для QAction
Отправлено: ритт от Октябрь 03, 2008, 22:07
спирит, твой ход :)
я не в духе объяснять зачем/почему так сделано...


Название: Re: Изменение цвета текста для QAction
Отправлено: spirit от Октябрь 03, 2008, 22:15
в акции никак цвет не поменяешь, т.к. это не виджет (как выше говорил Константин).
что же касается QToolButton'а , то можно через QPalette поменять либо же через Qt style sheets.
для задания цвета текста в QToolButton через палитру см.QPalette::ButtonText,
для задания цыета текста в QToolButton через Qt style sheet см.Qt style sheets::Customizing QToolButton.