转载自:
对于MUF的界面来说,最重要的就是配置文件。该配置文件定义了窗口的一切要素,包括坐标,按钮,颜色等等。换句话说,同样的代码,只需要编译一次,但采用不同的配置文件则会得到完全不一样的界面。这在软件功能不变,只是界面需要根据客户的要求进行定制的OEM领域显得更为重要。
由于配置文件和控件是密切相关的,所以在本章节只是叙述了部分与此无关的内容,目的是对配置文件有一个大致的了解。 配置文件其实只是一个简单的txt文档,可以用记事本直接编写。 为了方便解说,我们先来定义一些术语。 示范如下: [SECTION] KEY=VALUE 夹在"[]"之间的我们称之为SECTION,在"="左边的为KEY,而右边的则为VALUE 1.[VARIABLE] 变量替换字段。除了该SECTION以外,其它的SECTION中的VALUE如果有[VARIABLE]中的KEY,则执行替换。 示例如下: [VARIABLE] %COLOR%=255,255,0 [WND_MAIN] TYPE=WINDOW BACKGROUND_COLOR=%COLOR% [WND_MAIN]的BACKGROUND_COLOR的VALUE为%COLOR%,所以就直接替换为255,255,0,相当于: BACKGROUND_COLOR=255,255,0 该字段还需要注意的是,不要设置%STARTUP_PATH%这个KEY,因为该KEY是在程序运行时自动获取的,如果设置了反而可能会有异常出现。 %STARTUP_PATH%的使用也很简单,和普通的变量一样即可: FILE_NAME="%STARTUP_PATH%/UIImage/BK_TIME.bmp" 2.[FONT] 程序加载的字体文件,该文件必须为tif格式。 示例如下: [FONT] KAI_TI = %STARTUP_PATH%/FONTS/simkai.ttf 该示例中,主要的是VALUE,即%STARTUP_PATH%/FONTS/simkai.ttf这个路径。至于KAI_TI这个KEY,仅仅是标示而已,即使配置文件中也不会起到任何作用。 3.[LANGUAGE] 语言类别。程序支持多少种语言由该字段决定。 示例如下: [LANGUAGE] CHS EN 示例支持两种语言,分别是“CHS”和“EN”。语言的设置可以通过CStrTabBase::SetLanguage函数进行。 [LANGUAGE]字段还和STRING类型有关,根据之前的范例,某个STRING控件的配置文件可以设置如下: [STR_MOVIE] TYPE=STRING EN="MOVIE" CHS="影片" 如果TEXT或BUTTON和某个STRING关联,那么在调用CStrTabBase::SetLanguage函数进行语言设置之后,界面上的文字会自动变更。 4.[WND_MAIN] 保留的关键字段,该SECTION定义了主窗口的元素。框架在启动之后,将该窗口作为首要执行。如果该关键字段没有设置,则程序无法正常显示界面。该字段的KYE设置,请参见相应的窗口设置文档。