Поменять цвет у кнопки
Здравствуйте. Я начинающий программист(студент). Прошу помочь. Мне дали доп задание, ломаю голову как его сделать. звучит так: Должна быть кнопка(button) , которая будет менять цвет. 4 нажатиия — 4 цвета(красный, зелёный , жёлтый , синий) и так будет повторяться в той же последовательности, до 16 нажатий, после чего программа закроется.
Вот что пока что смог написать — просто меняет 2 цвета.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
#include "mainwindow.h" #include "ui_mainwindow.h" MainWindow:: MainWindow(QWidget * parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); } MainWindow:: ~MainWindow() { delete ui; } void MainWindow:: on_pushButton_clicked() { QPushButton *button =static_castQPushButton*>(sender()); { { if (state == 0) { button -> setStyleSheet("background-color:red"); button -> SetProperty("currentState", 1) } else { button -> setStyleSheet("background-color:green"); button -> SetProperty("currentState", 0); } } }}
Qt. Изменение цвета кнопки на заданный цвет
Спасибо) а если будет background-color и еще какое-то поле, например: background-color: %1; поле: %2, как задать значения %1 и %2?
14 июн 2022 в 13:51
@Nedaxses .arg(. ).arg(. ), или .arg(v1,v2. ) doc.qt.io/qt-6/qstring.html
14 июн 2022 в 15:13
- c++
- qt
- qt5
- qss
-
Важное на Мете
Похожие
Подписаться на ленту
Лента вопроса
Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.
Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.10.27.43697
Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.
Как изменить цвет кнопки qt c
Профиль
Группа: Участник
Сообщений: 772
Регистрация: 15.4.2007
Репутация: нет
Всего: 0
Код |
QPalette pal=ui->name_vidget->palette(); pal.setColor(QPalette::param1, QPalette::param2, Qt::green); ui->name_vidget ->setPalette(pal); |
почему цвет виджета не меняется, если:
1. name_vidget=pushButton param1=Active param2=Button
2. name_vidget=label param1= Active param2= Text
3. name_vidget=lineEdit/comboBox param1= Active param2= Base/Text — все работает верно, а чем тогда label хуже (в вар.2 цвет текста у лейбла не меняется)?
Мне надо поменять цвет кнопки…думал, что вар-т 1, а не получается….в чем ошибка и как будет правильно?
Профиль
Группа: Участник
Сообщений: 772
Регистрация: 15.4.2007
Репутация: нет
Всего: 0
и все-таки — как поменять цвет кнопки? что у меня в коде (см. выше) неверно/не хватает?
Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону
Репутация: 48
Всего: 135
Код |
pushBtn->setStyleSheet( » background-color: green; » ); |
вообще сами qt-шники советуют использовать styleSheet
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
Профиль
Группа: Участник
Сообщений: 772
Регистрация: 15.4.2007
Репутация: нет
Всего: 0
borisbn: спасибо за ответ, но почему в Вашем примере зеленый такой темный? Qt::green гораздо светлее (см. мой вар-т №3 выше). мне светлый нужен (вроде наз-ся Qt::green, а на самом деле салатовый).
и почему все-таки с палитрой (как я хотел выше) не получается?
Это сообщение отредактировал(а) gordmiand — 28.2.2010, 12:16
Профиль
Группа: Завсегдатай
Сообщений: 2481
Регистрация: 18.9.2006
Репутация: 81
Всего: 91
Открой дизайнер, выдели label на виджете и в свойствах объекта найди Palette, экспериментируй там.
Национальная группа Russian Federation на QtCentre.
- В заголовке темы в квадратных скобках обозначьте используемую вами библиотеку, например: [QT],[GTK],[wx].
- Если вопрос актуален только для некоторой версии библиотеки, либо, если вы пользуетесь не самой последней версией, укажите это. Например: [QT4], [GTK2].
- Все начинающие изучать Qt — не забудьте зайти сюда.
- Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
- В вопросе укажите полную версию версию библиотеки, а также все дополнительные используемые программные пакеты.
- Не забывайте пользоваться кнопкой «Код».
- Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
- Новое сообщение должно иметь прямое отношение к тематике этого раздела. Флуд, флейм, оффтопик запрещены.
- Категорически запрещается обсуждение вареза, «кряков», взлома программ и т.д.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель.
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема » |
[ Время генерации скрипта: 0.2276 ] [ Использовано запросов: 21 ] [ GZIP включён ]
Как в QML поменять цвет кнопки Button?
Но когда я использую такой тип, внешний вид кнопки сильно меняется:
- Кнопка сплющивается раза в полтора по высоте
- Иконка (задаваемая через iconSource) начинает прилипать к тексту надписи, вместо того чтобы находиться в левой части кнопки
Вопрос: как поменять цвет кнопки, не затрагивая ничего другого?
We recommend hosting TIMEWEB
Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting.
Subscribe to the discussion 4
Section subscription 96
Do you like it? Share on social networks!