1

データベースへの接続であるオブジェクトを持つドキュメントクラスがあります。ドキュメントクラスには、コンボボックスを含むメニューから生成されるダイアログボックスがあります。現在、OnInitDialogを使用してコンボボックスの項目を設定していますが、データベース接続を使用したいと考えています。

データベース接続オブジェクトをダイアログボックスオブジェクトに提供する最良の方法は何ですか?私はそれを議論として渡すことができないと思います、そして私が構築後にそれを供給するならば、私はOnInitDialogへの呼び出しを逃したかもしれません。親オブジェクトを見つけてgetMethodを呼び出してデータベースオブジェクトを取得する方法はありますか、それとも私はまったく間違った方向に進んでいて、まったく異なることを試みるべきですか?

助けてくれてありがとう、ジェームズ

4

3 に答える 3

2

通常、ダイアログをサブクラス化して、データベース オブジェクトなど、作業したいオブジェクトを含むカスタム コンストラクターを作成します。

于 2012-05-30T11:49:37.153 に答える
1

ダイアログのコンストラクターでデータベース接続オブジェクトを渡す必要があります。ダイアログ コンストラクターを変更するか、それに応じて別のコンストラクターを追加します。ダイアログの他の単純なコンストラクターをプライベートとして宣言できるため、データベース接続を渡すことがダイアログの要件になります。

于 2012-05-30T14:38:16.803 に答える
0

参照しているアーキテクチャ、つまりドキュメントクラス内のダイアログボックスについてはわかりませんが、ダイアログボックスクラス内にデータベース接続用のメンバー変数を追加してから、ダイアログボックスコンストラクターで、または dlg->dbConnection = dbConn;DoModalまたはShowWindowを呼び出す前にdb接続変数を設定できると思います

于 2012-05-30T11:54:43.033 に答える