アイコンの変更
アイコンの変更
Visual studio2010 C++でゲーム製作しています。
exeファイルのiconを変えようとしていますが出来ません。
1、縦横32ドットのアイコンファイル(拡張子『ico』)を作成し
プロジェクトファイル(拡張子『sln』)があるフォルダに保存
2、MAINICON ICON "アイコンファイル名"を書いたResource.rcファイルを作成(メモ帳で制作しまいた)、
プロジェクトファイルがあるフォルダに保存
3、プロジェクト→既存項目の追加 で Resource.rcをプロジェクトに追加
この流れで進めました。
最後にビルドしてみたのですが、
ウインドウの左上のiconが変わっておりません。
どこか間違ってますか?
exeファイルのiconを変えようとしていますが出来ません。
1、縦横32ドットのアイコンファイル(拡張子『ico』)を作成し
プロジェクトファイル(拡張子『sln』)があるフォルダに保存
2、MAINICON ICON "アイコンファイル名"を書いたResource.rcファイルを作成(メモ帳で制作しまいた)、
プロジェクトファイルがあるフォルダに保存
3、プロジェクト→既存項目の追加 で Resource.rcをプロジェクトに追加
この流れで進めました。
最後にビルドしてみたのですが、
ウインドウの左上のiconが変わっておりません。
どこか間違ってますか?
Re: アイコンの変更
exeファイルのアイコン自体は変わっていますか?
Re: アイコンの変更
はい、release後のexeファイルのicon自体は変わっておりますが
そのあとビルドしても、そのexeファイルでゲームを実行出来る状態で実行しても、
ウインドウの左上はデフォルトのiconが表示されております。
そのあとビルドしても、そのexeファイルでゲームを実行出来る状態で実行しても、
ウインドウの左上はデフォルトのiconが表示されております。
Re: アイコンの変更
DXライブラリを使っている場合は、SetWindowIconIDを使用することで変更できるはずです。
http://homepage2.nifty.com/natupaji/DxL ... html#R11N2
http://homepage2.nifty.com/natupaji/DxL ... html#R11N2
Re: アイコンの変更
通常のWindowsアプリケーションの場合は、
でアイコンを読み込んで、
ウィンドウを作成する際のWNDCLASSEX構造体の変数名をwcexとしたとき としてウィンドウを作成するか、
ウィンドウ作成後にそのウィンドウハンドルをhWndとしたとき として設定してください。
変数名は適宜読み替えてください。
HICON hMainIcon=(HICON)LoadImage(GetModuleHandle(),"MAINICON",IMAGE_ICON,0,0,LR_DEFAULTSIZE | LR_SHARED);
ウィンドウを作成する際のWNDCLASSEX構造体の変数名をwcexとしたとき としてウィンドウを作成するか、
ウィンドウ作成後にそのウィンドウハンドルをhWndとしたとき として設定してください。
変数名は適宜読み替えてください。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
Re: アイコンの変更
h2so5さん
ありがとうございます。
促して頂いたSetWindowIconIDを使用しようと思ったのですが
>ミニテクコーナーの一連の作業を行った場合、
>VisualC++ はプロジェクトの フォルダに勝手に『resource.h』というヘッダファイルを作成します。
どうやらresource.hが作成されないので以降の流れに進められません。
resource.hの中身はいろいろ書かれてるらしいので自作することも出来ませんし、
んー、どうすればいいでしょうか?
みけCATさん
DXライブラリを利用していますのでMain.cppがスッカラカンなんですよ。
そこにそれらのプログラム文をどう組み込めばいいのかちょっとわかりません。
ありがとうございます。
促して頂いたSetWindowIconIDを使用しようと思ったのですが
>ミニテクコーナーの一連の作業を行った場合、
>VisualC++ はプロジェクトの フォルダに勝手に『resource.h』というヘッダファイルを作成します。
どうやらresource.hが作成されないので以降の流れに進められません。
resource.hの中身はいろいろ書かれてるらしいので自作することも出来ませんし、
んー、どうすればいいでしょうか?
みけCATさん
DXライブラリを利用していますのでMain.cppがスッカラカンなんですよ。
そこにそれらのプログラム文をどう組み込めばいいのかちょっとわかりません。
Re: アイコンの変更
resource.hをメモ帳などのテキストエディタで作成してください。
例えばresource.hを とし、Resource.rcを としてください。resource.hとResource.rcは同じ階層においてください。
そして、DxLib_Init();を呼び出している関数が書かれているファイルの先頭に例えば みたいな感じの記述を入れてください。
(さっき作成したresource.hを取り込みます。resource.hへのパスは適宜修正してください)
そして、DxLib_Init();の直前にSetWindowIconID(MAINICON);としてください。(もっと前でもいいです)
例えばresource.hを とし、Resource.rcを としてください。resource.hとResource.rcは同じ階層においてください。
そして、DxLib_Init();を呼び出している関数が書かれているファイルの先頭に例えば みたいな感じの記述を入れてください。
(さっき作成したresource.hを取り込みます。resource.hへのパスは適宜修正してください)
そして、DxLib_Init();の直前にSetWindowIconID(MAINICON);としてください。(もっと前でもいいです)
オフトピック
プログラムはどのようなファイル名のファイルに書いていますか?太郎坊 さんが書きました:DXライブラリを利用していますのでMain.cppがスッカラカンなんですよ。
そこにそれらのプログラム文をどう組み込めばいいのかちょっとわかりません。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
Re: アイコンの変更
みけCATさん
言う通りにしましたが、
error RC1004: unexpected end of file found とエラーが出てビルド出来ません。
マクロ定義で1000というのがよくわからないのですが、
その1000をどこで活かせてるのかもわかりません。
>プログラムはどのようなファイル名のファイルに書いていますか?[/offtopic][/quote]
すみません、すっからかんと書きましたが
プログラムを別のところにあるとかそういうのでは無く
DXライブラリを利用してる分、ウインドウ生成などの細かいプログラムが無く、
Iconの読み込み部分がわからない、と言いたかったのです。
main.cppにあるUpdateでゲームをまわしているのは違いありません。
言う通りにしましたが、
error RC1004: unexpected end of file found とエラーが出てビルド出来ません。
マクロ定義で1000というのがよくわからないのですが、
その1000をどこで活かせてるのかもわかりません。
>プログラムはどのようなファイル名のファイルに書いていますか?[/offtopic][/quote]
すみません、すっからかんと書きましたが
プログラムを別のところにあるとかそういうのでは無く
DXライブラリを利用してる分、ウインドウ生成などの細かいプログラムが無く、
Iconの読み込み部分がわからない、と言いたかったのです。
main.cppにあるUpdateでゲームをまわしているのは違いありません。
Re: アイコンの変更
ググったらRC1004はリソースコンパイラのエラーのようですね。
今書いてあるresource.hとResource.rc全体を貼っていただけますか?
今書いてあるresource.hとResource.rc全体を貼っていただけますか?
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
Re: アイコンの変更
ごめんなさい、原因がわからないです。
プロジェクト全体をアップロードすることはできますか?
(現象を再現した小さいサンプルで構いません)
http://www.axfc.net/uploader/
resource.hとResource.rcは改行で終わっていますか?
プロジェクト全体をアップロードすることはできますか?
(現象を再現した小さいサンプルで構いません)
http://www.axfc.net/uploader/
resource.hとResource.rcは改行で終わっていますか?
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
Re: アイコンの変更
私の場合は
resource.rcに
100 ICON "icon.ico"
と書いてプロジェクトにいれ、
DxLib_Initの前に
SetWindowIconID(100);
と書いています。
resource.rcに
100 ICON "icon.ico"
と書いてプロジェクトにいれ、
DxLib_Initの前に
SetWindowIconID(100);
と書いています。
Re: アイコンの変更
Tatuさんのレスを参考に
Resource.rc内の#include "resource.h"を削除したら出来ました!
みけCATさん、Tatuさん
どうもありがとうございました。
Resource.rc内の#include "resource.h"を削除したら出来ました!
みけCATさん、Tatuさん
どうもありがとうございました。
Re: アイコンの変更
アイコン問題は解決したのですが
似たような別の問題がありますのでこちらで質問させて下さい。
ビルドした後、ウインドウの左上にアイコンがあり、
その右横に「文字」も表示されているじゃないですか?
この文字はどこのなにが反映されて決まるのでしょう?
プロジェクト名でも無いですよね?
この部分を表示しない(アイコンだけにする)、
もしくは任意な文字文に変えることは出来ますか?
似たような別の問題がありますのでこちらで質問させて下さい。
ビルドした後、ウインドウの左上にアイコンがあり、
その右横に「文字」も表示されているじゃないですか?
この文字はどこのなにが反映されて決まるのでしょう?
プロジェクト名でも無いですよね?
この部分を表示しない(アイコンだけにする)、
もしくは任意な文字文に変えることは出来ますか?
Re: アイコンの変更
ウィンドウの左上に表示される文字は
DXライブラリ置き場 リファレンスページ
http://homepage2.nifty.com/natupaji/DxL ... tml#R15N13
にあるSetMainWindowText関数で設定可能です。
DXライブラリ置き場 リファレンスページ
http://homepage2.nifty.com/natupaji/DxL ... tml#R15N13
にあるSetMainWindowText関数で設定可能です。