Моя проблема связана с тем, что программисты Delphi пугают до смерти - Rich Edit в Windows (версии XP и до XP).
Ситуация:
Я добавил EM_AUTOURLDETECTION в OnCreate формы. Цель -> RichEdit1. Затем у меня есть форма, которая "сворачивается" после показа формы. RichEdit Control является неактивным, видимым и включенным, но он «скрыт», потому что окно формы свернуто.
Я могу разворачивать и сворачивать форму, используя Button1 и изменяя свойства форм Constraints и Size.
После первого раскрытия формы URL-адрес внутри элемента управления RichEdit1 выделяется. Но после второго, третьего, четвертого и т. Д. Раз, когда я сворачиваю и разворачиваю форму, элемент управления RichEdit1 больше не выделяет URL.
Я пробовал сообщения EM_SETTEXTMODE, также WM_UPDATEUISTATE, а также базовое сообщение WM_TEXT -> не повезло. Похоже, что это слияние действительно работает (включает обнаружение) при отправке нажатий клавиатуры (виртуальных кодов клавиш), но не когда текст был изменен. Также - я думаю переписать код, чтобы сделать RichEdit Control динамичным. Решит ли это проблему?
Может быть, решение состоит в том, чтобы переопределить метод OnPaint / OnDraw, чтобы избежать потери выделения (форматирования) при сворачивании или расширении формы?
Странно то, что в моей документации Embarcadero говорится, что эта функция должна работать в любой момент, когда текст был изменен. Почему не работает?
Любая помощь приветствуется. Я делаю эту вики Сообщества, потому что это обычная проблема, и вместе мы сможем найти решение, верно? :)
Также - дальнейшие действия и связанный с этим вопрос: