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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Как программно сделать клик на QPushButton  (Прочитано 4523 раз)
Martiro
Гость
« : Апрель 07, 2009, 10:14 »

Есть кнопка. Нужно из функции съэмитировать ее нажатие.
Делаю:
Код
C++ (Qt)
emit pbMove->clicked()
Не собирается, пишет
Код
C++ (Qt)
void QButton::clicked() is protected

как сделать? Строит глазки
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #1 : Апрель 07, 2009, 10:31 »

emit pbMove->clicked()
ты не можешь посылать чужие сигналы. ты можешь пользоваться чужой либо функцией либо слотом
Записан

Юра.
Khs
Гость
« Ответ #2 : Апрель 07, 2009, 10:31 »

Цитировать
void QAbstractButton::click ()   [slot]

Performs a click.
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #3 : Апрель 07, 2009, 10:33 »

посмотри слот:
void QButton::animateClick () [slot]


2 log1c, у него Qt3
Записан

Юра.
Khs
Гость
« Ответ #4 : Апрель 07, 2009, 10:34 »

sorry guys Улыбающийся Но главное суть! Ибо click он и в африке click Улыбающийся
Записан
igor_bogomolov
Гость
« Ответ #5 : Апрель 07, 2009, 10:45 »

Есть кнопка. Нужно из функции съэмитировать ее нажатие.

Может лучше так Улыбающийся
Код
C++ (Qt)
QMouseEvent event(QEvent::MouseButtonPress, QPoint(0,0), Qt::LeftButton, 0, 0);
QApplication::sendEvent(pbMove, &event);
Записан
Martiro
Гость
« Ответ #6 : Апрель 07, 2009, 12:00 »

посмотри слот:
void QButton::animateClick () [slot]


2 log1c, у него Qt3
спасибо. сработало.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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