emWin 2天速成实例教程003_Framewin和Window窗口控件和2D绘图
来源:互联网 发布:如何赚第一桶金 知乎 编辑:程序博客网 时间:2024/06/05 17:25
备注:(1)打开工程目录下的"Exe\GUISimulationDebug.exe"即可看到效果。(2)看完教程000~005就基本会用emWin做项目,其他章节可以需要时再参考。
(1) emWin的每个界面都需要一个Framewin/Window窗口控件作为父窗体,就好像Framewin/Window是一个窗体框架,所有控件都放置在这个框架当中,组成父窗体和子控件的连带关系,可以通过父窗体找到子控件,也可以通过子控件找到它的父窗体,Framewin和Window在外观上是有区别的:
(2)Window窗口控件使用比较简单,就好像一个背景一样,也没有所谓的Client区的概念;这里重点说明Framewin窗口控件的使用方法:
上图Framewin窗口控件中绿色部分是Client区域即客户区,以下是emwin说明书关于Framewin及其Client区的说明:
The frame window actually consists of 2 windows;the main window and a child window.The child window is called Client window. Itis important to be aware of this when dealing with callback functions: Thereare 2 windows with 2 different callback functions. When creating child windows,these child windows are typically created as children of the client window;their parent is therefor the client window.
Framewin窗口控件实际上包含2个窗口:主窗口和子窗口,子窗口称为Client窗口,在处理回调函数时理解主窗口和Client窗口的概念是很重要的:两个窗口可以对应两个不同的回调函数;当创建例如按键、编辑框等控件时,这些控件是作为Client窗口的子控件包含在Client窗口中的,因此这些控件的父窗口是Client窗口而非主窗口。
(3)背景图片显示,用BmpCvt.exe工具(在Tool目录下)将BMP图片转成C文件,然后将此C文件加入emWin工程,并在WM_PAINT窗口重绘消息中用GUI_DrawBitmap()函数显示图片即可:
如果是STM32平台,图片数据存到哪里?怎样读取图片数据?储存数据可以考虑NAND-FLASH、SPI-FLASH、NOR-FLASH等等...,至于怎样读取图片数据,这是emWin驱动程序的事情,在这里我们只说怎样做emWin的界面应用程序而已。源码/软件下载
- emWin 2天速成实例教程003_Framewin和Window窗口控件和2D绘图
- emWin 2天速成实例教程003_Framewin和Window窗口控件和2D绘图
- emWin 2天速成实例教程005_控件聚焦和用户消息的使用方法
- emWin 2天速成实例教程005_控件聚焦和用户消息的使用方法
- emWin 2天速成实例教程008_IconView图标控件使用方法
- emWin 2天速成实例教程-000
- emWin使用资料收集(一) ----- emWin 2天速成实例教程008_IconView图标控件使用方法
- emWin 2天速成实例教程004_软件定时器(Timer)和位图片动画
- emWin 2天速成实例教程004_软件定时器(Timer)和位图片动画
- emWin 2天速成实例教程002_多个页面窗口切换
- emWin 2天速成实例教程002_多个页面窗口切换
- emWin 2天速成实例教程007_Graph波形曲线图形控件使用方法
- emWin 2天速成实例教程009_ListView列表框控件使用方法
- emWin 2天速成实例教程010_Menu标题菜单控件使用方法
- emWin 2天速成实例教程011_Multipage多页控件使用方法
- emWin 2天速成实例教程013_修改BUTTON按钮等控件背景皮肤颜色_SetBkColor
- emWin 2天速成实例教程015_二维码控件的使用示例
- emWin 2天速成实例教程016_不规则异形进度条控件实现方法
- 详解Python的装饰器
- properties文件读取测试3
- 后置自增操作符与解引用,前置自增操作符
- ViewPager 源码分析(一) —— setAdapter() 与 populate()
- Android环境变量配置
- emWin 2天速成实例教程003_Framewin和Window窗口控件和2D绘图
- select 标签 properties文件读取值 未完待续
- 信号量实现线程之间的PV操作
- Linux下的通配符和特殊符号
- 在ShaderToy上研究水波的Shader
- ubuntu 安装与卸载应用总结
- Java任务调度框架Quartz入门教程指南(四)Quartz任务调度框架之触发器精讲SimpleTrigger和CronTrigger、最详细的Cron表达式范例
- HDU ACM 11 2080 夹角有多大II
- CentOS 7 常用操作