MFC 全局配置 读取保存配置
不知道关于全局配置别人都是怎么处理的,最近做的东西都用到全局配置,而且要保存软件的设置,下次启动时要使用上次关闭时的配置。
我的做法是建一个类用来保存和读取配置,并且在这个类中创建一些变量,供所有的界面类,处理类使用。
例如这个类的名字
CGloableConfig
做个比方,比如我在好多对话框或处理类中都用到一个变量,
CString strLLow;
这个变量在软件启动的时候需要从配置文件中读出,并在关闭软件是保存,在某个对话框中这个此值的大小,在某个处理类中需要知道此值的大小。
全局配置配置的类,在CMainFrame中定义一个对象,当然这是对于多文档程序来讲,对于单文档的或对话框的话就在主view中定义。
CGloableConfig gloablecfg;
在这个CGloableConfig中有个初始化函数,一个退出时的保存函数。
void CGloableConfig::Init(CString strFile)
void CGloableConfig::SaveConfig(CString strFile)
这里使用INI文件作为配置文件,在软件启动的时候调用Init函数读取值,
GetPrivateProfileString("Panding","LLow","Odd",charTemp,20,strFile);
strLLow.Format("%s",charTemp);
在退出的时候调用SaveConfig保存值
WritePrivateProfileString("Panding","LLow",strLLow,strFile);
在设置此值的对话框中,可以修改这个值,首先获取主窗口的指针
CMainFrame* pMainFrame = (CMainFrame*)AfxGetMainWnd();
pMainFrame->gloablecfg.strLLow = “12345”;
如果是单文档的,获取主View的指针
CBrightnessMeasureView * pMainView = (CBrightnessMeasureView*)((CFrameWnd*)AfxGetApp()->m_pMainWnd)->GetActiveView();
pMainView->gloablecfg.strLLow = “12345”;
在使用的此值的时候,一样要获取主窗口或主View的指针,然后获取gloablecfg,才能正常使用。
MFC 全局配置 读取保存配置的更多相关文章
- [C#] .Net Core 全局配置读取管理方法 ConfigurationManager
最近在学习.Net Core的过程中,发现.Net Framework中常用的ConfigurationManager在Core中竟然被干掉了. 也能理解.Core中使用的配置文件全是Json,不想F ...
- 并发编程概述 委托(delegate) 事件(event) .net core 2.0 event bus 一个简单的基于内存事件总线实现 .net core 基于NPOI 的excel导出类,支持自定义导出哪些字段 基于Ace Admin 的菜单栏实现 第五节:SignalR大杂烩(与MVC融合、全局的几个配置、跨域的应用、C/S程序充当Client和Server)
并发编程概述 前言 说实话,在我软件开发的头两年几乎不考虑并发编程,请求与响应把业务逻辑尽快完成一个星期的任务能两天完成绝不拖三天(剩下时间各种浪),根本不会考虑性能问题(能接受范围内).但随着工 ...
- 无废话Android之android下junit测试框架配置、保存文件到手机内存、android下文件访问的权限、保存文件到SD卡、获取SD卡大小、使用SharedPreferences进行数据存储、使用Pull解析器操作XML文件、android下操作sqlite数据库和事务(2)
1.android下junit测试框架配置 单元测试需要在手机中进行安装测试 (1).在清单文件中manifest节点下配置如下节点 <instrumentation android:name= ...
- Android通过使用Properties保存配置
读写功能,如下面分别: import java.io.FileInputStream; import java.io.FileOutputStream; import java.util.Proper ...
- DotNetCore学习-1.读取Json配置并绑定到配置类实例
DotNetCore的程序的配置不再完全局限于XML文件,增加更加通用的Json配置. 读取Json配置文件的类主要在Microsoft.Extensions.Configuration命名空间下,创 ...
- springboot用@Autowired和@PostConstruct注解把config配置读取到bean变成静态方法
springboot用@Autowired和@PostConstruct注解把config配置读取到bean变成静态方法 @SpringBootApplication public class Sen ...
- 读取配置和动态配置(C方法)
读取配置 无论何种配置文件,定义了配置文件之后,都统一使用系统提供的C方法(可以借助Config单词来帮助记忆)来读取已有的配置.用法:C('参数名称') 例如,读取当前的URL模式配置参数:$mod ...
- Spring源码阅读笔记03:xml配置读取
前面的文章介绍了IOC的概念,Spring提供的bean容器即是对这一思想的具体实现,在接下来的几篇文章会侧重于探究这一bean容器是如何实现的.在此之前,先用一段话概括一下bean容器的基本工作原理 ...
- [转载]请教各位高手光盘版或者U盘版的BT保存配置的问题
这样安装的bt4默认是不能保存配置的,每次你更改了设置,下次重启又没有了.在网上下载一个叫做"saveFile.rar"的压缩包,大小40K左右,这个是bt4能够保存配置关键,当然 ...
随机推荐
- SegmentReader 批量 dump
/** * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agree ...
- Ural 1099 Work Scheduling
http://acm.timus.ru/problem.aspx?space=1&num=1099 题意:有n个人,很多对合作关系,每个人只能和一个人合作,求最多能选出多少人. 一般图匹配 # ...
- [置顶] Guava学习之ArrayListMultimap
ArrayListMultimap类的继承关系如下图所示: Guava ArrayListMultimap List Multimap 是一个接口,继承自 Multimap 接口.ListMultim ...
- Delphi TdxBarManager通过代码生成菜单
procedure TForm6.btn1Click(Sender: TObject);var ABar:TdxBar; ABarItem:TdxBarItem; ABarSubItem:Tdx ...
- Sum Root to Leaf Numbers——LeetCode
Given a binary tree containing digits from 0-9 only, each root-to-leaf path could represent a number ...
- 黑马程序员_Java基础组成
Java语言基础组成 2.1关键字 main不是关键字,但被JVM所识别的名称. 关键字的定义和特点 定义:被Java语言赋予了特殊含义的单词. 特点:关键字中所有字母都为小写. 用于定义数据类型的关 ...
- Java---常用基础面试知识点
综合网上的一点资源,给大家整理了一些Java常用的基础面试知识点,希望能帮助到刚开始学习或正在学习的学员. 1.抽象 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方 ...
- Android的JNI开发
变量的定义 int i; typedef int x;//定义一个int x数据类型 x a=10; printf("size=%d",sizeof(i));//获取int类型长度 ...
- 下载gtest
gtest的官网地址:https://github.com/google/googletest 方式一:下载打包好的版本 在github的页面上可以直接下载打包好的gtest,下载入口如下图所示: 方 ...
- ruby迭代起基础
“循环”会用在程序中的各种地方.而在循环的地方善用“迭代器”,则是熟练进行Ruby程序设计的重要关键. 不过,迭代器确实有比较抽象的地方,语法也有点怪异(尤其是yield的用法),光是依靠文字说明.看 ...