Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
| TarasBer |
25.01.2012 15:35
Сообщение
#1
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: 62 |
Суть такова. Я написал свой аналог EDIT.
Все строки он хранит внутри себя в специальной структуре (заголовок я вообще не трогал), поэтому некоторые сообщения я подменил:
(это функции, которые возвращают суммарную длину строк из специальной структуры и копируют строки в подставляемый буфер) И решил его проверить. Почему-то функция, что берёт текст из него, возвращает мусор. Сначала я увидел, что L, который пришёл в функцию, нихрена не сопадает с указателем на буфер. И хотя в PChar(L) приходят верные символы, сама строка заполняется каким-то мусором. Потом я увидел, что если W=0, то в оконный буфер вообще ничего не приходит. В общем у меня вопрос - что за хрень происходит с сообщением после SendMessage? По-моему, оно должно просто сразу вызвать оконную функцию, вместо этого происходит что-то непонятное. Как вообще надо правильно отвечать на WM_GETTEXT? -------------------- |
![]() ![]() |
| IUnknown |
27.01.2012 13:21
Сообщение
#2
|
![]() a.k.a. volvo877 ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 013 Пол: Мужской Репутация: 627 |
Цитата и здесь Я РЕШАЮ, как обработать сообщение Перед тем, как ТВОЕ окно обработает сообщение, ты нарушаешь контракт функции, чего ты от нее ждешь потом? Правильного функционирования? Обрабатывай, как хочешь, но перед этим необходимо, чтобы сообщение ДОШЛО до твоего окна. Пока контракт не выполнен - это может не произойти. Внимание, вопрос: "Кто виноват?" Ты, не соблюдая условия, которые тебе выставляет библиотека, или библиотека, "которая слишком тупая, и не понимает, что я хочу по-своему обработать стандартное сообщение"? Ну, обрабатывай... Если получишь...Сообщение отредактировано: IUnknown - 27.01.2012 13:22 |
TarasBer Winapi опять воду мутит 25.01.2012 15:35
TarasBer ОЛОЛО, я возвращал ноль, а надо было возвращать ко... 26.01.2012 10:05
TarasBer Не, проблема не решена.
Я решил EM_GETLINE обработ... 27.01.2012 12:37
IUnknown А можно посмотреть, как именно посылается EM_GETLI... 27.01.2012 12:52
TarasBer > set the first word of this buffer to the size... 27.01.2012 13:12![]() ![]() |
|
Текстовая версия | 3.11.2025 3:46 |