为了是MFC界面稍具动感和美观,我想使用动态创建控件的方法,最终实现下拉菜单的效果。我结合自己搜集的资料,比较详细地介绍下动态创建控件的方法,并分享下自己遇到的问题和解决办法。
主要代码(已验证):
注意添加控件变量并为其定义标示符ID。
问题1:动态创建控件的一般方法:
1)添加控件变量m_MyEdit(以文本编辑框为例)
2)定义标示符即ID
3)响应创建消息显示控件
问题2:怎样获得按钮的坐标(如代码所示)
不能使用GetClientRect()函数(有人说这样用,经验证,得到的左上坐标总是(0,0))
个人理解是CButton类的父类是CWnd类,也属于窗口,但CButton类是只有客户区的窗口,所以得到的CRect的左上坐标总是(0,0)
问题3:如何销毁
用DestroyWindow()即可可
实践出真知,他人的建议和方法固然重要,但一定要亲自检验,才能放心使用