我想把我的MFC软件的皮肤放到一个文件夹中,把控件的定位坐标放在 .ini 中,怎么实现啊

解决方案 »

  1.   

    在皮肤文件夹中放皮肤资源(一般是图片),在程序启动时(CApp::IniInstance())先读.INI文件,将空间坐标保存至程序的变量中,再加载皮肤资源(一般可用CImage类来读取图片),重载MFC控件类实现自绘,在自绘时根据.ini文件中的信息将加载的图片绘制出来。
    大体思路是这样,不知道楼主说的定位坐标是绘制图片用的还是设置控件的位置用的,不过不管怎么样,整体思路都是在界面创建出来之前先读取.ini文件,再在创建控件后进行位置设置,在控件自绘函数中绘制皮肤图片。
      

  2.   

    我做的是,每个界面1个txt文件,文件中指明图片的名称,x,y,w,h;然后根据你自己写格式,解析出来,进入页面的时候先读取一下对应的文件。读取到了以后根据x,y绘制w,h
    比如button_0=ok,86,222,106,54,ok_normal.png,ok_pressed.png;这样读的时候从先查找“=”,然后读取第一个逗号之前的内容为按钮的作用,之后分别是x,y,w,h,默认图片,按下图片;