EVT_TEXT с задержкой. Есть ли такое в wxTextCtrl

Это русская секция форума wxWidjets. В этой секции вы можете обсуждать любые вопросы, связанные с wxWidgets на вашем родном языке.
Post Reply
User avatar
cutecode
Super wx Problem Solver
Super wx Problem Solver
Posts: 425
Joined: Fri Dec 09, 2016 7:28 am
Contact:

EVT_TEXT с задержкой. Есть ли такое в wxTextCtrl

Post by cutecode »

У меня есть wxTextCtrl, при изменении которого "ручками" меняются многие поля формы, и очень долго.

Есть ли в wxTextCtrl такое свойство чтоб событие EVT_TEXT вызывалось не сразу, а с некоторой задержкой, пока юзер меняет wxTextCtrl "ручками"?

или придется самому что то придумывать?

спасибо
wx 3.1.6 win/mac/linux

regards,
Alexander Saprykin
https://v2.dental-soft.ru
Kvaz1r
Super wx Problem Solver
Super wx Problem Solver
Posts: 357
Joined: Tue Jun 07, 2016 1:07 pm

Re: EVT_TEXT с задержкой. Есть ли такое в wxTextCtrl

Post by Kvaz1r »

В документации нет ничего похожего, хотя лично я не вижу смысла добавлять такой редкий кейс в библиотеку.
Можно попробовать обойтись EVT_TEXT_ENTER, если уверены что пользователь нажмет Enter по завершению редактирования.
ONEEYEMAN
Part Of The Furniture
Part Of The Furniture
Posts: 7458
Joined: Sat Apr 16, 2005 7:22 am
Location: USA, Ukraine

Re: EVT_TEXT с задержкой. Есть ли такое в wxTextCtrl

Post by ONEEYEMAN »

Doborogo vremeni sutok,
Esli ja pravilno ponjal:

Est nekij dialog v kotorom est text control and some other fields.
Polzovatel nagimaet bukvu a - v etot moment proishodit izmenenie nekotoryh znachenij v drugih elementah. Dannye izmenenija prihoditsja gdat poka oni otobrazyatsja na ekrane.

Esli eto tak:

Dlja ostalnyh kontrolov est li kakie to obrabotchiki sobytij? Chto budet esli ih ubrat?

Nu i poputno - kakaja versija biblioteki i na kakoj platforme idet testirovanie?

Spasibo.
User avatar
cutecode
Super wx Problem Solver
Super wx Problem Solver
Posts: 425
Joined: Fri Dec 09, 2016 7:28 am
Contact:

Re: EVT_TEXT с задержкой. Есть ли такое в wxTextCtrl

Post by cutecode »

да, именно так и есть.
Поле нажатия каждой кнопки приходится ждать обновления других контролов, которые в свою очередь имеют свои обработчики.

Тестирую пока на windows и Debian 9

В общем я уже сам реализовал эту функцию. При каждом измнении значения запоминаю время последнего изменения.
А обработчик OnIdle() проверяет, если время последнего изменения превышает 500мс, то он вызывает основную функцию обновления.

Задержка 500мс как раз хватает написать полностью значение в wxTextCtrl

спасибо
wx 3.1.6 win/mac/linux

regards,
Alexander Saprykin
https://v2.dental-soft.ru
amk_tt
Earned a small fee
Earned a small fee
Posts: 19
Joined: Sat Nov 28, 2009 4:45 pm
Location: Russia

Re: EVT_TEXT с задержкой. Есть ли такое в wxTextCtrl

Post by amk_tt »

Можно ещё проверить фокус. и если он покинул контрол начать обновление сразу, не ожидая остаток от 500 мс.
User avatar
cutecode
Super wx Problem Solver
Super wx Problem Solver
Posts: 425
Joined: Fri Dec 09, 2016 7:28 am
Contact:

Re: EVT_TEXT с задержкой. Есть ли такое в wxTextCtrl

Post by cutecode »

да, это тоже надо добавить, СПС
wx 3.1.6 win/mac/linux

regards,
Alexander Saprykin
https://v2.dental-soft.ru
ONEEYEMAN
Part Of The Furniture
Part Of The Furniture
Posts: 7458
Joined: Sat Apr 16, 2005 7:22 am
Location: USA, Ukraine

Re: EVT_TEXT с задержкой. Есть ли такое в wxTextCtrl

Post by ONEEYEMAN »

Доброго времени суток,
А на сколько большая задержка при обновлении других значений?
Может это просто Debug vs Release?
User avatar
cutecode
Super wx Problem Solver
Super wx Problem Solver
Posts: 425
Joined: Fri Dec 09, 2016 7:28 am
Contact:

Re: EVT_TEXT с задержкой. Есть ли такое в wxTextCtrl

Post by cutecode »

это Release
При изменении Номера карты пациента рисуется зубная формула, фото + рентген снимки и пр. информация

https://wxwidgets.ru/sites/pics/mac_big.png
wx 3.1.6 win/mac/linux

regards,
Alexander Saprykin
https://v2.dental-soft.ru
Post Reply