![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#1 |
добрый няша
Старожил
Регистрация: 29.10.2006
Сообщений: 4,804
|
![]()
XeRoN
Добрый день (точнее скорее всего ночи) всезнающий ALL! ![]() У меня к тебе такой вопрос: Имеется программа (Чужая) в ней эдит. Если в эдите 12 цифр то происходит определенное событие. Вопрос такой: Как сделать из моей проги так, чтобы это событие не происходило? Имеется ввиду хук на событие onChange.. sion А если эти цифры удалять из EDITа rpy3uH точно не помню то в хуке надо обрабатывать такое сообщение WM_**CHAR, на месте звёдочек могут быть какие то буквы, просто название сообщения точно не помню(короче надо смотреть MS SDK), при перехвате этого сообщения просто не пускаь его дальше а текст этого эдита изменять через SetWindowText XeRoN А если эти цифры удалять из EDITа? Не получается( Вот попытаюсь описать задачу попонятней =) Может быть есть другой способ реализации В общем есть прога, в ней эдит. Если количество цифр в эдите 12 то вылезает форма... Если цифр <12 или >12 то ничего не происходит... Нужно сделать так, чтобы эта форма не вылезала... Да, кстати если в проге ВПЕРВЫЙ раз ввели 12 цифр то тогда эта форма не вылазит... Может быть можно как то заставит прогу думать что цифры в эдит вводят впервый раз?) Ну типа эдит только создали =) zetrix Может совет и не очень, а ты попытайся в том же блокноте написать цифры - штук 15 потом копировать, а в проге - вставить... может прокатит... XeRoN Не прокатит... Пробывал даже сообщение послать WM_SETTEXT не работает =( Попробовал SetWindowText, ниче не происходит =( Попробовал так: var St1:PChar; ... St1:='String'; SetWindowText(HandleEditor,st1); ... Результата нет =( Можно пожайлуста пример для изменение текста в эдите с помощью SetWindowText(); зная его хэндл. sion Попробуй так: SendMessage(Edit1.Handle,WM_SETTEXT ,0,lparam(LPCTSTR('123456789111'))) ; если не изменится значит ХАНДЕЛ у тебя не правильный. rpy3uH вот 100% рабочий код исли не пашет значит хендл неправильный var str:array[0..256]of char; begin SetwindowText(handle,@str); |
![]() |
![]() |