Я добавил ссылку на RichEdit, использую структуру CFM_LINK/CHARFORMAT2. Но я не могу понять, как удалить эффект подчеркивания. Я пробовал:Как вставить гиперссылку без подчеркивания в Win32 RichEdit?
SendMessage(richEditHWND, EM_AUTOURLDETECT, FALSE, NULL);
SendMessage(richEditHWND, EM_SETEDITSTYLEEX, 0, SES_EX_HANDLEFRIENDLYURL);
CHARFORMAT2 cf2;
memset(&cf2, 0, sizeof(CHARFORMAT2));
cf2.dwMask = CFM_LINK| CFM_UNDERLINE | CFM_COLOR | CFM_LINKPROTECTED;
cf2.dwEffects = CFE_LINK| CFE_UNDERLINE | CFE_LINKPROTECTED;
cf2.crTextColor = RGB(255, 0, 0);
cf2.bUnderlineType = CFU_UNDERLINENONE;
SendMessage(richEditHWND, EM_SETCHARFORMAT, SCF_SELECTION, (LPARAM)&cf2);
Но он не работает.
Другой способ: установить цвет подчеркивания на белый, который является цветом фона RichEdit, но это хакерский способ, сделать символ, похожий на q, j, ... нарезанным, также отображать строку при выборе текста.
Итак, каков правильный способ сделать это?
Примечание: Я использую класс RICHEDIT50W
.
Это не я проголосовать. Я пробовал это раньше и не работал – Sakura
Можете ли вы поделиться кодом, в котором вы это пробовали? – kerem
Наверняка, посмотри мое редактирование. – Sakura