Chinaunix首页 | 论坛 | 博客
  • 博客访问: 40835
  • 博文数量: 7
  • 博客积分: 1411
  • 博客等级: 上尉
  • 技术积分: 90
  • 用 户 组: 普通用户
  • 注册时间: 2009-05-25 16:10
文章分类
文章存档

2011年(1)

2010年(4)

2009年(2)

我的朋友

分类: WINDOWS

2010-01-08 14:04:06

昨天写了个很小的程序,本身是想写个文本编辑器的,可是在创建子编辑窗口的时候卡住了,得到了一个很难受的错误,错误1406,查了好多资料才明白,现在写下。
错误1406:无法创建最上层子窗口
我是在主窗口的下面创建自己的编辑窗口,使用createwindow(TEXT("edit"),...................),在主消息循环的WM_CREATE下创建的,可是所有的参数都对,还是无法创建出来,于是调用GetLastError()函数进行调试,如果各位同学对这个不熟,看下面的代码介绍:
char szBuffer[128];
sprintf(szBuffer,"error is : %u"GetLastError());
MessageBox(NULL,szBuffer,NULL,MB_OK);
以上就可以得到,错误的编号。
根据错误我才知道,主窗口创建时CreateWindow的返回句柄g_hWnd时要等到WM_CREATE返回时才返回的,而我在创建编辑窗口的时候使用g_hWnd的时候,无法确知g_hWnd的值的,所以错误,因此我们不能这样调用,而是使用callback函数的参数句柄hWnd,这样才行。
说的有点啰嗦,道理讲完了,不知看官是否看的明白,自己的文字水平太差了 :-)
阅读(2698) | 评论(0) | 转发(0) |
0

上一篇:gvim font configure

下一篇:Berkeley DB 安装

给主人留下些什么吧!~~