Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
RT-Thread一般讨论
[ANN] RTGUI 0.6 版本发布
发布于 2013-02-01 11:16:20 浏览:6751
订阅该版
RTGUI 0.6版发布纪要 **为什么是 0.6?** RTGUI 是作为 RT-Thread 的一个组件存在的。这次新发布的版本是在原 RTGUI 基础上重构而来的。原 RTGUI 没有独立的版本号。暂设其为 0.5。所以本版本号取 0.6,为在原有基础上改进之意。以后我们会每个月发布一个新版本。下一个版本号会是 0.6.1。 **运行环境** 理论上原来可以运行 RTGUI 的设备上都可以运行新的 RTGUI。本版本自带一个 Windows 模拟器,用来方便地评估运行效果。默认的运行环境是 realtouch。RT-Thread 中的模拟器也是可以运作的。可以到 [https://github.com/RT-Thread/RTGUI/archive/v0.6.zip](https://github.com/RT-Thread/RTGUI/archive/v0.6.zip) 中下载自带 Windows 模拟器的版本。github 上最新的 RT-Thread 也已经集成 RTGUI 0.6,可以直接使用。 **新版本有什么特点?** 1. 新版本的 GUI 摒弃了原有的 workbench/view/window 的工作方式。转换成全面向 window 的工作方式。原有的 workbench/view 可以用 notebook 来实现。 2. 用 `rtgui_app` 对线程进行了抽象。 3. 事件驱动更彻底: a. 将事件处理机制集成进 `rtgui_object`。 b. 添加了`RTGUI_EVENT_SHOW` 和 `RTGUI_EVENT_HIDE` 来通知控件将要被显示/隐藏。 c. 底层代码中对事件的应用更加彻底。 4. 重构了自动布局方式。使得控件的摆放更加方便。 **增强** - 添加了 TJPGD 引擎。使得小内存系统解码 jpeg 图片成为可能。(onelife) - 添加了对单色屏的支持(onelife) - bmp 图像引擎的重构(onelife) - bmp 图像的旋转/缩放,以及功能性增强(amsl) - 增加屏幕快照功能(amsl) - PNG 引擎增加 Alpha 通道支持(amsl) - 新增 edit 多行文本编辑控件。(amsl) - 增加了 Model/View 的编程框架。(Grissiom) - 添加了缩减字库的特性,开启后可以自动添加用到的汉字,不用的汉字字形不会加入到字库当中。使得 GUI 能够在小 ROM 系统上得以应用。(Grissiom) - 新增 digtube 七段码显示控件(prife) - demo/benchmark 新增了 FPS 输出(amsl) - 新增 box/panel/groupbox,支持自动布局(Bernard) ** API 变化** 除了 workbench/view 的消失以外,还有如下的 API 变化: - c05a301, 68e3e30: `rtgui_{menu,win}_hiden` 被重命名为 `rtgui_{menu,win}_hide`。 - 05e4894: 将 `struct rtgui_widget` 中的 `mini_{height,width}` 重命名为 `min_{height,width}`。 - 等等…… 今后很长时间内,新版本的 RTGUI 会与此版本的 API 尽量只增不减,保持兼容。 **Bug fixes** - 00a6690: 解决了 `rtgui_notebook_set_current_by_index` 中重绘标签页的 bug。感谢 prife 提交 bug 信息和补丁。 - 6850ff2: 解决了 `last_mevent_widget` 引起的事件传送失败。感谢 heryon 提交bug 报告。 - 9143e11: 解决了 jpeg 引擎中的内存泄漏。感谢 Young 提供 bug 信息。 - fbd567c: 解决了 `rtgui_textbox_set_line_length` 的 bug。 - 9b67b66: 修复了窗口标题栏渐变效果的绘制。 - fc3abbf: 修复了 `rtgui_label_set_text`。感谢 tanghong668 提供 bug 信息。 - d41586c: 修复了窗口激活时重复刷新的问题。感谢 onelife 提供 bug 信息。 - ab08de6: 修复了字库缓存的 bug。感谢 rtt\_fans 提供 bug 信息。 - 等等…… 除了上面提到的,luoyuncong2012, lgnq, shaolin, aozima也有贡献。上面的列表也必然是不完整的。感谢编写了第一版 RTGUI 的 Bernard 和其他大侠们,没有他们的辛勤劳动,也不会有今天的版本。感谢各位使用和支持RTGUI的开发人员,是你们 RTGUI 体现了 RTGUI 的价值。
查看更多
15
个回答
默认排序
按发布时间排序
huangxi_hans
2013-02-01
这家伙很懒,什么也没写!
辛苦了,顶你!! 正想往一个产品上用,1024*768的大屏。
huangxi_hans
2013-02-01
这家伙很懒,什么也没写!
请教一下,RTGUI移植应该做哪些工作?有相应的文档吗
grissiom
2013-02-01
这家伙很懒,什么也没写!
嗯,这块暂时还没有文档…… 不过应该还算比较简单。具体的可以参考 bsp/stm32F10x 里的 ssd1289 和 ili_lcd_general 两个 drvier,带硬件加速的可以参考 realtouch 里的驱动~ 大屏应该也是可以用的,加油 [s:160]
huangxi_hans
2013-02-01
这家伙很懒,什么也没写!
在rtgui_win_show函数开始定义了一个 struct rtgui_app *app; 随后又定义了: if (is_modal == RT_TRUE) { struct rtgui_app *app; 编译器Warning,而且让人不是很容易理解呢。
grissiom
2013-02-01
这家伙很懒,什么也没写!
Fixed in 01e2604. Thanks!
huangxi_hans
2013-02-01
这家伙很懒,什么也没写!
今天下午编译了一下,蛮多这样的情况 ,不止一处。 另外0.6发布包里的external与RTT发布包里的external有何区别,发现有些目录是同名的。
grissiom
2013-02-01
这家伙很懒,什么也没写!
>今天下午编译了一下,蛮多这样的情况 ,不止一处。 >另外0.6发布包里的external与RTT发布包里的external有何区别,发现有些目录是同名的。 --- 嗯,现在 warning 还比较多…… 嗯,没有什么区别~ 因为 RTGUI 本身没有依赖外部的 RTT,所以有自己的一套东西。如果用在板子上,直接用 github 上的 RTT 即可~ github 上的 RTGUI 只是为了开发起来方便,除了 rtgui 本身以外,其他的以 RTT 为准。
huangxi_hans
2013-02-01
这家伙很懒,什么也没写!
如果我想用RTT+RTGUI,这两个external是否都需要存在,还是选其一,应该选哪一个external?
huangxi_hans
2013-02-01
这家伙很懒,什么也没写!
font_mph-tmpl.c里 static const rt_uint32_t T1[] = { $S1 }; static const rt_uint32_t T2[] = { $S2 }; static const rt_uint16_t G[] = { $G }; 这三行中的$变量编译不过。 listbox.c中的rtgui_listbox_event_handler 函数里重新定义了与形参同名的变量event edit.c的rtgui_edit_ondraw函数里定义了两次rtgui_rect_t r window.c的rtgui_win_show函数里两次定义 struct rtgui_app *app; listctrl.c的rtgui_listctrl_update_current两次定义 struct rtgui_rect rect; radiobox.c的rtgui_radiobox_create两次定义 struct rtgui_rect rect; _rtgui_mv_view_bare_remove函数中三次定义 struct rtgui_mv_model **model_arr rtgui_topwin_resize函数中两次定义 rtgui_rect_t rect rtgui_topwin_title_onmouse函数中两次定义struct rtgui_event_win event
grissiom
2013-02-01
这家伙很懒,什么也没写!
>如果我想用RTT+RTGUI,这两个external是否都需要存在,还是选其一,应该选哪一个external? --- 如果想用 RTT+RTGUI,不用下载 RTGUI 的包,直接用 RTT 就行~
撰写答案
登录
注册新账号
关注者
0
被浏览
6.8k
关于作者
grissiom
这家伙很懒,什么也没写!
提问
19
回答
819
被采纳
0
关注TA
发私信
相关问题
1
有关动态模块加载的一篇论文
2
最近的调程序总结
3
晕掉了,这么久都不见layer2的踪影啊
4
继续K9ii的历程
5
[GUI相关] FreeType 2
6
[GUI相关]嵌入式系统中文输入法的设计
7
20081101 RT-Thread开发者聚会总结
8
嵌入式系统基础
9
linux2.4.19在at91rm9200 上的寄存器设置
10
[转]基于嵌入式Linux的通用触摸屏校准程序
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
最新文章
1
在RT-Thread Studio中构建前执行python命令
2
研究一了一段时间RTT,直接标准版上手太难,想用nano,但又舍不得组件
3
CherryUSB开发笔记(一):FSDEV USB IP核的 HID Remote WakeUp (USB HID 远程唤醒) 2025-01-18 V1.1
4
RT-thread 缩写字典
5
RT Thread 源码分析笔记 :线程和调度器
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
FinSH
ART-Pi
USB
DMA
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
FAL
rt-smart
I2C_IIC
ESP8266
UART
WIZnet_W5500
ota在线升级
PWM
cubemx
flash
freemodbus
BSP
packages_软件包
潘多拉开发板_Pandora
定时器
ADC
flashDB
GD32
socket
编译报错
中断
Debug
rt_mq_消息队列_msg_queue
SFUD
msh
keil_MDK
ulog
MicroPython
C++_cpp
本月问答贡献
出出啊
1517
个答案
342
次被采纳
小小李sunny
1444
个答案
290
次被采纳
张世争
813
个答案
177
次被采纳
crystal266
547
个答案
161
次被采纳
whj467467222
1222
个答案
149
次被采纳
本月文章贡献
聚散无由
2
篇文章
14
次点赞
catcatbing
2
篇文章
4
次点赞
Wade
2
篇文章
2
次点赞
Ghost_Girls
1
篇文章
4
次点赞
xiaorui
1
篇文章
1
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部