Скрытие кнопки в QT
Как на QT сделать невидимым какой-нибудь объект, например кнопку?
pingvin1
11.08.04 18:11:44 MSD

Re: Скрытие кнопки в QT
Pi ★★★★★
( 11.08.04 19:11:03 MSD )
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум libreoffice impress скрытие элементов слайда (2011)
- Форум секретная кнопка фаерфокса (2011)
- Форум Кнопка скрыть/показать Tilda (2013)
- Форум Скрытые элементы window (2014)
- Форум Включить скрытие неактивной кнопки «Вперёд» (2012)
- Форум Кнопки копировать/вставить (2012)
- Форум [Debian] Network-manager не подключается к скрытому wi-fi (2011)
- Форум реквестую кнопку скрытия треда в трекере (2014)
- Форум кнопка скрыть все окна в KDE (2015)
- Форум Как скрыть кнопки прокрутки у QTreeView? (2014)
Как поменять цвет неактивной кнопки Qt Creator с++
Хотел изменить цвет кнопки когда она неактивна но столкнулся с проблемой что она не меняется. Пытался сделать через Qt Creator в настройках палитры, но ничего не вышло. Решил сделать через код создав палитру вручную в конструкторе окна, тот же результат. Код:
Database_add::Database_add(QWidget *parent) : QDialog(parent), ui(new Ui::Database_add) < ui->setupUi(this); QPalette m_pal; m_pal.setColor(QPalette::Inactive, QPalette::Button, QColor(240, 75, 78)); ui->imageButton->setPalette(m_pal); ui->imageButton->setEnabled(false); >

В итоге кнопка остаётся серой, цвет не изменился: Что делать в данной ситуации?
Отслеживать
3,504 6 6 золотых знаков 12 12 серебряных знаков 31 31 бронзовый знак
Qt как сделать кнопку неактивной
Бодрого времени суток.
Есть такая проблема, пишу слот для QPushButton, но программа вылетает с ошибкой:
void MainWindow::disable() < if (условие) Button->setDisabled(true); else Button->setEnable(true); >
Программа запускается и работает, до тех пор пока не дойдет до этого слота. Ругается имеенно на Button->setDisabled(true);
А задача — сделать кнопку неактивной.
Заранее спасибо.
| Tema_Crazzzy |
| Посмотреть профиль |
| Найти ещё сообщения от Tema_Crazzzy |
Форумчанин
Регистрация: 25.02.2009
Сообщений: 145
Хм. Я сам только начал изучать Qt, но, если я не ошибаюсь, все виджеты должны наследоваться от QWidget. Если я не прав, пожалуйста поправьте меня .
Ну если я правильно написал, то временно заблокировать слот можно с помощью blockSignals(true). Можно просто блокировать, а можно с определенным условием, уж как вам угодно.
Компьютеры бесподобны: за несколько минут они могут совершить такую грандиозную ошибку, какую не в состоянии сделать множество людей за многие месяцы.
Последний раз редактировалось Lunex.08; 14.11.2010 в 11:21 .
Форумчанин
Регистрация: 29.04.2010
Сообщений: 114
Да вы правы. Все виджеты наследуются от QWidget.
Когда я использую
button->blockSignals(true);
прога выпадает с той же самой ошибкой: SEGMENTATION FAIL
| Tema_Crazzzy |
| Посмотреть профиль |
| Найти ещё сообщения от Tema_Crazzzy |
Форумчанин
Регистрация: 25.02.2009
Сообщений: 145
Странно. Я только что попробовал этот метод — все работает. А у вас отсылающий сигналы класс унаследован от QObject?
И вообще можете весь проект выложить? Просто моих знаний не хватает сказать «налету». Может с проектом на руках чем-нибудь помогу.
Компьютеры бесподобны: за несколько минут они могут совершить такую грандиозную ошибку, какую не в состоянии сделать множество людей за многие месяцы.
Заблокирован
Регистрация: 20.07.2008
Сообщений: 4,033
Как вы пишете слот?
Сначала нужно в редакторе создать связь, потом написать описание и реализацию функции.
Qt как сделать кнопку неактивной
Профиль
Группа: Участник
Сообщений: 82
Регистрация: 18.2.2011
Репутация: нет
Всего: нет
Здравствуйте. Создал кнопку следующим образом:
| Код |
| initCameraAction = new QAction(QIcon(tr(«:/images/init_On1.svg»)), tr(«Camera initialization»), this); connect(initCameraAction, SIGNAL(triggered()), this, SLOT(initCamera())); |
| Код |
| connectToolBar->setObjectName(«camerainitialization»); connectToolBar->addAction(initCameraAction); |
как мне ее исходя из опр условия делать неактивной? Я знаю, что надо:
| Код |
| хз->setEnabled(false); |
так вот как мне мою кнопку вместо «хз» обозначить? пробовал имя объекта писать, но не катит, в доках не могу найти такого, как правильно?
| Дата 23.4.2011, 21:42 (ссылка) | (нет голосов) Загрузка . |
Профиль
Группа: Завсегдатай
Сообщений: 2505
Регистрация: 12.4.2007
Репутация: 23
Всего: 72
| Код |
| initCameraAction->setEnabled(false); |
Действие станет неактивным везде, где используется: toolBar, menu, обычные кнопки . — для этого и придуманы действия.
Когда действие добавляется в toolBar, туда добавляется кнопка, которой назначается это действие. Если нужен доступ непосредственно к кнопке, добавляй кнопку.
| Дата 23.4.2011, 22:23 (ссылка) | (нет голосов) Загрузка . |
Профиль
Группа: Участник
Сообщений: 82
Регистрация: 18.2.2011
Репутация: нет
Всего: нет
math64, спасибо, работает, конечно. теперь понял.
- В заголовке темы в квадратных скобках обозначьте используемую вами библиотеку, например: [QT],[GTK],[wx].
- Если вопрос актуален только для некоторой версии библиотеки, либо, если вы пользуетесь не самой последней версией, укажите это. Например: [QT4], [GTK2].
- Все начинающие изучать Qt — не забудьте зайти сюда.
- Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
- В вопросе укажите полную версию версию библиотеки, а также все дополнительные используемые программные пакеты.
- Не забывайте пользоваться кнопкой «Код».
- Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
- Новое сообщение должно иметь прямое отношение к тематике этого раздела. Флуд, флейм, оффтопик запрещены.
- Категорически запрещается обсуждение вареза, «кряков», взлома программ и т.д.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель.
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема » |
[ Время генерации скрипта: 0.1005 ] [ Использовано запросов: 21 ] [ GZIP включён ]