CreateWindow 函数父窗体句柄

yujimanpao 2009-10-15 09:53:19
CreateWindow 函数父窗体句柄 应该怎么给呢
什么算父窗 子窗体的关系呢 请给个详细点的例子并加以说明
100分相送
...全文
259 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuximail 2009-10-18
  • 打赏
  • 举报
回复
如果没有他附属于的窗口 hwndParent可以设为NULL 啊
cnzdgs 2009-10-16
  • 打赏
  • 举报
回复
系统会保证把子窗口显示在其父窗口之前,也就是说父窗口不会遮挡子窗口。
yujimanpao 2009-10-16
  • 打赏
  • 举报
回复
都不准确
jyh_baoding 2009-10-16
  • 打赏
  • 举报
回复
一般就是创建它的窗体的句柄
和黑1 2009-10-16
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 paerxiushi 的回复:]
HWND CreateWindow(LPCTSTR IpClassName,LPCTSTR lpWindowName,DWORD dwStyle,int x,int y,int nWidth,int nHeight,HWND hWndParent,HMENU hMenu,HANDLE hlnstance,LPVOID lpParam)
  lpClassName:窗体类名字
  lpWindowName:窗口标题
  dwStyle:必须的窗体风格属性
  x:窗体左上角横坐标,可以是CW_USEDEFAULT
  y:窗体右上角纵坐标,可以是CW_USEDEFAULT
  nWidth:窗体宽度,可以是CW_USEDEFAULT
  nHeight:窗体高度,可以是CW_USEDEFAULT
hWndParent:父窗口句柄
  hMenu:对于主窗体,这是菜单句柄,对于子窗体而言,这是子窗体标识符
  hlnstance:应用程序实例句柄
  lpParam:传递的信息

父窗体可以在子窗体的下方,这时创建子窗体时指定WS_POPUP风格
子窗体也可以嵌套在父窗体中,这时创建子窗体时指定WS_CHILD风格。
如果子窗体是框架窗体,这时子窗体即可以是在父窗体上方,也可以在下方。
如果子窗体有自己的消息循环,这么子窗体就会强制显示在父窗体上面,此时父窗体不会响应界面消息,这种情况类似于模态对话框。
[/Quote]
顶!
MoXiaoRab 2009-10-16
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 yujimanpao 的回复:]
都不准确
[/Quote]
你对准确的定义是?
奇才有点痴 2009-10-16
  • 打赏
  • 举报
回复
父窗口一般在winmain函数中创建,子窗口都是在父窗口创建好之后才能创建
周成风 2009-10-16
  • 打赏
  • 举报
回复
你传入了父窗口的指针,然后就可以在子窗口中利用Getparent()获得父窗口指针了,进行一下强制类型转换就可以了。
bobo_2003 2009-10-16
  • 打赏
  • 举报
回复
由父亲所生的,就是子窗口,而它就是父窗口
erfbe1 2009-10-16
  • 打赏
  • 举报
回复
HWND CreateWindow(LPCTSTR IpClassName,LPCTSTR lpWindowName,DWORD dwStyle,int x,int y,int nWidth,int nHeight,HWND hWndParent,HMENU hMenu,HANDLE hlnstance,LPVOID lpParam) 参数hWndParent指的就是父窗口句柄

如果你Create的窗口是主窗口 ,则此参数填NLL,并且用一个全局变量HWND mainhwnd 保存CreateWindow()函数的返回值 即HWND mainhwnd = CreateWindow(……);
如果你创建的是子窗口,则此参数填上你刚保存的全局变量mainhwnd 。

子窗口,父窗口的光系系统自身会处理。说白了就是父窗口可以管理子窗口。
paerxiushi 2009-10-16
  • 打赏
  • 举报
回复
HWND CreateWindow(LPCTSTR IpClassName,LPCTSTR lpWindowName,DWORD dwStyle,int x,int y,int nWidth,int nHeight,HWND hWndParent,HMENU hMenu,HANDLE hlnstance,LPVOID lpParam)
lpClassName:窗体类名字
lpWindowName:窗口标题
dwStyle:必须的窗体风格属性
x:窗体左上角横坐标,可以是CW_USEDEFAULT
y:窗体右上角纵坐标,可以是CW_USEDEFAULT
nWidth:窗体宽度,可以是CW_USEDEFAULT
nHeight:窗体高度,可以是CW_USEDEFAULT
hWndParent:父窗口句柄
hMenu:对于主窗体,这是菜单句柄,对于子窗体而言,这是子窗体标识符
hlnstance:应用程序实例句柄
lpParam:传递的信息

父窗体可以在子窗体的下方,这时创建子窗体时指定WS_POPUP风格
子窗体也可以嵌套在父窗体中,这时创建子窗体时指定WS_CHILD风格。
如果子窗体是框架窗体,这时子窗体即可以是在父窗体上方,也可以在下方。
如果子窗体有自己的消息循环,这么子窗体就会强制显示在父窗体上面,此时父窗体不会响应界面消息,这种情况类似于模态对话框。
la_feng 2009-10-15
  • 打赏
  • 举报
回复
程序最先创建的窗口是父窗口,在父窗口下创建的是这个窗口的子窗口,一般来说程序的主窗口是父窗口
A1erX 2009-10-15
  • 打赏
  • 举报
回复
即父子关系,当然先有父亲才能有儿子
healer_kx 2009-10-15
  • 打赏
  • 举报
回复
很好说,
什么是父窗口,什么子窗口?
比如说,你玩IE呢,你把Internet Explorer选项打开。
那么Internet Explorer选项这个窗口就是以IE窗口为父窗口的子窗口。

而这个子窗口里面还有很多按钮,比如说,确定,取消。
确定和取消两个按钮,也是这个Internet Explorer选项窗口的子窗口。
dirdirdir3 2009-10-15
  • 打赏
  • 举报
回复
指定父窗口主要是建立这两个窗口之间的关系,例如:

子窗口一定是在父窗口的前面的。
其它样式:
子窗口可以嵌入在父窗口中
子窗口可以弹出在父窗口上面
等等

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧