码迷,mamicode.com
首页 > 其他好文 > 详细

网格控件的简单使用

时间:2014-10-07 14:55:13      阅读:265      评论:0      收藏:0      [点我收藏+]

标签:bcg   bcgcontrolbar   mfc扩展界面库   vc6   

一,新建一个BCG工程CBCGPMenuButton,基于对话框。

二,增加一个按钮,并关联一个CButton类型的变量m_btn1,然后手动将类型改CBCGPMenuButton成。

三,为这个按钮增加响应事件。

void CCBCGPMenuButtonDlg::OnButton1() 

{

AfxMessageBox("士农学会!");

}

四,F5运行,鼠标单击Btn1,看看结果。结果纹丝不动。

五,在CCBCGPMenuButtonDlg::CCBCGPMenuButtonDlg中将m_bDefaultClick设置为TRUE。

m_btn1.m_bDefaultClick = TRUE;

六,在增加一个按钮并关联CBCGPMenuButton类型的变量m_btn2。增加响应事件。

七,在CCBCGPMenuButtonDlg::OnInitDialog()中为m_btn2设置菜单。

static CMenu menu;

menu.CreatePopupMenu();

menu.AppendMenu(MF_STRING,1,"");

menu.AppendMenu(MF_STRING,2,"");

menu.AppendMenu(MF_STRING,3,"");

menu.AppendMenu(MF_STRING,4,"");

m_btn2.m_hMenu = menu;

八,点击btn2任何地方,都会弹出菜单,如下图所示。

bubuko.com,布布扣

九,btn2的响应函数如下:

void CCBCGPMenuButtonDlg::OnButton2() 

{

if( 1 == m_btn2.m_nMenuResult )

AfxMessageBox("");

else if( 2 == m_btn2.m_nMenuResult )

AfxMessageBox("");

else if( 3 == m_btn2.m_nMenuResult )

AfxMessageBox("");

else if( 4 == m_btn2.m_nMenuResult )

AfxMessageBox("");

if( m_btn2.m_bDefaultClick && 0 == m_btn2.m_nMenuResult )

AfxMessageBox("选择阶层");

}

十,在增加一个按钮并关联CBCGPMenuButton类型的变量m_btn3CCBCGPMenuButtonDlg::CCBCGPMenuButtonDlg中将m_btn3m_bStayPressed 设置成FALSE。这样按下的时候按钮外表不会发生变化。

m_btn3.m_bStayPressed = FALSE;

十一,在CCBCGPMenuButtonDlg::CCBCGPMenuButtonDlg中

m_btn2.m_bOSMenu = FALSE;

菜单的界面有变化。

bubuko.com,布布扣
 
源码下载:

网格控件的简单使用

标签:bcg   bcgcontrolbar   mfc扩展界面库   vc6   

原文地址:http://blog.csdn.net/he_zhidan/article/details/39853215

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!