有几个问题,大哥进来帮我看看?

yellowwolf 2003-10-20 09:44:43

做了一单文档,在其中有一无模式对话框,在这对话框中手动画了一标题栏,一个FRAME控件把其它的空间占完了,在FRAME中有一个STATIC和一个水平的SCOLLBAR;

1. 我想在这无模式对话框中得到所有的鼠标和健盘消息(甚至触发的所有消息)

2. 因为这个对话框几乎被控件覆盖了, 问这是否影对话框捕捉消息呢。
CString str;
str.Format("%d", nChar );
AfxMessageBox(str);
我用这个试了一下,没有反应呢。 好像焦点在水平滚动条上,
...全文
21 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjg751206 2003-10-20
  • 打赏
  • 举报
回复
使用PreTranslateMessage函数可以截获消息,然后就可以了,您试试
  • 打赏
  • 举报
回复
没有人回答就跑到后面对了呢?
--------------------------------
是回答的 就跑到前面来了。
孤必有邻 2003-10-20
  • 打赏
  • 举报
回复
1、做键盘和鼠标挂钩

2、如果实现了1,有无窗口都不影响捕捉消息
yellowwolf 2003-10-20
  • 打赏
  • 举报
回复
没有人回答就跑到后面对了呢?
最近在弄ucGUI的移植,网上搜了不少资料,也问了同学,总算把简单的一个程序弄好了,现在跟大家分享下心得。该程序是直接用的原子大哥的TFTLCD显示的例子,直接拿过来移植的。所用到的是原子大哥TFTLCD例子(库函数版本)和ucGUI3.90源码。 建工程就不说了,附件里有,相信大家也看到别人建的工程了,下面直接说重点。 由于ucGUI移植笔记内容太多,就介绍其中几点(具体的还需看附件内容): 1. 如果LCD驱动文件是lcd.c和lcd.h,最好改为别的名字,比如ili93xx.c和ili93xx.h。然后还要把LCD_Init()初始化函数改为LCDx_Init(); 2. 需要改的地方: A. LCDConf.h中按照下面的图就行,其余的可以删除掉,注意红框中是刚刚改过的LCD初始化函数,改为刚刚更改的初始化函数就行。 B.接下来事GUIConf.h中的设置,目前只是用到简单的一个现实函数,多以就全部设为0 C. 这个是LCD驱动函数的修改,这三个最好改红框选中的文件。 接下来就是更改的第一块,首先的把第1部所更改的相应的LCD底层函数的头文件加进来,不然ucGUI没办法正常工作。然后就是第二个红框给为自己的驱动芯片型号。 再就是第二块,找到画蓝线的两个函数,用方框里的函数取代,如果是用原子大哥的,第一个函数必须要用快速画点函数,因为函数参数里有颜色这个参数,画点函数没有,如果是别的程序,也是一样,加入画点函数就行,但必须要有颜色的参数。第二个函数就是读取某点的颜色值的函数,加进来就行,我这儿直接就用了原子大哥的程序。 3. 最后修改主函数 有人纳闷了,为什么把LCD初始化函数 给注释掉了,没关系,在前面 文件中不是有个宏定义嘛 这个宏定义已经在 这个文件中调用,见下图哦 还有一项特别注意的,如果你用原子大哥的LCD初始化函数,移植完后,你会发现你的屏幕先白屏一下之后就马上黑屏,而且后面无论设置什么颜色都是这样的情况。在调用GUI_Init()的时候,这个函数会进入LCD_Init(),然后再LCD_Init()函数里面有这样的语句 #if (GUI_DEFAULT_BKCOLOR != GUI_INVALID_COLOR) /* Clear video memory */ LCD_SetDrawMode(GUI_DRAWMODE_REV); LCD_FillRect(0,0, GUI_XMAX, GUI_YMAX); LCD_SetDrawMode(0); #endif 这句#if (GUI_DEFAULT_BKCOLOR != GUI_INVALID_COLOR)里面的GUI_DEFAULT_BKCOLOR 初值是OXFFFF, GUI_INVALID_COLOR 初值也是0XFFFF,而原子哥的初始化函数最后有一句LCD_Clear(WHITE);这样就把 GUI_INVALID_COLOR 的值设置成了0X0000;导致调用了下面的三个函数。从而出现上面的问题。只要把 原子哥 的初始化函数LCD_Clear(WHITE); 注释掉就不会错了,小问题大错误。这是引用的hua290565456的帖子里的话,觉得很有用,就粘贴过来了。 这就是一个基本的ucGUI的移植。该笔记放在附件了,有工程和源码,还有此贴的word文档。

16,471

社区成员

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

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

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