0

私は MFC を初めて使用します。どのようにしたらボタンをカスタマイズできますか?

  1. 背景にペイントする必要があります。
  2. ペイントされた領域に画像を配置できる必要があります。
  3. ペイントされた領域にテキストを追加する必要があります。

インターネットを閲覧した後、ボタンがBS_OWNERDRAWスタイルで作成されたら、DrawItemメソッドをオーバーライドする必要があることを知りました.DrawItemメソッドをオーバーライドするにはどうすればよいですか?

(SDIを使用したMFCアプリケーション)

4

1 に答える 1

1

グローバル変数:

CButton button;

DoDataExchange では:

DDX_Control(pDX, IDC_BUTTON, button);

ここで、IDC_button はダイアログ リソースで宣言され、pDX は CDataExchange です。

画像を追加する場所:

button.SetBitmap((HBITMAP)LoadImage(AfxGetApp()->m_hInstance,
        MAKEINTRESOURCE(IDB_BITMAP1),
        IMAGE_BITMAP, 16, 16, LR_COLOR));

ここで、m_hInstance は CWinApp、IDB_BITMAP1 はリソース ピクチャです。

テキストの場合:

  button.SetWindowTextW(_T("TEXT"));
于 2015-09-09T15:30:43.040 に答える