子ウインドウのコンボボックスのデータを
子ウインドウのスタティックテキストに表示させることはできるのですが、
親ウインドウのスタティックテキストに表示させる事ができません。
ご存知の方がいらっしゃいましたらご教示ください。
環境:VC++ VisualSutadio2008 MFC
===子ウインドウのスタティックに表示させるソース=======
void CSetComDlg::OnBnClickedStateRead()
{
// TODO: ここにコントロール通知ハンドラ コードを追加します。
UpdateData(TRUE);
CString xxx;
CString yyy;
m_ListCtl.GetWindowText(xxx);
m_Box.GetWindowText(yyy);
Port.SetWindowText("Port=" + xxx);
State.SetWindowText("baud=" + yyy);
}
子ウインドウのコンボボックスのデータが格納されているm_Box、m_ListCtlをインクルードだけでは親クラスで使用できず悩んでいます。
> インクルードだけでは親クラスで使用できず
とは?
どういうコードを書いた結果どうなって「使用できない」と判断したのでしょう?
aetos様
ご回答ありがとうございます。
親ウインドウのクラスのヘッダー、.cppに
#include "子ウインドウクラス.h"を追記し、
子ウインドウで使用しているm_Box、m_ListCtlを記載したところ、
定義されていませんとエラーが出たため、「使用できないんだ」
と判断いたしました。
親クラスのコードのどこかに「m_Box」とだけ書いたらコンパイルエラーが出たということでしょうか?
ちゃんと「子ダイアログの m_Box」という意味のコードを書きましたか?
クラスとインスタンスの違いってやつがわかっていないような気のせいがする。
class 人 { date_t 誕生日; ... };
人 俺, 相方;
とあったとき 人.誕生日 というのは意味がなく 俺.誕生日 だったら意味がある、
というあたりの理解は大丈夫なのだろうか?
その辺が理解できていないのであれば C++ というか OO の勉強のほうが先。
子ダイアログインスタンスのスコープ(記憶域期間)とかその辺の話がはっきりしないと、
具体的にどう書いていいかのアドバイスは出来ないんだよ。
aetos様、tetrapod様
ご回答ありがとうございます。
子ダイアログのm_Boxの記述をしていませんでした。
記述したところ無事できました。
ありがとうございます。
ご指摘されたように、もっと勉強してから質問させていただきます。
失礼いたしました。
ありがとうございました。
ツイート | ![]() |