MFC的界面问题
本人是老的VB编程人员,现在想用MFC做个东西,主要是界面不会做,脑子转不过弯来。有能帮上忙的兄弟姐妹们可以给我发个邮件要一个需求文档,悬赏分不够的话可以再加,邮箱my_...
本人是老的VB编程人员,现在想用MFC做个东西,主要是界面不会做,脑子转不过弯来。有能帮上忙的兄弟姐妹们可以给我发个邮件要一个需求文档,悬赏分不够的话可以 再加,邮箱 my_code@163.com
要求:
(1) 开发环境为 Visual Studio 2012;
(2) 可以由VS自动生成,要求MDI多文档界面,主界面保留【文件视图】、【类视图】、【属性】和【输出】窗口,工具栏上添加两个示例按钮【按钮1】和【按钮2】,如下图所示。
(3) 单击【按钮1】的时候弹出一个拆分窗口(2行2列,其中左上角的窗口有ListView,表头可以任意添加),此窗口可以最小化、最大化,但不能被关闭(单击关闭按钮的时候不能将此拆分窗口关闭),如下图所示
(4) 单击【按钮2】弹出另一个DialogXX,界面由亲任意设计,进行二次开发的时候DialogXX的界面上可以通过VS的工具箱添加控件。DialogXX有最小化、最大化按钮,但不能被关闭。
(5) 要求(3)和(4)中,单击【按钮1】或【按钮2】的时候如果窗口已经显示过了,再激活它就可以了,不再弹出新窗口
我知道对于对MFC比较熟悉的朋友来说这些都是小事儿,但对于我这种习惯VB的人来说改变太大了,一下子难以入门。在此谢过所有回复的哥们儿了 展开
要求:
(1) 开发环境为 Visual Studio 2012;
(2) 可以由VS自动生成,要求MDI多文档界面,主界面保留【文件视图】、【类视图】、【属性】和【输出】窗口,工具栏上添加两个示例按钮【按钮1】和【按钮2】,如下图所示。
(3) 单击【按钮1】的时候弹出一个拆分窗口(2行2列,其中左上角的窗口有ListView,表头可以任意添加),此窗口可以最小化、最大化,但不能被关闭(单击关闭按钮的时候不能将此拆分窗口关闭),如下图所示
(4) 单击【按钮2】弹出另一个DialogXX,界面由亲任意设计,进行二次开发的时候DialogXX的界面上可以通过VS的工具箱添加控件。DialogXX有最小化、最大化按钮,但不能被关闭。
(5) 要求(3)和(4)中,单击【按钮1】或【按钮2】的时候如果窗口已经显示过了,再激活它就可以了,不再弹出新窗口
我知道对于对MFC比较熟悉的朋友来说这些都是小事儿,但对于我这种习惯VB的人来说改变太大了,一下子难以入门。在此谢过所有回复的哥们儿了 展开
2个回答
展开全部
vc界面很简单啊,直接拖属性页就行了和vb类似。主要是响应函数的写法和vb会有较大区别,你想用MFC做什么呢?
打开类向导:在list对象添加NM_DBLCLK响应就是你要的双击list中一行的响应函数;
调用对话框用(该对话框实例对象).DoModal()函数;
按钮的响应函数在类向导中也有,最简便的方案是双击按钮即可。
其他的也说不很清楚,建议去看孙鑫的《MFC教程》,那里面基本上常用的都讲到了。
打开类向导:在list对象添加NM_DBLCLK响应就是你要的双击list中一行的响应函数;
调用对话框用(该对话框实例对象).DoModal()函数;
按钮的响应函数在类向导中也有,最简便的方案是双击按钮即可。
其他的也说不很清楚,建议去看孙鑫的《MFC教程》,那里面基本上常用的都讲到了。
追问
因为是在代码里面 生成一个ListCtrl对象,不能直接加NM_DBLCLK响应函数吧?
以下是代码
CListCtrl &m_list = GetListCtrl();
for(int nCol=0;nCol<6;nCol++)
{
//这里增加表头,字符限制,不写
}
追答
CListCtrl应该是在一个对话框里的,在该对话框的head文件中添加函数afx_msg void OnDblclkList3(NMHDR* pNMHDR, LRESULT* pResult);
然后在该对话框的CPP文件中加入ON_NOTIFY(NM_DBLCLK, IDC_LIST3, OnDblclkList3)进行关联。
使用的时候直接实例化对话框类就可以了,通过对象调用CListCtrl的相关变量来操作CListCtrl,所以你就不要实例化ListCtrl了.而且你要是动态的实例化CListCtrl那么list的显示就不好弄了。
按我的方法就是先用list box控件在对话框容器中脱出界面,然后在对话框添加NM_DBLCLK,给list添加一个control的相关变量,然后实例化对话框,通过相关变量来对CListCtrl操作就行了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询