Мне удалось получить пользовательский цвет текста в REC, но я не могу заставить его использовать нужный шрифт (Consolas).
(EDIT) Создание REC:
LoadLibrary(TEXT("Msftedit.dll"));
hEdit = CreateWindowEx(WS_EX_CLIENTEDGE, MSFTEDIT_CLASS, L"",
WS_CHILD | WS_VISIBLE | ES_MULTILINE,
0, 0, 300, 300,
hwnd, NULL, GetModuleHandle(NULL), NULL);
-
CHARFORMAT cf = {};
cf.cbSize = sizeof(CHARFORMAT);
cf.dwMask = CFM_COLOR | CFM_FACE;
cf.crTextColor = RGB(255, 0, 255);
cf.bPitchAndFamily = DEFAULT_PITCH | FF_MODERN;
memcpy(cf.szFaceName, L"Consolas", sizeof(L"Consolas"));
SendMessage(hEdit, EM_SETCHARFORMAT, NULL, (LPARAM)&cf);
Я использую
#ifndef UNICODE
#define UNICODE
#endif
Несколько ответов, которые я нашел, но мне это мало чем помогло ... Win32: установить шрифт и цвет текста по умолчанию длярасширенное редактирование , Как установить шрифт в расширенном редактировании 4?
Примечание : в записи нет текста
Это то, что я получаю ... 5 'i' и 5 '0' должны иметь одинаковый интервал с Consolas, верно?