WinAPI - C++ - 将超链接添加到窗口

WinAPI - C++ - Add Hyperlink to Window

本文关键字:窗口 添加 C++ WinAPI 超链接      更新时间:2023-10-16

我想知道,如何将超链接(指向在线网页的链接)添加到我的窗口。我是否使用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);
}

我正在通过运行 globalhInstance = hInstance; 在 WinMain 中将 hInstance 从 WinMain 参数复制到全局变量"globalhInstance"。我还在创建一个名为globalRect的全局RECT。然后在WM_CREATE,我调用GetWindowRect(hwnd,&globalRect);("hwnd"是WndProc的一个参数)。最后,在WM_COMMAND内部的switch语句中,我调用CreateSysLink(hwnd,globalhInstance,globalRect);。但它似乎不起作用。

上面

链接的 MSDN 页面中提供了示例代码:

HWND CreateSysLink(HWND hDlg, HINSTANCE hInst, RECT rect)
{
    return CreateWindowExW(0, WC_LINK, 
        L"For more information, <A HREF="http://www.microsoft.com">click here</A> " 
        L"or <A ID="idInfo">here</A>.", 
        WS_VISIBLE | WS_CHILD | WS_TABSTOP, 
        rect.left, rect.top, rect.right, rect.bottom, 
        hDlg, NULL, hInst, NULL);
}