我有一个使用 C++(在 VS 2010 中开发)以 winform 制作的应用程序。GUI 具有某些文本字段、单选按钮、复选框等。要操作该软件,必须填写这些字段/按钮/框等。
大约有 50 种不同的 GUI,每个 GUI 中大约有 20 个字段。
我希望在应用程序关闭并重新启动后,此字段中的最新参数会自动填写,因此用户无需再次重新输入所有这些值。
实现这一目标的最简单和最简单的方法是什么?
我有一个使用 C++(在 VS 2010 中开发)以 winform 制作的应用程序。GUI 具有某些文本字段、单选按钮、复选框等。要操作该软件,必须填写这些字段/按钮/框等。
大约有 50 种不同的 GUI,每个 GUI 中大约有 20 个字段。
我希望在应用程序关闭并重新启动后,此字段中的最新参数会自动填写,因此用户无需再次重新输入所有这些值。
实现这一目标的最简单和最简单的方法是什么?
您可以将 Windows 注册表与
WindowsFormName(子项)---------> ControlName(子项)-----> ControlValue(子项)
当窗体关闭时,您将每个控件的值保存在注册表中
加载表单时,您会读取值
这最好使用 MVC 模式解决,其中模型包含已填充的数据。视图包含它将呈现的方式(例如在 Winforms 中),最后是控制器,除了执行业务逻辑之外,它还需要做一些工作(用于保存状态)。
我更喜欢为此使用序列化。您可以序列化模型字段并将它们读回(仅需要的字段)。
如果您不喜欢序列化,可以尝试写入易于修改的 INI 文件。
第三,您可以使用数据库mdf
文件来存储状态。
但要做好这一切,您需要修改应用程序以使用 MVC 架构。
如果您对快速而肮脏的解决方案感到满意,您可以试试这个:
实现保存机制:
实现加载机制。这假设值之间没有依赖关系(如果有自动计算字段,请不要保存它们)
一旦实施,此方法可用于所有表单,并且可以处理添加/删除控件。但是,如果有业务规则,使用 MVC 方法并序列化模型可能会更好。