MFC控件(8):command button与syslink control

在VS 2008里MFC多了4种控件,分别是

  split buttons ,command button , syslink controls和 network address controls.

split button前一篇博客已经讲了(主是普通的button和menu组合产生的控件),现在讲下command button , syslink controls


command button

这个名字取得挺忽悠人.其实该控件没太多新东西,就在原有的Button上加了一点新特性.仍然属于button.

它用起来不同于一般button的地方主要是3个方面. 

1.除了button上面的caption显示的文字外还多了个note文字,相当起于进一步解释作用的文字,并是用小号的字显示出来. 

 2.可以在button前面显示一个icon图标,默认是指向右边的箭头  

3.鼠标没放过去之前不像个button,像个static text控件一样的文本信息.鼠标移上去后才变得像button.

除了上面说的之外其他操作跟一般button一样.

所以主要来看下怎么设置note,和icon

CButton* pBtn = (CButton*)GetDlgItem(IDC_COMMAND1);
pBtn->SetNote(_T("something to description"));  //设置note的内容

pBtn->SetIcon(m_hIcon);  //设置icon,当然也可以使用默认的icon.


 syslink controls

这个控件实际上就像html中的超链接一样.你点下可以链接到一个网页上去.

拖控件到页面上,并绑定一个变量

CLinkCtrl v_linkCtrl;

DDX_Control(pDX, IDC_SYSLINK1, v_linkCtrl);

//这里设置链接上面显示的内容要注意.里面的内容全部是按照标准的html中href的用法写的.写错了自然链接不了的.可以去瞧下html里面的href属性是怎/么设置的.另外要注意的是字符串中双引号的处理(记得加个转义符\)

v_linkCtrl.SetWindowTextW(_T("<a href=\"http://blog.csdn.net/weiwenhp\">weiwenhp博客</a>")); 


消息处理

ON_NOTIFY(NM_CLICK, IDC_SYSLINK1, OnNMClickSyslink1)


void CMFCControlDlg::OnNMClickSyslink1(NMHDR *pNMHDR, LRESULT *pResult)
{
 PNMLINK pNMLink = (PNMLINK) pNMHDR;   
        ShellExecuteW(NULL, L"open", pNMLink->item.szUrl, NULL, NULL, SW_SHOWNORMAL);  //在浏览器中打开        
       *pResult = 0;  
}


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值