c语言中最大化显示窗口,新手清叫一个子窗口的有关问题,为什么父窗口最大化最小化后,子窗口就不显示了...

当前位置:我的异常网» C语言 » 新手清叫一个子窗口的有关问题,为什么父窗口最大化

新手清叫一个子窗口的有关问题,为什么父窗口最大化最小化后,子窗口就不显示了

www.myexceptions.net  网友分享于:2013-01-21  浏览:20次

新手清叫一个子窗口的问题,为什么父窗口最大化最小化后,子窗口就不显示了?

代码贴在下面了,可以通过编译,但是最小化吼就不见了,改变主窗口大小,掩盖的子窗口也得不到恢复。

#include

HWND hwndchild;

HWND hwnd;

char ChildName[]="child";

LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);

LRESULT CALLBACK ChildWndProc(HWND,UINT,WPARAM,LPARAM);

int WINAPI WinMain(HINSTANCE hinstance,HINSTANCE hprevinstance,

PSTR szCmdLine,int nCmdShow)

{

static TCHAR szAppName[]=TEXT("Window");

MSG msg;

WNDCLASS wndclass,childclass;

wndclass.style= CS_HREDRAW|CS_VREDRAW;

wndclass.lpfnWndProc=WndProc;

wndclass.cbClsExtra=0;

wndclass.cbWndExtra=0;

wndclass.hInstance=hinstance;

wndclass.hIcon=LoadIcon(NULL,IDI_APPLICATION);

wndclass.hCursor=LoadCursor(NULL,IDC_ARROW);

wndclass.hbrBackground=(HBRUSH)GetStockObject(LTGRAY_BRUSH);

wndclass.lpszMenuName=NULL;

wndclass.lpszClassName=szAppName;

childclass.style=CS_HREDRAW|CS_VREDRAW;

childclass.lpfnWndProc=ChildWndProc;

childclass.cbClsExtra=0;

childclass.cbWndExtra=0;

childclass.hInstance=hinstance;

childclass.hIcon=NULL;

childclass.hCursor=NULL;

childclass.hbrBackground=(HBRUSH)GetStockObject(GRAY_BRUSH);

childclass.lpszMenuName=NULL;

childclass.lpszClassName=ChildName;

if(!RegisterClass(&wndclass))

{

MessageBox(NULL,TEXT("Register class faild!"),szAppName,MB_ICONERROR);

return 0;

}

if(!RegisterClass(&childclass))

{

MessageBox(NULL,TEXT("Register childclass faild!"),"ftc",MB_ICONERROR);

return 0;

}

hwnd=CreateWindow(

szAppName,

TEXT("My Program"),

WS_OVERLAPPEDWINDOW|WS_CLIPCHILDREN,

//CW_USEDEFAULT,

10,

10,

600,

800,

//CW_USEDEFAULT,

//CW_USEDEFAULT,

//CW_USEDEFAULT,

NULL,

NULL,

hinstance,

NULL);

ShowWindow(hwnd,nCmdShow);

UpdateWindow(hwnd);

while(GetMessage(&msg,NULL,0,0))

{

TranslateMessage(&msg);

DispatchMessage(&msg);

}

return msg.wParam;

}

LRESULT CALLBACK WndProc(HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam)

{

HDC hdc;

PAINTSTRUCT ps;

RECT rect;

HINSTANCE hInstance;

switch(message)

{

case WM_CREATE:

hInstance=((LPCREATESTRUCT)lParam)->hInstance;

文章评论

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值