VC++初心者用 Tips

おぼえがきとか言いながら寄せ集め。


01:実行ファイルの軽量化

                                                    

#pragma comment(linker, "/nodefaultlib:\"libc.lib\"")    // ランタイムライブラリを使用しない
#pragma comment(linker, "/entry:\"WinMain\"")         //
エントリポイント変更

   

WinMain 関数の引数が正しく設定されません。
HINSTANCE は GetModuleHandle 
コマンドライン引数は GetCommandLine 
で取得可能。

 


02:窓を出してメッセージ表示

                                                   // "表示内容"
AfxMessageBox("");

                                                   //YES/NOの選択
a=AfxMessageBox("",MB_YESNO);
if(a==IDYES)

 

03:ダイアログの初期処理

 

BOOL CGomi5Dlg::OnInitDialog()
{
// TODO: 特別な初期化を行う時はこの場所に追加してください。
ここに処理を追加して記述する。
return TRUE; // TRUE を返すとコントロールに設定したフォーカスは失われません。
}

 


04:ボタンにビットマップ

 

ダイアログのクラスに、
	CBitmapButton button1;
を追加。
コンストラクタで、以下の初期化をします。
	if (!button1.LoadBitmaps(_T("Image1Up"), _T("Image1Down"), _T("Image1Focus")))
	{
		TRACE0("Failed to load bitmaps for buttons\n");
		AfxThrowResourceException();
	}
あとは、OnInitDialog()のなかで、
	VERIFY(button1.SubclassDlgItem(IDOK, this));
	button1.SizeToContent();
とすればOKです。

リソースエディタで
ボタンのスタイルタブの中にある「オーナー描画」をチェック。

button1.LoadBitmaps(押されてない, 押された, フォーカスが当たってる, 無効)
それぞれの状態のファイル名またはリソースIDを指定します。
で第2,3,4の引数はNULLまたはOでもかまいません。

 

 



 

 

Top