Russian Qt Forum
Ноябрь 24, 2024, 19:31 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Как определить,что курсор мыши попал в область кнопки?  (Прочитано 14493 раз)
Germiona
Гость
« : Май 15, 2008, 12:27 »

При наведении курсора мыши на кнопку,кнопка должна поменять цвет...Как это можно реализовать?Из сигналов нашла только клик,двойной клик и отпускание мыши. Неужели только через event?
Записан
Vl@domir
Гость
« Ответ #1 : Май 15, 2008, 12:42 »

При наведении курсора мыши на кнопку,кнопка должна поменять цвет...Как это можно реализовать?Из сигналов нашла только клик,двойной клик и отпускание мыши. Неужели только через event?

Тоже только начал осваивать Qt, кроме как через event не вижу как это реализовать
Записан
chipset
Гость
« Ответ #2 : Май 15, 2008, 13:46 »

можно через css :hover
Записан
Vl@domir
Гость
« Ответ #3 : Май 15, 2008, 13:49 »

можно через css :hover

Вопрос от новичка: А что значит CSS?  Улыбающийся
Записан
Germiona
Гость
« Ответ #4 : Май 15, 2008, 13:56 »

Цитировать
Вопрос от новичка: А что значит CSS?

CSS -  каскадные таблицы стилей

Цитировать
можно через css :hover

а попроще никак нельзя?  Улыбающийся не хотелось бы еще CSS вмешивать

Если через event()...
То это получается надо перезаписать медот enterEvent(),но ведь у меня просто кнопка,а не класс....как поймать это событие - наведение мыши на конкретную кнопку?
Записан
pastor
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 2901



Просмотр профиля WWW
« Ответ #5 : Май 15, 2008, 14:02 »

Цитировать
Вопрос от новичка: А что значит CSS?

CSS -  каскадные таблицы стилей

Цитировать
можно через css :hover

а попроще никак нельзя?  Улыбающийся не хотелось бы еще CSS вмешивать

Если через event()...
То это получается надо перезаписать медот enterEvent(),но ведь у меня просто кнопка,а не класс....как поймать это событие - наведение мыши на конкретную кнопку?

Можно поставить эвент фильтр на эту кнопку и отловить нужное событие.
Записан

Integrated Computer Solutions, Inc. (ICS)
http://www.ics.com/
Germiona
Гость
« Ответ #6 : Май 15, 2008, 15:34 »

Все получилось через фильтр, спасибо  Улыбающийся
Записан
em
Гость
« Ответ #7 : Май 15, 2008, 21:14 »

Все получилось через фильтр, спасибо  Улыбающийся
to Germiona а можно пожалуйста простенький пример с кнопкой которая меняет цвет? =)
Записан
chipset
Гость
« Ответ #8 : Май 16, 2008, 06:26 »

можно через css :hover

Вопрос от новичка: А что значит CSS?  Улыбающийся
ну вот пример, если в  дизайнере на кнопке правой кнопко и change style sheet ..
и там накалякать
:hover{
   background-color: qlineargradient(spread:reflect, x1:0.510526, y1:0.575, x2:0.5, y2:0, stop:0 rgba(18, 18, 18, 255), stop:1 rgba(134, 134, 134, 255));
}

с помощью css можно столько красявостей делать..  Строит глазки
Записан
Germiona
Гость
« Ответ #9 : Май 16, 2008, 12:00 »

Цитировать
to Germiona а можно пожалуйста простенький пример с кнопкой которая меняет цвет? =)


Пожалуйста  Улыбающийся :

Код:

QPushButton *funcButton = new QPushButton("Функциональные клавиши",this);
funcButton->installEventFilter(this);
...
bool MainWindow::eventFilter(QObject *o, QEvent *e)
{
    if(o == funcButton){
    if(e->type() == QEvent::Enter) {
    funcButton->setPaletteBackgroundColor(Qt::red);
        return true;
    }
    if(e->type() == QEvent::Leave) {
    funcButton->setPaletteBackgroundColor(eraseColor());
        return true;
    }    
   
    }
       
    return QMainWindow::eventFilter(o, e);

}

Примерно так  Улыбающийся
Записан
Vl@domir
Гость
« Ответ #10 : Май 16, 2008, 12:54 »

Добрый день.
Я хочу Background диалога заполнять определённым рисунком, в Дезайнере для диалога выбираю change styleSheet и устанавливаю рисунок для background-image, НО после этого этот рисунок делается Background'ом для каждого элемента на этом диалоге. Как бы этого избежать?  Непонимающий
« Последнее редактирование: Май 16, 2008, 12:58 от Vl@domir » Записан
Vl@domir
Гость
« Ответ #11 : Май 16, 2008, 13:13 »

Добрый день.
Я хочу Background диалога заполнять определённым рисунком, в Дезайнере для диалога выбираю change styleSheet и устанавливаю рисунок для background-image, НО после этого этот рисунок делается Background'ом для каждого элемента на этом диалоге. Как бы этого избежать?  Непонимающий

Почитал Assistant и нашел ответ.  Строит глазки Вопрос снят.
Записан
em
Гость
« Ответ #12 : Май 16, 2008, 19:15 »

Germiona, chipset большле спасибо за примеры! =))
Записан
em
Гость
« Ответ #13 : Май 18, 2008, 19:12 »

Кстати css прикольная тема =)
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.053 секунд. Запросов: 23.