工作日志2006.11.3

2006-11-3

 

1.  调试好了 hgeGUIMessageBox 。错误出在这里:

hgeGUIMessageBox的构造函数里,我先创建了按钮---自己写的---然后再创建的 hgeGUIText,加入 hgeGUI 里的顺序为先加入按钮,再加的标签,其结果就是按钮无法响应 hgeGUI 传过来的事件。当改为先加入标签,再加入按钮时,就一切正常了!

       目前还不知道这个错误的原因是什么,估计在于 hgeGUIText static 属性。看了下HGE的原代码,也没找到错误所在。

       另外,这个 hgeGUIMessageBox ,当系统中有多个对话框时,似乎响应事件时其速度就会下降,也不稳定!我觉得这个时候 HGE GUI 部分真的不行了!

       有可能的话,我想在HGE的基础上写一个更好的GUI组件!

 

2.  关于嵌入式项目:

项目进入到解决触摸屏问题的环节。晚上为了解决这个问题,我翻了 tslib 库的原代码,也翻了 Qt 的原代码。突然间发现自己阅读代码的能力增强了!----很明显地可以感受到比以前更有感觉了!

学到了 cstdlib 库里的一个函数: getenv ,得到指定系统环境变量值。这个是为了测试 tslib 是否得到正确的环境变量而实验出的。

弄清了 tslib 库依赖的那几个环境变量的意思!

 

目前的错误是当Qt程序启动后,Qt库会提示不能配置触摸屏。通过阅读代码,错误定位在 ts_config 里。并且可以进一步确定是在加载插件模块时出的错!

ts_config 函数里首先会读取 tslib 配置文件(ts.conf,由 TSLIB_CONFFILE环境变量指定),然后根据这个文件逐个加载插件库!ts_config又会调用ts_load_module加载库。从这个函数里,程序先是得到配置文件中指定加载的模块名,然后根据模块名构造了一个 so 文件文件名,然后调用了系统函数 dlopen 加载库!

于是学到了一个Linux 下的加载类似于 Windows 下动态链接库的函数:dlopen

 

那么,错误就应该出在构造的库文件名是错误的---其指定的文件不存在---从而导致 dlopen无法加载。所以才提示找不到文件或目录!--明天去实验室尝试一下。

      

2006.11.4

       触摸屏问题解决!我的思路是正确的!

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值