gamehikker Опубликовано 8 октября, 2017 Поделиться Опубликовано 8 октября, 2017 Как добавить строку в edit ? SendMessage(hcom, LB_ADDSTRING, 0, (LPARAM)(buffer)); Так я добавлял строку в listbox , но с edit такое не катит ( Нужно добавлять новую строку , не стирая старых Ссылка на комментарий Поделиться на другие сайты Поделиться
temtriss Опубликовано 8 октября, 2017 Поделиться Опубликовано 8 октября, 2017 (изменено) 7 минут назад, gamehikker сказал: новую строку , не стирая старых Мультилайн edit надеюсь?) LB_ADDSTRING это же для лист бокса) попробуйте сообщение WM_SETTEXT вроде должно работать, если не поможет, я свои старые проекты раскопаю, подскажу) Изменено 8 октября, 2017 пользователем temtriss Очень важное добавление. 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
gamehikker Опубликовано 8 октября, 2017 Автор Поделиться Опубликовано 8 октября, 2017 (изменено) 44 минуты назад, temtriss сказал: WM_SETTEXT Оно удаляет весь остальной текст . Мультилайн-мультилайн) Изменено 8 октября, 2017 пользователем gamehikker Ссылка на комментарий Поделиться на другие сайты Поделиться
ReWanet Опубликовано 8 октября, 2017 Поделиться Опубликовано 8 октября, 2017 5 минут назад, gamehikker сказал: Оно удаляет весь остальной текст . А вот это не пробовал: EM_SETSEL EM_REPLACESEL Ссылка на комментарий Поделиться на другие сайты Поделиться
temtriss Опубликовано 8 октября, 2017 Поделиться Опубликовано 8 октября, 2017 (изменено) strLen = SendMessageA(hEdit, WM_GETTEXTLENGTH, 0, 0); SendMessageA(hEdit, EM_SETSEL, (WPARAM)strLen, (LPARAM)strLen); SendMessageA(hEdit, EM_REPLACESEL, (WPARAM)FALSE, (LPARAM)str); Изменено 8 октября, 2017 пользователем temtriss 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
temtriss Опубликовано 8 октября, 2017 Поделиться Опубликовано 8 октября, 2017 3 минуты назад, ReWanet сказал: А вот это не пробовал: чуть-чуть опередил меня Ссылка на комментарий Поделиться на другие сайты Поделиться
gamehikker Опубликовано 8 октября, 2017 Автор Поделиться Опубликовано 8 октября, 2017 7 минут назад, ReWanet сказал: А вот это не пробовал: EM_SETSEL EM_REPLACESEL EM_REPLACESEL пишет в самое начало . То есть не в конце всего текста , а до него. EM_SETSEL вообще не пишет Ссылка на комментарий Поделиться на другие сайты Поделиться
gamehikker Опубликовано 8 октября, 2017 Автор Поделиться Опубликовано 8 октября, 2017 (изменено) 10 минут назад, temtriss сказал: strLen = SendMessageA(hMemo, WM_GETTEXTLENGTH, 0, 0); SendMessageA(hEdit, EM_SETSEL, (WPARAM)strLen, (LPARAM)strLen); SendMessageA(hEdit, EM_REPLACESEL, (WPARAM)FALSE, (LPARAM)str); Ща попробую. UPD всё норм Изменено 8 октября, 2017 пользователем gamehikker Ссылка на комментарий Поделиться на другие сайты Поделиться
uhx Опубликовано 8 октября, 2017 Поделиться Опубликовано 8 октября, 2017 16 минут назад, gamehikker сказал: Оно удаляет весь остальной текст . Мультилайн-мультилайн) Получаешь текущее значение эдита -> добавляешь к нему свою строку как тебе угодно -> записываешь через WM_SETTEXT Ссылка на комментарий Поделиться на другие сайты Поделиться
gamehikker Опубликовано 8 октября, 2017 Автор Поделиться Опубликовано 8 октября, 2017 Только что, uhx сказал: Получаешь текущее значение эдита -> добавляешь к нему свою строку как тебе угодно -> записываешь через WM_SETTEXT Такая идея была с самого начала .Но мне понравился вариант temtriss Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения