现在我需要设置一个Setting类 里面包含对于SettingDlg窗口的操作函数 static int GetTestInterval(); //用于得到窗口一个文本框的值 static CList<CString,CString&>* GetAddrList();//用于获取窗口中list control控件的列表 我对CList不熟悉 不懂呢 怎么存储? static void SetTestInterval(int interval);//用来设置窗口中文本框的值 static void Save();//保存配置文件 static bool Open(const TCHAR* fileName );//打开配置文件并放到窗口上复制代码现在我来负责实现这个类,但是第一个问题,我需要在我的类中如何来操作SettingDlg对象呢?比如static int GetTestInterval(); 这个,最简单的,谁能给个示例呢?
我目前想的方法是增加一个构造函数,传递一个CWnd* m_pParent进来,也就是说这个类也要增加这个CWnd* m_pParent成员,有了句柄才能对那个窗口进行操作,那这样的话在SettingDlg中使用Setting类时必须先有一个Setting对象了,也就是不能直接用静态方法了,我不知道这样设计好不好,但是感觉耦合性低,抽象层次不高,不知道大家的经验来说是如何处理,如何设计的呢?还请指点一下 怎样做比较好或者不好?
我目前想的方法是增加一个构造函数,传递一个CWnd* m_pParent进来,也就是说这个类也要增加这个CWnd* m_pParent成员,有了句柄才能对那个窗口进行操作,那这样的话在SettingDlg中使用Setting类时必须先有一个Setting对象了,也就是不能直接用静态方法了,我不知道这样设计好不好,但是感觉耦合性低,抽象层次不高,不知道大家的经验来说是如何处理,如何设计的呢?还请指点一下 怎样做比较好或者不好?
又和头儿交流了一下 他大概也是你这个意思 其实是我把问题弄复杂了 他只是让我做简单一些的事情不用静态的 而且应该有成员变量 头儿的想法是通过这个类来在程序中存储数据 然后调用方法来使用或者保存 我现在大概知道了save和open怎么写
我现在先增加了两个成员 分别是int m_nInterval ,CList<CString,CString&> m_tAddrListsave是写这两个变量的数据进文件 open是读文件数据进这两个变量 这样就抽象出来了我用你的方法思考了一下 --# 结果及其惊人 ````表笑偶偶现在绝对头儿让偶写的是属性! 我在学校学的是c# 我觉得就是类似C#中的属性器 get set 再看看名字 确实感觉是这个意思 顿悟 >_< 我原先想得太复杂了 根本就不用考虑SettingDlg 天呐 是设计思路问题 吐血啊 不过现在还有个疑问有 CList <CString,CString&>* GetAddrList(); 那为何没有SetAddrList方法呢?这边还稍微有点不通 >_< 太惊人了```
我把CFile IniFile对象放到全局就可以了 -_- 真是晕了