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
out 包含標記文字顯示之以零結尾字串的指標。如需詳細資訊,請參閱<標記和連結存取>的 MSDN Library主題 SysLink 控制項概觀 。dwStyle
指定 Links 控制項模式。套用樣式控制項的任何組合。請參閱在 Windows SDK 的 通用控制項模式 以取得詳細資訊。pParentWnd
指定連結控制父視窗。它不得為 NULL。nID
指定 Links 控制項 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;
下列程式碼範例會根據其他連結控制項的位置的連結控制項。在應用程式啟動時,資源載入器會建立第一個連結控制項。當應用程式進入 OnInitDialog 方法時,會建立第二個連結控制項相對的第一個連結控制項的位置。然後您調整第二個連結控制符合它所顯示的文字。
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