| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1721 人关注过本帖, 1 人收藏
标题:mfc初学者问题。。 有关窗口创建
取消只看楼主 加入收藏
xuyao18
Rank: 2
等 级:论坛游民
帖 子:50
专家分:30
注 册:2009-4-27
结帖率:22.22%
收藏(1)
 问题点数:0 回复次数:4 
mfc初学者问题。。 有关窗口创建
小弟刚开始学习MFC编程,对于很多东西都不是特别的懂
老师要求我在两个星期以内做出一个点击菜单上的某个按钮,然后能弹出一个子窗口,这样的一个程序。
看了两天的百度,有了一点点概念,是先建立一个窗口类,再调用createwindow()这个函数来创建窗口。
但是,我一直很有疑惑,就是百度上面那些很多的比如定义窗口类和initinstance()这些函数具体是放在程序源代码的哪些地方的?
定义窗口类是在mainframe下面的precreatewindow()定义么?
在上面定义好窗口类以后,又是如何调用的?

补充一个问题:很多人都提到了从cwnd这个类派生,但是我再classwizard里面并没有找到这个类啊?真心求教
希望路过的高手指点指点。
谢谢!

PS:求MFC师傅!!
QQ385427132

[ 本帖最后由 xuyao18 于 2010-4-13 21:40 编辑 ]
搜索更多相关主题的帖子: 窗口 mfc 
2010-04-13 21:38
xuyao18
Rank: 2
等 级:论坛游民
帖 子:50
专家分:30
注 册:2009-4-27
收藏
得分:0 
void CMainFrame::Onnew()
{
    // TODO: Add your command handler code here
    HWND hwnd;
    HINSTANCE hInst;
    hInst = AfxGetInstanceHandle();  //获取实例句柄
    CreateWindow("newClassName","newClassName",WS_OVERLAPPEDWINDOW, 0,0,600,400,NULL,NULL,hInst,NULL);
    ShowWindow(SW_SHOWNORMAL);
    UpdateWindow();
}

这是我在新的按钮new上写的一些代码,都是胡乱百度上抄来的。。。。
运行的结果是什么反应也没有。。。。。

下面是我再precreatewindow()里写的对类的定义
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
    static BOOL s_bCreate = FALSE;
    if( !CFrameWnd::PreCreateWindow(cs) )
        return FALSE;
    if(!s_bCreate)
{
  WNDCLASS   wndclass;  
  ::GetClassInfo(AfxGetInstanceHandle(),cs.lpszClass,&wndclass);  
  wndclass.lpszClassName="newClassName";//必须采用新类名   
  AfxRegisterClass(&wndclass);  
  cs.lpszClass=wndclass.lpszClassName;   
  s_bCreate = TRUE;
 }
    // TODO: Modify the Window class or styles here by modifying
    //  the CREATESTRUCT cs
}

请问楼上的    这样写能否获得实例的句柄?还有这样是否能够正确就是定义这个新的窗口类?
2010-04-13 22:01
xuyao18
Rank: 2
等 级:论坛游民
帖 子:50
专家分:30
注 册:2009-4-27
收藏
得分:0 
感谢!
查了两天的百度,感觉都挺不一样的。 谢谢我看看先。
2010-04-13 22:49
xuyao18
Rank: 2
等 级:论坛游民
帖 子:50
专家分:30
注 册:2009-4-27
收藏
得分:0 
嗯。。 再次感谢。。
再问个问题,就是通过这样的按钮新建窗口,就是跟原来的那个界面一样的那种窗口,而不是对话框的话,该如何操作?
概括点,我自己去研究就行,不用麻烦你截图了。很感谢你!

[ 本帖最后由 xuyao18 于 2010-4-13 22:55 编辑 ]
2010-04-13 22:53
xuyao18
Rank: 2
等 级:论坛游民
帖 子:50
专家分:30
注 册:2009-4-27
收藏
得分:0 
对了,请问那个win.h是从哪来的?
为什么我的VC里面提示没有这样的头文件啊?
PS:如果说我是用 CreateEx这个函数来创建窗口,应该如何使用?

[ 本帖最后由 xuyao18 于 2010-4-14 16:25 编辑 ]
2010-04-14 16:07
快速回复:mfc初学者问题。。 有关窗口创建
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.038154 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved