社区
C语言
帖子详情
如何将消息与申请的一个窗口句柄联系起来
xiao234666
2008-02-27 01:33:21
我申明了一个窗口句柄hWnd,但并没有创建一个窗口,是因为一个函数的一个参数要求是一个窗口句柄.而由于我的程序是非windows界面的,因此实际上这个窗口就是个假想的.现在,当我需要处理从这个假想窗口的来的消息的时候,不知道该如何把下面这条语句里的"msg"与我事先申请的一个窗口句柄hWnd关联起来.
while (GetMessage ( (LPMSG) &msg, NULL, 0, 0) )
{
//进行对消息的处理
}
...全文
97
7
打赏
收藏
如何将消息与申请的一个窗口句柄联系起来
我申明了一个窗口句柄hWnd,但并没有创建一个窗口,是因为一个函数的一个参数要求是一个窗口句柄.而由于我的程序是非windows界面的,因此实际上这个窗口就是个假想的.现在,当我需要处理从这个假想窗口的来的消息的时候,不知道该如何把下面这条语句里的"msg"与我事先申请的一个窗口句柄hWnd关联起来. while (GetMessage ( (LPMSG) &msg, NULL, 0, 0) ) { //进行对消息的处理 }
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
agaric
2008-02-27
打赏
举报
回复
PostthreadMessage可以用吗?
xiao234666
2008-02-27
打赏
举报
回复
上面的这条回复的第一段是我在该版发的
"twain中,状态5到6改变时,如何直接给源发一个消息,使得源准备好传输数据(即MSG_XFERREADY)"这条帖子中的内容,实际上我现在遇到的问题就是上面这条回复的第二,三段里提到的问题.希望大家能够帮助我!!
xiao234666
2008-02-27
打赏
举报
回复
twain协议中,在源被激活后,应用程序需要发送
DG_CONTROL /DAT_EVENT / MSG_PROCESSEVENT命令给源,将事件循环里的所有事件转发给源,让源自己将状态从5改变到6.由于我的程序是非界面的,不知道该将什么事件给TW_EVENT里的pEvent,然后在发送DG_CONTROL /DAT_EVENT / MSG_PROCESSEVENT命令,才能使得源设置TW_EVENT里的TWMessage字段为MSG_XFERREADY(即准备好).
在加载Source Manager时,就为Source指定了一个父窗口(由于我的程序是非界面的,就直接申请了个窗口句柄作为父窗口),Source会把它事件信号封装成一个Windows的消息结构发送给它的父窗口。便可以在这个窗体(事实上这个窗口是不存在的)的消息循环中去,使用 DG_CONTROL /DAT_EVENT / MSG_PROCESSEVENT操作,来判断Source是否有事件发生。
现在我的问题就是不知道该如何进入这个窗体的消息循环!!
agaric
2008-02-27
打赏
举报
回复
消息队列是跟线程相关的,有些消息应该也是有发送目标窗口,但有些就是没有的。 直接用NULL就可以。
sheenl
2008-02-27
打赏
举报
回复
我试了一下, console程序里用GetMessage(&msg, ...)抓进来的消息, 其msg.hwnd都是NULL
ouyh12345
2008-02-27
打赏
举报
回复
消息需要窗口
假想的窗口不能处理消息
sheenl
2008-02-27
打赏
举报
回复
没有创建窗口, 你那个hwnd不过是一个局部变量, 是完全无效的东西, 不如直接传NULL过去好了。
Windows游戏编程系列之1:GUI
窗口
界面编程及游戏入门实战
我将带领大家来系统学习Windows的
窗口
编程,包括
消息
、
窗口
、GDI绘图、游戏开发等。本课程比较基础,非常适合初学者入门,读者可以边学习边实践。具体的章节目录和课程内容如下所示:---------------------------------------------Windows游戏编程系列之1:GUI界面编程及游戏入门实战1、Windows创建第
一个
窗口
WinMain入口函数 5进行Windows编程的调试手法 6
窗口
从哪里来? 7
窗口
编程的步骤 7
窗口
编程需要的主要结构 8
窗口
编程需要的主要API 92、Windows的
窗口
过程与
消息
机制 如何留住
窗口
? 121)Windows的
消息
与
消息
循环 142)
消息
处理函数与常用
消息
17)Windows的
窗口
过程函数 19 3、GDI编程之设备上下文 1)GDI的通用编程框架 222)GDI的绘图步骤 253)GDI获取设备
句柄
254、GDI编程之绘制几何图形 画点、线 28颜色COLORREF 29矩形 29画圆、饼图、弦图 305、GDI编程之自定义画笔画刷画笔简介 32画刷简介 33画笔案例 33画刷案例 346、GDI编程之绘制文字 DrawText函数 35TextOut 函数 (wingdi.h) 36CreateFont函数 37绘制文本案例 377、GDI编程之绘制位图 位图简介 381)在资源中添加位图资源 392)从资源中加载位图: LoadBitmap 393)创建
一个
与当前DC相匹配的DC(内存DC) 394)将bitmap放入匹配的DC中:SelectObject 405)成像(1:1 比例 ) 406)取出位图 407)释放位图 418)释放匹配的DC 41绘制位图案例 41 8、Windows鼠标键盘
消息
一、键盘
消息
421、键盘
消息
422、
消息
参数: 423、
消息
的使用: 424、键盘
消息
的案例代码 43二、鼠标
消息
441、基本鼠标
消息
442、双击
消息
443、滚轮
消息
454、不响应双击
消息
45 9、Windows定时器
消息
定时器
消息
介绍 47创建定时器 47关闭定时器 47定时器
消息
案例代码 4810、GDI游戏之跳舞动画 11、GDI游戏之走路动画 12、GDI贪吃蛇游戏实战
工位调试界面切换工位时提示创建
窗口
句柄
时出错
如果Button、GroupBox、Combobox、TextBox等或其他第三方UI控件未正常释放,超过系统默认数量限制(10000个)从而导致无法在创建控件。每一次切换工位都会清除之前控件,但使用的是Controls.Clear()清除控件,并没有释放控件。1、工位调试界面切换工位时提示创建
窗口
句柄
时出错(VS调试),或程序直接退出(非VS调试).只需释放父控件,无需递归到每
一个
控件都去释放一次。因为GC会回收父控件为空的控件。2、一般循环切换工位N次会出现,次数具体看工位使用控件的数量决定。
c语言从指定
窗口
截图,C/C++知识点之c++ 屏幕截图指定
窗口
句柄
后台截图返回位图
句柄
...
本文主要向大家介绍了 C/C++知识点之c++ 屏幕截图指定
窗口
句柄
后台截图返回位图
句柄
,通过具体的内容向大家展示,希望对大家学习C/C++知识点有所帮助。/根据
窗口
句柄
后台截图保存成BMP位图文件并且显示到picture控件上voidGetScreenBmp(HWNDhwnd,intleft,inttop,intwidth,intheight,CHAR*path){HD...
c语言从指定
窗口
截图,c++ 屏幕截图指定
窗口
句柄
后台截图返回位图
句柄
/根据
窗口
句柄
后台截图保存成BMP位图文件并且显示到picture 控件上void GetScreenBmp(HWND hwnd, int left, int top, int width, int height, CHAR*path){HDC pDC;//源DC//判断是不是
窗口
句柄
如果是的话不能使用GetDC来获取DC 不然截图会是黑屏if (hwnd==::GetDesktopWindow(...
MFC DestroyWindow
窗口
对象和
窗口
句柄
的销毁
考虑单
窗口
情况: 假设自己通过new创建了
一个
窗口
对象pWnd,然后pWnd->Create。则销毁
窗口
的调用次序: 1. 手工调用pWnd->DestroyWindow(); 2. DestroyWindow会发送WM_DESTROY; 3. WM_DESTROY对应的
消息
处理函数是OnDestroy(); 4. DestroyWindow会发送
C语言
69,372
社区成员
243,080
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章