Мне было интересно, как я могу добавить гиперссылку (ссылку на веб-страницу в Интернете) в свое окно. Использую ли я CreateWindow, WM_PAINT и т. д.? Пожалуйста, дайте мне совет. Спасибо!
Изменить: вот что я делаю:
HWND CreateSysLink(HWND hDlg, HINSTANCE hInst, RECT rect){
return CreateWindowEx(0, WC_LINK,
"For more information, <A HREF=\"http://www.microsoft.com\">click here</A> " \
"or <A ID=\"idInfo\">here</A>.",
WS_VISIBLE | WS_CHILD | WS_TABSTOP,
rect.left, rect.top, rect.right, rect.bottom,
hDlg, NULL, hInst, NULL);
}
Я копирую hInstance из параметров WinMain в глобальную переменную «globalhInstance», запустив globalhInstance = hInstance; в WinMain. Я также создаю глобальный RECT с именем globalRect. Затем в WM_CREATE я вызываю GetWindowRect(hwnd, &globalRect); ("hwnd" — это параметр WndProc). Наконец, в операторе switch внутри WM_COMMAND я вызываю CreateSysLink(hwnd, globalhInstance, globalRect);. Но это просто не работает.
CreateWindowEx
( 0x0,
WC_LINK
, ... );
- person IInspectable   schedule 17.06.2015CreateWindowEx
действительно хочет, чтобыRECT
указывало размер создаваемого элемента управления. Поскольку это дочернее окно, вам нужно будет передать координаты клиента.GetWindowRect
возвращает экранные координаты. - person IInspectable   schedule 17.06.2015