将对象从文档类传递到MFC中的对话框

时间:2012-05-30 11:21:23

标签: c++ mfc

我有一个文档类,它有一个与数据库连接的对象。文档类有一个对话框,该菜单是从包含组合框的菜单中生成的。我目前正在使用OnInitDialog来设置组合框中的项目,但是想要使用数据库连接。

将数据库连接对象提供给对话框对象的最佳方法是什么? 我不认为我可以将它作为参数传递,如果我在构造后提供它,我可能会错过对OnInitDialog的调用。有没有办法找到父对象并调用getMethod来获取数据库对象,或者我是否完全在错误的轨道上并尝试完全不同的东西?

感谢您的帮助, 詹姆斯

3 个答案:

答案 0 :(得分:2)

通常,您会将对话框子类化以创建自定义构造函数,该构造函数包含您要处理的任何对象,例如你的数据库对象。

答案 1 :(得分:1)

您应该在对话框的构造函数中传递数据库连接对象。修改对话框构造函数或相应地添加另一个构造函数。您可以将对话框的其他普通构造函数声明为私有,因此传递数据库连接成为对话框的要求。

答案 2 :(得分:0)

我不确定您所指的体系结构,即文档类中的对话框,但我认为您可以在对话框类中添加数据库连接的成员变量,然后在对话框构造函数中设置数据库连接变量或 在调用DoModal或ShowWindow之前dlg->dbConnection = dbConn;