搜索
bottom↓
回复: 5

移植uCGUI3.98 PC模拟器到VC6.0

[复制链接]

出0入0汤圆

发表于 2017-9-8 12:28:50 | 显示全部楼层 |阅读模式
https://www.amobbs.com/thread-5536879-1-1.html 里看到 Tifosi_  大师的 ‘自己写了一个uCGUI3.98 PC模拟器(附源码) ’写的很好, 后面的跟帖有一些移植版本,但没有VC6.0的。我今天花了点时间,把这个模拟器搬到了简化版的VC6.0上,供参考。


用VC6打开项目工程后,有2处要查看下:
- 文件的路径,在对话框查看这几个ucgui的文件夹是否已经包含了,如没有,要手工添加。


- winmm.lib库。在我的机器上,需要手工添加这个库,如你编译链接后没报错,可以不用管。


- 项目的工作台文件在UCGUI文件夹中

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

发表于 2017-9-8 13:08:42 | 显示全部楼层
能说说移值的一些思路吗?
是不是任何一个GUI都可以搞成模拟器呢,比哪昨天有某坛友发送上来的UGUI,LGUI等。



出0入0汤圆

发表于 2017-9-8 22:25:16 | 显示全部楼层
非常感谢。

出100入101汤圆

发表于 2017-9-8 22:31:20 | 显示全部楼层
学习,收藏

出0入0汤圆

 楼主| 发表于 2017-9-9 09:21:26 | 显示全部楼层
kinsno 发表于 2017-9-8 13:08
能说说移值的一些思路吗?
是不是任何一个GUI都可以搞成模拟器呢,比哪昨天有某坛友发送上来的UGUI,LGUI等 ...

一般来说,现代的GUI系统都类似一个很大的状态机,它在HAL层上,而HAL位于GUI和硬件层的中间,GUI上就是你的应用程序:

APP
-----
GUI
-----
HAL
----
HARDWARE

如果改变了硬件层,就要修改HAL。

HAL层可能很复杂,但一般只修改这几个关键函数:
- 画点函数,(理论上显示功能只需要这个函数,有些硬件支持加速,例如‘硬件填充一个矩形区域’可以极大的提高刷新速度,也要移植)
- 输入接口函数,(生成触摸,按键,等事件给GU状态机)
- 定时器函数,(生成界面的刷新,延时等事件)

就可以了。

出0入0汤圆

发表于 2017-9-9 10:51:45 | 显示全部楼层
end2000 发表于 2017-9-9 09:21
一般来说,现代的GUI系统都类似一个很大的状态机,它在HAL层上,而HAL位于GUI和硬件层的中间,GUI上就是 ...

我能把你的操作具体化吗?
1、先添加某个GUI代码以及它的DEMO例程。
2、根据GUI的移值方法,如你所说,把计算器如何“画点,输入接口,定时器函数”实现后,放在GUI对应的函数内部调用。
就这2步,就可以完成PC模拟效果,对吗?




回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-3-29 18:24

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表