列表框控件的使用
一、实验目的
学习列表框控件的使用。继续学习操作系统的文件相关API 函数,通过几个文件的API函数,把指定扩展名(*.bmp)的位图文件名显示在列表框中。可以通过键盘选择文件,并把位图绘制出来。
二、实验内容
通过使用几个操作系统中系统文件相关的API 函数,列出系统的中存储在海量存储器K29F2808U 中的指定扩展名的文件(比如:*.bmp 位图文件)。使用列表框控件,把文件列出来,同时,可以控制位图文件的显示。
三、预备知识
1、用ARM SDT 2.5 集成开发环境,编写和调试程序的基本过程。
2、基于操作系统的应用程序的框架结构。
3、会使用Source Insight 3 编辑C 语言源程序
4、操作系统的绘图API 函数和绘图设备上下文(DC)的使用
四、实验设备及工具(包括软件调试工具)
硬件:ARM 嵌入式开发板、用于ARM7TDMI 的JTAG 仿真器、PC 机Pentumn100 以上
软件:PC 机操作系统win98、ARM SDT 2.51 集成开发环境、仿真器驱动程序、SourceInsight 3.0、超级终端通讯程序、USB 下载程序
五、实验步骤
1、在ARM SDT 2.51 中,使用实验一中创建好的模板,新建一个项目work1。把操作系统的所需要的头文件(*.h)和库文件(*.alf)加入工程中。
2、用Source Insight 3 创建一个工程,把work1 中的C 语言源文件文件加入。
3、进入嵌入式开发板的BIOS,向嵌入式开发板中的海量存储器复制几个24 位真彩色位图文件(扩展名为Bmp)。
4、打开Main.c 文件,在Main_Task 任务中添加代码,使系统启动的时候,创建一个列表框。
5、通过操作系统的文件相关的API 函数,列出扩展名为Bmp 的文件,并添加到上面创建的列表框中。
6、添加键盘消息响应函数,定义按键,使列表框的高亮度条可以向上或向下滚动,按确定按钮可以绘制相应的图片。程序的流程图如图所示
提示:
⑴ 用CreateListCtrl 函数创建立列表框
⑵ 使用ListNextFileName 函数列出当前的目录位置以后的第一个符合扩展名的
文件名,同时,当前目录的位置指针自动下移。如果成功则返回TRUE,如果没有适合的文件则返回FALSE。
⑶ 因为ListNextFileName 函数得到的文件名不是Unicode 字符串,所以要通过strChar2Unicode 函数转换成Unicode 字符串,才可以添加到列表框中显示出来。同时,为了以后方便得到文件名字符串的非Unicode 格式,提倡在一个数组中记录ListNextFileName 返回的char 型字符串,以便以后打开相应的文件。
⑷ 通过ListCtrlSelMove 函数改变列表框的高亮度条的位置。
⑸ 使用ShowBmp 函数可以显示指定文件名的真彩色的位图图片
7、用ARM SDT 2.5 编译、下载并调试上述程序,检查运行结果
8、生成发行版本的.bin 文件,通过USB 下载到嵌入式开发板中,运行并检查输出结果。