BCC32 で、
ShellAbout(hWnd,"","",LoadIcon(hInst, IDI_APPLICATION));
ShellAbout(hWnd,"","",LoadIcon(NULL, IDI_APPLICATION));
↑ならアイコンに関してどっちでもできるけど、リソースで
MYICONSM ICON DISCARDABLE "ico.ico"
として、
ShellAbout(hWnd,"","",LoadIcon(hInst, "MYICON");
ShellAbout(hWnd,"","",LoadIcon(NULL, "MYICON"));
↑はアイコンに関してどっちも無効で旗になります。
BCC32 で ShellAbout( ) で自作アイコンを表示するには
どうしたらいいんですか?
#include <windows.h>
#include <shellapi.h>
HINSTANCE hInst;
HICON hIcon;
LRESULT CALLBACK WndProc(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam){
switch (uMsg){
case WM_LBUTTONDOWN:
ShellAbout(hWnd,"","",?;
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hWnd,uMsg,wParam,lParam);
}
return 0;
}
int WINAPI WinMain(HINSTANCE hInst,HINSTANCE,LPSTR,int){
HWND hWnd;
WNDCLASSEX wc;
MSG msg;
wc.cbSize =略
wc.style =
wc.lpfnWndProc =
wc.hInstance =
wc.cbClsExtra =
wc.cbWndExtra =
wc.lpszMenuName =
wc.lpszClassName =
wc.hIcon =
wc.hCursor =
wc.hbrBackground =
RegisterClassEx(&wc);
hWnd = CreateWindow(wc.lpszClassName,"TEST",WS_OVERLAPPEDWINDOW,
0,0,640,480,NULL,NULL,hInst,NULL);
ShowWindow(hWnd,SW_SHOWNORMAL);
UpdateWindow(hWnd);
while(GetMessage( &msg, NULL, 0, 0)){
TranslateMessage( &msg );
DispatchMessage( &msg );
}
return 0;
}
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
確認ですが、LoadIconの戻り値がNULLでないことは
確認されてますよね?
LoadIcon(hInst, "MYICON"); とか
LoadIcon(NULL, "MYICON");
の戻り値です。
アイコンの作成の仕方に間違えはないんですよね?
LoadIconのヘルプを見ると、
「アイコンリソースは、カラービットマップまたは
モノクロビットマップにすることができます。アイコ
ンのサイズは、GetSystemMetrics 関数で引数として
SM_CXCURSOR や SM_CYCURSOR を渡したときに得られ
る値でなければなりません。それ以外のサイズのアイ
コンをロードするには、LoadImage 関数を使用しま
す。」
とありますが、それは、読まれていますね?
この回答への補足
質問ソースに間違いがあったから下に全部書き直します。
BCC32 で、
ShellAbout(hWnd,"","",LoadIcon(hInst, IDI_APPLICATION));
ShellAbout(hWnd,"","",LoadIcon(NULL, IDI_APPLICATION));
↑ならアイコンに関してどっちでもできるけど、リソースで
MYICON ICON DISCARDABLE "ico.ico"
MYICONSM ICON DISCARDABLE "icosm.ico"
として、
ShellAbout(hWnd,"","",LoadIcon(hInst, "MYICON");
ShellAbout(hWnd,"","",LoadIcon(NULL, "MYICON"));
↑はアイコンに関してどっちも無効で旗になります。
BCC32 で ShellAbout( ) で自作アイコンを表示するには
どうしたらいいんですか?
BCC32 で実際にアイコン表示できる方だけに教えてほしいです。
#include <windows.h>
#include <shellapi.h>
HINSTANCE hInst;
HICON hIcon;
LRESULT CALLBACK WndProc(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam){
switch (uMsg){
case WM_LBUTTONDOWN:
ShellAbout(hWnd,"","",?;
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hWnd,uMsg,wParam,lParam);
}
return 0;
}
int WINAPI WinMain(HINSTANCE hInst,HINSTANCE,LPSTR,int){
HWND hWnd;
WNDCLASSEX wc;
MSG msg;
wc.cbSize =略
wc.style =
wc.lpfnWndProc =
wc.hInstance =
wc.cbClsExtra =
wc.cbWndExtra =
wc.lpszMenuName =
wc.lpszClassName =
wc.hIcon =
wc.hIconSm = LoadIcon(hInst, "MYICONSM");// これは成功。
wc.hCursor =
wc.hbrBackground =
RegisterClassEx(&wc);
hWnd = CreateWindow(wc.lpszClassName,"TEST",WS_OVERLAPPEDWINDOW,
0,0,640,480,NULL,NULL,hInst,NULL);
ShowWindow(hWnd,SW_SHOWNORMAL);
UpdateWindow(hWnd);
while(GetMessage( &msg, NULL, 0, 0)){
TranslateMessage( &msg );
DispatchMessage( &msg );
}
return 0;
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Vba LongPtrについて教えてください 2 2022/08/19 11:14
- Visual Basic(VBA) VBA 配列を使ったコードに直していただけますか 4 2023/05/06 15:18
- C言語・C++・C# c言語の問題の説明、各所ごとに 5 2023/07/26 11:03
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- その他(スマートフォン・携帯電話・VR) Bluetoothイヤホンとスマホの音量を連動させたい 1 2023/03/25 15:55
- 猫 飼い猫の乳腺腫瘍 1 2023/01/26 03:00
- C言語・C++・C# バイナリファイルをコピーするのにかかる時間を測りたいのですが実行するとFatel error:gli 2 2022/11/03 01:10
- C言語・C++・C# カードシャッフルのブログラムを使ってc言語でブラックジャックをしたい 2 2022/04/12 15:13
- サッカー・フットサル ワールドカップ決勝最高!!ニワカの自分ですら、メッシが伝説となる最高の試合だということは分かったし、 5 2022/12/19 12:12
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エディットボックスの背景の色...
-
この列挙体でsysjanの関数はあ...
-
画像を表示したいのですが……
-
エラー Run-Time Check Failur...
-
プログラミングでエラーが出ま...
-
「an=(n-1)/(n+1)のときlim[n→∞...
-
Enterキーを押されたら次の処理...
-
マイナスからプラスへ転じた時...
-
C言語での引数の省略方法
-
「指定されたキャストは有効で...
-
DWORDの実際の型は何でしょうか
-
fgetsなどのときのstdinのバッ...
-
c言語で、繰り返し文の中で、0....
-
2÷3などの余りについて
-
#define _CRT_SECURE_NO_WARNIN...
-
複数桁10進数の*桁目だけを抽出...
-
*をユーザーが入力した数字の数...
-
プログラムでの数字につく”f”の...
-
正負を反転させて出力するプロ...
-
(int *)の意味
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Win32APIでウィンドウを中央に...
-
オーバーレイみたいな処理がしたい
-
ダイアログプログラムでEnterキ...
-
キャレットの現在位置の表示 (W...
-
PeekMessageについて
-
ウィンドウ非表示に時に表示し...
-
C#のswitch文を簡略化したいの...
-
C言語win32api、エディットボッ...
-
音量調節
-
LoadImageを使用し、タイトルバ...
-
プログラミングでエラーが出ま...
-
エディットコントロール入力時...
-
ウィンドウハンドルがメッセー...
-
ボタンの色(WINAPI)
-
画像を表示したいのですが……
-
WINAPIでキーから文字列を入力...
-
エラー Run-Time Check Failur...
-
エディットボックスの背景の色...
-
Win32APIでアイコンファイルを...
-
WM_KEYDOWNでPrtScを捕まえる方...
おすすめ情報