Название: отловить клик на QLineEdit Отправлено: BuRn от Ноября 20, 2011, 19:05 Собственно как , если делаю
QLineEdit *w = (QLineEdit *)sender(); w->clear(); приложение вылетает Название: Re: отловить клик на QLineEdit Отправлено: Пантер от Ноября 20, 2011, 19:15 Значит, sender не QLineEdit.
И делай правильный каст: QLineEdit *w = qobject_cast <QLineEdit *> (sender()); Q_CHECK_PTR (w); Название: Re: отловить клик на QLineEdit Отправлено: BuRn от Ноября 20, 2011, 19:19 да затупил, сигнал отдает баттон, вот после того как по баттону сделали клик , нужно как-то отловить QLineEdit который в фокусе
Название: Re: отловить клик на QLineEdit Отправлено: Пантер от Ноября 20, 2011, 19:20 Это сложновато сделать - при клике на кнопку, фокус будет у нее.
Название: Re: отловить клик на QLineEdit Отправлено: BuRn от Ноября 20, 2011, 19:22 ммм, какие тогда есть решения
Название: Re: отловить клик на QLineEdit Отправлено: BuRn от Ноября 20, 2011, 19:24 не знаю будет ли работать, но если сделать обработчик на lineEdit как только в него кликнули. запомнить объект, после обработчик на баттон берет объект и делает его clear, прокатит ?
Название: Re: отловить клик на QLineEdit Отправлено: Пантер от Ноября 20, 2011, 19:28 Попробуй заюзать
QWidget * QWidget::focusWidget () const Может, поможет. Название: Re: отловить клик на QLineEdit Отправлено: andrew.k от Ноября 20, 2011, 19:29 думаю, если мы узнаем, что нужно получить, может оказаться, что не требуются подобные извращения.
Очередной хитроумный интерфейс? Название: Re: отловить клик на QLineEdit Отправлено: BuRn от Ноября 20, 2011, 19:31 Попробуй заюзать пробовал, не поможет QWidget * QWidget::focusWidget () const Может, поможет. добавляю к примеру inputPanel функцию очистки всего lineEdita если быть точным Название: Re: отловить клик на QLineEdit Отправлено: andrew.k от Ноября 20, 2011, 19:33 так у тебя ж кнопка "очистить" и сам lineEdit на разных формах должен быть, на сколько я понимаю?
Тогда проблемы не должно быть. Название: Re: отловить клик на QLineEdit Отправлено: BuRn от Ноября 20, 2011, 19:35 к примеру , 2 лайн эдита , на 1 форме . тыкаю на первый лайн эдит , вываливается окошко , при нажатии на кнопку очистить должно очистится тот лайн эдит на который тыкнули, вот так
Название: Re: отловить клик на QLineEdit Отправлено: andrew.k от Ноября 20, 2011, 19:37 к примеру , 2 лайн эдита , на 1 форме . тыкаю на первый лайн эдит , вываливается окошко , при нажатии на кнопку очистить должно очистится тот лайн эдит на который тыкнули, вот так Кнопка "очистки" на "вываливающемся окошке"?Название: Re: отловить клик на QLineEdit Отправлено: BuRn от Ноября 20, 2011, 19:38 да
Название: Re: отловить клик на QLineEdit Отправлено: andrew.k от Ноября 20, 2011, 20:01 да Тогда в чем вообще проблема?Название: Re: отловить клик на QLineEdit Отправлено: BuRn от Ноября 20, 2011, 20:02 в получении самого этого lineEdit - а
Название: Re: отловить клик на QLineEdit Отправлено: andrew.k от Ноября 20, 2011, 20:03 в получении самого этого lineEdit - а А каким образом кнопка 1 добавляет в текущий лайнедит единицу?Ты разобрался? Название: Re: отловить клик на QLineEdit Отправлено: BuRn от Ноября 20, 2011, 20:09 да , через Event и QKeyEvent
Название: Re: отловить клик на QLineEdit Отправлено: andrew.k от Ноября 20, 2011, 20:14 да , через Event и QKeyEvent а кому посылается этот евент? и как? разобрался?Название: Re: отловить клик на QLineEdit Отправлено: BuRn от Ноября 20, 2011, 20:17 QPointer<QWidget> w = focusWidget();
собственно ему и посылается просто хз как туда же послать событие очистки всего lineEdita или я чот не то разобрался Название: Re: отловить клик на QLineEdit Отправлено: andrew.k от Ноября 20, 2011, 20:23 ты уже во втором сообщении получил ответ на свой вопрос.
Посылать сообщение не нужно. Нужно просто вызвать метод clear() Название: Re: отловить клик на QLineEdit Отправлено: BuRn от Ноября 20, 2011, 20:25 а можно пример, со своим случаем я сам разберусь теперь, спасибо, мне бы простой примерчик какой-нибудь
Название: Re: отловить клик на QLineEdit Отправлено: BuRn от Ноября 20, 2011, 20:27 просто так то что бы его вызвать нужно знать объект, на который он будет вызываться
Название: Re: отловить клик на QLineEdit Отправлено: andrew.k от Ноября 20, 2011, 20:34 Код
Название: Re: отловить клик на QLineEdit Отправлено: BuRn от Ноября 20, 2011, 20:36 спасибо, ну а разве фокусвиджет будет не то самое окошко которое с кнопками ввода ?
Название: Re: отловить клик на QLineEdit Отправлено: andrew.k от Ноября 20, 2011, 20:39 Смотря где вызовешь focusWidget, если в окошке с кнопками ввода, то конечно.
Но у тебя то не так. У тебя же фокусВиджету посылаются события, как ты сказал выше, значит оно на другой форме. Название: Re: отловить клик на QLineEdit Отправлено: BuRn от Ноября 20, 2011, 20:54 спасибо
|