私は、3 つのクラス (Visual Studio ウィザードによって自動的に生成されます) で構成される単純な MFC プログラムに取り組んでいます。
CWinApp
派生物、MyWinApp
CDocument
派生物、MyDocument
CView
派生物、MyView
- と呼ばれる
CFrameWnd
派生物CMainFrame
CDialog
最後に、 namedから派生したダイアログ ボックス クラス
MyDialog
MyDialog
ユーザーが整数値を入力できる編集ボックスがあります。クリックした後、関数内の描画アルゴリズムでOK
その値(と呼びましょう)を使用したいと思いますs_value
MyView::OnDraw(CDC* pDC){...}
たとえば、OnDraw()
関数は次のようになります。
{...
SetPixel(posX, posY, (s_value < 5) ? color1 : color2);
... }
ただし、クラス内にある編集ボックスの値を表す変数を、クラス内の関数MyDialog
内の描画式に取得する方法がわかりません。OnDraw
MyView
たとえば、MyView
fromのメソッドを呼び出したい場合MyDialog
、新しいオブジェクトを作成する必要があり、すべてがめちゃくちゃになります。静的変数にも同様の問題があります。
私はJavaのバックグラウンドを持っているので、私のC ++は少しあいまいです。これがそれほど洗練された質問でない場合は、事前にお詫び申し上げます。