WIN32、VC++2005にて開発中です。
CreateWindowでSTATICコントロールを使ってBITMAPを表示する方法が分からなくて困ってます。
ウィンドウプロシージャのWM_CREATEで、
下記の様に書いてみたんですがダメでした。
CreateWindowW(L"Static", L"***", WS_VISIBLE|WS_CHILD|SS_BITMAP,120, 3, 100, 45, hWnd, HMENU(-1), NULL, NULL);
ビットマップはIDB_BITMAP1という名前で追加してリソースビューで確認しました。
CreateWindowで表示させたいんですがいい方法ありますか?
初心者でアホなんでなるべく解り易くお願いします。
No.1ベストアンサー
- 回答日時:
こんばんは。
>>下記の様に書いてみたんですがダメでした。
その後、スタティックコントロールのハンドルに対して、ビットマップを設定しなければいけません。
「STM_SETIMAGE」↓スタティックコントロールにビットマップを設定する。
http://msdn.microsoft.com/en-us/library/bb760782 …
IDB_BITMAP1のビットマップをロードしなければいけません。
「LoadImage()」↓ビットマップのロード。
http://msdn.microsoft.com/ja-jp/library/cc364835 …
以下参考程度に。
//ビットマップ等のハンドル管理には気をつけて下さい
static HBITMAP s_hBitmap = 0;
case WM_CREATE:
{
//モジュールハンドルを取る
HINSTANCE hInst = ::GetModuleHandle(0);
//スタティックコントロールを作成する
HWND hStatic = ::CreateWindowW(L"Static", L"***", WS_VISIBLE|WS_CHILD|SS_BITMAP,120, 3, 100, 45, hWnd, HMENU(-1), NULL, NULL);
//此方のやり方は、ビットマップをファイルからロードします
//s_hBitmap = (HBITMAP)LoadImage(hInst, "ココにファイル名をいれる", IMAGE_BITMAP, 0, 0, LR_CREATEDIBSECTION | LR_DEFAULTSIZE | LR_LOADFROMFILE);
//ビットマップをリソースからロードする
s_hBitmap = (HBITMAP)LoadImage(hInst, MAKEINTRESOURCE(IDB_BITMAP1), IMAGE_BITMAP, 0, 0, LR_CREATEDIBSECTION | LR_DEFAULTSIZE);
//スタティックコントロールにビットマップを設定する
::SendMessage(hStatic, STM_SETIMAGE, IMAGE_BITMAP, (LPARAM)s_hBitmap);
return TRUE;
}
とても分かりやすい説明ありがとうございます。
WindowsMobileで動かしている性かLR_CREATEDIBSECTION | LR_DEFAULTSIZEで識別子を認識しませんエラーが起きLR_DEFAULTCOLORで解決しました。
本当にありがとうございます。
お陰様で助かりました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBA Bookの表示、非表示 1 2022/09/16 20:44
- MySQL PHPとMySQLを使った掲示板の作り方 1 2022/06/02 13:00
- Java javaでのプログラム(配列)について質問です. 2 2022/10/14 22:27
- Visual Basic(VBA) エクセルのマクロについて教えてください。 3 2023/02/17 11:59
- その他(Microsoft Office) EXCELでバーコードを作成すると白くなってコードが見えません 1 2022/04/04 14:24
- Windows 10 (続き)2つのウィンドウ選択時の表示について 6 2023/08/13 15:05
- Java java 飾子を付けること(public static・・・) ・コンソールへの出力処理はmainメ 2 2022/06/16 19:34
- Visual Basic(VBA) Excelのマクロコードについて教えてください。 1 2022/06/19 10:08
- Visual Basic(VBA) VBA 参照先で選んだファイルをコピーし、出力先に別名で保存したい 8 2022/05/13 20:37
- Visual Basic(VBA) Vba LongPtrについて教えてください 2 2022/08/19 11:14
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
コントロールの書式設定で、“コ...
-
フォームでPDFを表示させた...
-
ActiveXコントロールを.NETにイ...
-
エクセル - リストボックスのマ...
-
コモンダイアログコントロール...
-
C++6.0でのresource.hについて
-
警告表示を非表示にしたい
-
DateTimePickerでに年月までし...
-
ドッキングウィンドウ(コント...
-
連続で印刷すると画像が更新さ...
-
VC6 コントロールウインドウの表示
-
エクセルのコントロールツール...
-
TabControlとToolBarの背景色変更
-
VB6.0のデザイン時 コントロー...
-
VScrollBarの点滅を何とかしたい。
-
ダイアログとリストコントロー...
-
ワードのドロップダウンリスト
-
ダイアログのスクロールバー
-
MFC・ダイアログベースで、ダイ...
-
ダイアログボックスのボタンコ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
コントロールの書式設定で、“コ...
-
エクセルのコントロールツール...
-
C++6.0でのresource.hについて
-
DateTimePickerでに年月までし...
-
エクセル - リストボックスのマ...
-
コモンダイアログコントロール...
-
フォームでPDFを表示させた...
-
連続で印刷すると画像が更新さ...
-
ActiveXコントロールを.NETにイ...
-
スピンボタンを右クリックして...
-
警告表示を非表示にしたい
-
TabControlとToolBarの背景色変更
-
ワードのドロップダウンリスト
-
CEdit の内容が変わった時にメ...
-
文字色を変えたい(ACCESS VBA)
-
VScrollBarの点滅を何とかしたい。
-
EXCELVBA リストボックスで選択...
-
regsvr32でActiveX登録を行ったocx
-
VBAでリストボックス内で↑↓の操...
-
VB6.0のデザイン時 コントロー...
おすすめ情報