CLinkCtrl::Create

创建链接控件并将它附加到 CLinkCtrl 对象。

virtual BOOL Create(
   LPCTSTR lpszLinkMarkup, 
   DWORD dwStyle, 
   const RECT& rect, 
   CWnd* pParentWnd, 
   UINT nID
);
virtual BOOL Create(
   DWORD dwStyle,
   const RECT& rect,
   CWnd* pParentWnd,
   UINT nID 
);

参数

  • lpszLinkMarkup
    对包含标记文本显示的以零结尾的字符串的指针。有关更多信息,请参见一节“标记和链接Access”在的 MSDN Library主题 SysLink控件概述

  • dwStyle
    指定链接控件的样式。将控件样式的任意组合。在参见 Windows SDK公共控件的样式 有关更多信息。

  • rect
    指定链接控件大小和位置。它可以是 CRect 对象或 RECT 结构。

  • pParentWnd
    指定链接控件父窗口。它不得为 NULL。

  • nID
    指定链接控件ID.

返回值

true,如果初始化成功;否则 false。

备注

在构造在两个步骤的一 CLinkCtrl 对象。首先,调用构造函数然后调用 Create,创建链接控件并将它附加到 CLinkCtrl 对象。如果要用于控件的扩展窗口样式,请调用 CLinkCtrl::CreateEx 而不是 Create

Create 方法的第二个窗体已弃用。使用指定 lpszLinkMarkup 参数的第一个窗体。

示例

下面的代码示例定义两个变量,名为 m_Link1 和 m_Link2,用于访问两个链接控件。

    afx_msg void OnNMClickSyslink1(NMHDR *pNMHDR, LRESULT *pResult);
    afx_msg void OnNMClickSyslink2(NMHDR *pNMHDR, LRESULT *pResult);
    // Link variable associated with resource editor CLinkCtrl control.
    CLinkCtrl m_Link1;
    // Link variable associated with programmatic CLinkCtrl control.
    CLinkCtrl m_Link2;

下面的代码示例创建基于其他链接控件的位置的链接控件。当应用程序启动时,资源加载程序创建第一个链接控件。当您的应用程序中输入方案时,将创建第二个链接控件相对于第一个链接控件的位置。然后您调整第二个链接控件以适合其显示的文本。

    CRect rect1, rect2;
    int height = 0;
    SIZE sz = {0};
    PTCHAR url = 
        _T("Link 2)  ")
        _T("<A HREF=\"https://msdn2.microsoft.com/en-us/visualc/default.aspx\">")
        _T("Microsoft VC++ Home")
        _T("</A>");
    m_Link1.GetWindowRect( &rect1 );
    m_Link2.Create(url,
        (WS_VISIBLE | WS_TABSTOP | WS_CHILD | WS_BORDER),
        CRect(
        rect1.left, rect1.bottom + rect1.Height(), 
        rect1.right, rect1.bottom + (2*rect1.Height())),
        this,
        IDC_SYSLINK2);
    m_Link2.GetClientRect( &rect2 );
    // The return value of GetIdealSize() is the same as sz.cy
    height = m_Link2.GetIdealSize( 
        rect2.Width(), &sz);
    if ((sz.cx != 0) && (sz.cy != 0)) {
        int rc = m_Link2.SetWindowPos(
            this, 
            0, 0, sz.cx, sz.cy,
            (SWP_NOMOVE | SWP_NOZORDER | SWP_NOREPOSITION | SWP_NOACTIVATE));
    }

要求

标头: afxcmn.h

请参见

参考

CLinkCtrl选件类

层次结构图

CLinkCtrl::CreateEx