MFC IP地址控件、拆分按钮和超链接

IP地址控件

IP地址控件即IP Adrress Control,用于显示IP地址值,采用点分十进制,每一个部分的值都默认限制在0~255之间。

m_ip.SetFieldRange(0, 1, 192);
m_ip.SetAddress(192, 168, 1, 1);
void CDemoDlg::OnIpnFieldchangedIp(NMHDR* pNMHDR, LRESULT* pResult)
{
	LPNMIPADDRESS pIPAddr = reinterpret_cast<LPNMIPADDRESS>(pNMHDR);
	// TODO: 在此添加控件通知处理程序代码

	CString str;
	str.Format(_T("第%d部分,值为%d"), pIPAddr->iField + 1, pIPAddr->iValue);

	AfxMessageBox(str);

	*pResult = 0;
}

拆分按钮

拆分按钮控件的样式是BS_SPLITBUTTON。当用户单击下拉箭头,会显示自定义菜单。

m_splitbtn.SetDropDownMenu(IDR_MENU, 0);
void CDemoDlg::OnBnClickedSplitBtn()
{
	AfxMessageBox(_T("按钮被按下!"));
}

void CDemoDlg::OnMenu01()
{
	AfxMessageBox(_T("菜单1被按下!"));
}

超链接

超链接就是点击后可以跳转到指定网址,首先,我们用按钮模拟超链接:

void CDemoDlg::OnBnClickedBtnHioierLink()
{
	ShellExecute(NULL, _T("open"), _T("https://noi.hioier.com/"), NULL, NULL, SW_SHOWNORMAL);
}

还可以使用SysLink Control控件:

void CDemoDlg::OnNMClickSyslink(NMHDR* pNMHDR, LRESULT* pResult)
{
	// TODO: 在此添加控件通知处理程序代码
	*pResult = 0;

	PNMLINK pNMLINK = (PNMLINK)pNMHDR;

	ShellExecute(NULL, _T("open"), pNMLINK->item.szUrl, NULL, NULL, SW_SHOWNORMAL);
}
原文链接:,转发请注明来源!