博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【转载】MiniUtilityFramework(三):配置文件概述
阅读量:6190 次
发布时间:2019-06-21

本文共 1357 字,大约阅读时间需要 4 分钟。

转载自:

 

对于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设置,请参见相应的窗口设置文档。

转载于:https://www.cnblogs.com/hao507/articles/2276483.html

你可能感兴趣的文章
STANDBY REDO LOG
查看>>
mssql 获取自增列起始及增量
查看>>
Cookie和Session有什么区别?
查看>>
gulp(基础篇)
查看>>
关于 MRC 开发中的一些细节
查看>>
NSOJ 一个人的旅行(图论)
查看>>
微信公众号(静默授权和分享)
查看>>
Grunt
查看>>
博客园我来了!
查看>>
iOS-----用LLDB调试,让移动开发更简单(二)
查看>>
iOS-绘制UIView之drawCGRect
查看>>
解决“/bin/bash^M: bad interpreter: No such file or directory”
查看>>
js定时相关函数:
查看>>
REDIS中加锁和解锁问题
查看>>
看板管理大型项目-6.跟踪总体目标
查看>>
html入门(详细描述)2
查看>>
《舰在亚丁湾》 “海军特战队”央视电视剧起航
查看>>
软中断和tasklet
查看>>
Delphi 集合和字符串互转
查看>>
华农js抢课神器
查看>>