C/C++/MFC - Tips

■別のクラスを参照

C++/MFCで他のクラスのメンバや関数を参照する方法です。

● アプリケーションクラスを参照する

CSampleApp* pApp = (CSampleApp*)AfxGetApp();

● フレームウインドウクラスを参照する

CMainFrame* pFramWnd = (CMainFrame*)AfxGetMainWnd();

● ドキュメントクラスを参照する

  ビュークラスから

CSampleDoc* pDoc = (CSampleDoc*)GetDocument();

  その他のクラスから

CSampleDoc* pDoc = (CSampleDoc*)((CFrameWnd *)AfxGetMainWnd())->GetActiveDocument();

● ビュークラスを参照する

CSampleView* pView = (CSampleView*)GetActiveView();

これが全てではありません。他にも色々と方法はあると思います。


環境:
 [WindowsXP]
 [Visual Studio 2005]
 [MFC]


■Visual Studio 2005で独自キーワードに色を付ける

Microsoft Visual Studio 2005 で、独自のキーワードを定義しint、if や for と同じように色を付ける事が出来ます。

色が付くことでソースが見やすくなります。

方法は簡単で、usertype.dat というファイルを作り、キーワードを記述し、devenv.exe と同じフォルダに置いておくだけです。

次の例ではMicrosoft Visual Studio 2005 のインストール時に、インストール先をデフォルトのままにしていたので、devenv.exe は次のフォルダにあります。

  → C:\Program Files\Microsoft Visual Studio 8\Common7\IDE

usertype.dat には、次のようにキーワードを1つずつ改行し記述ます。

このような感じで、色付けしたいキーワードを記述します。

BYTE
WORD
DWORD
TRUE
FALSE
BOOL
TCHAR
HWND
malloc
free
CString
CFile
CEdit
CStatic
CSize
CRect
NULL

キーワードを追加したら、Microsoft Visual Studio 2005 を一度終了してください。
そうしないと、追加したキーワードの色付けは反映されません。

Microsoft Visual Studio 2005 のヘルプに詳しく記述されています。
「usertype.dat」で検索するとヘルプが出てきます。


環境:
 [WindowsXP]
 [Visual Studio 2005]
 [C/C++]