- 1 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 03:44:55 ]
- スレ立てるまでもない、Win32APIのついての質問はこちらへどうぞ。
やさしいお兄さんやお姉さんたちが答えてくれるかも。 過去スレ、関連リンクは>>2-5くらい。 ■注意 ・質問する前にMSDNライブラリやPlatformSDK、Google等で検索しましょう。 ・日本語版MSDN Online Libraryは不完全です。英語版(msdn.microsoft.com/library/)の利用推奨。 ・APIフックなど高度な事をしたい場合はできるだけAdvenced Windowsを読みましょう。 ・言語特有の問題やIDE、MFCやVCLなどの質問はそれぞれの言語や開発環境スレで
- 386 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 22:47:03 ]
- >>385
ではなくて、自分の作ったファイルならともかくVCの用意してるファイルでのエラーなんかどう対処すればいいんだ…… ってのとマイクロソフトへの不信感から勝手にお手上げしてる感じですね……
- 387 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 22:48:08 ]
- はあ?
- 388 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 22:51:08 ]
- 面白くなってまいりました
- 389 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 22:55:06 ]
- >>384
なぜbcc32でVCのインクルードフォルダが現れる?
- 390 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 22:56:27 ]
- 1つめは対処法がわからないのでとりあえず置いておいて、
2つめに関してはPSDKのincludeにあったものをVCのディレクトリにコピーしました。 とりあえずC1083になるファイルは全部コピーしたのですが C:\Program Files\Microsoft Visual Studio 8\VC\INCLUDE\xlocale(326) : warning C4530: C++ 例外処理を使 っていますが、アンワインド セマンティクスは有効にはなりません。/EHsc を指定してください。 d:\my documents\visual studio 2005\projects\nyaopuyo\loadpng.cpp(121) : error C2664: 'memset' : 1 番 目の引数を 'std::_Vector_iterator<_Ty,_Alloc>' から 'void *' に変換できません。(新しい機能 ; ヘルプ を参照) with [ _Ty=png_color, _Alloc=std::allocator<png_color> ] この変換を実行可能なユーザー定義変換演算子がないか、または演算子を呼び出せません。 等のエラーが多数出ます。
- 391 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 22:57:19 ]
- >>389
あ、それはVC++コマンドからclでコンパイルしたときのものです。
- 392 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 23:01:03 ]
- >>384
> bcc32もVisual Studio 2005 コマンド プロンプトから動かしているんですが エラーメッセージの内容から言って、それはVC++のclコンパイラが出しているものだ。 bcc32じゃない。 それにしても、clがwindows.hを読んでunknown pragmaとか、 windef.hが無いだとか、明らかにおかしい状態になっているな。 インストールミスかなにかじゃないのかな。あるいはウィルスにでも 食い荒らされたか。
- 393 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 23:02:40 ]
- >>390
C4530はエラーではなくワーニングだが(それぐらいは区別しろ、頼むから) clに-GXオプションを与えればよい。 2番目はあんたのユーザコードloadpng.cppの問題だろ。
- 394 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 23:07:32 ]
- >>390
>memset(vPalette.begin(), 0, nPal * sizeof png_color); こんなことをやっている糞コードのようだな。 こんなコードはドブに捨ててしまえ……と言いたいところだが、とりあえず vPalette.begin -> &vPalette[0] とでも書き換えるんだな。
- 395 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 23:10:41 ]
- >>390
コピーする必要は無い。 単にPlatfrom SDKのIncludeフォルダをインクルードディレクトリに追加すれば十分だ。
- 396 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 23:11:39 ]
- >>393
-GXよりも警告メッセージのとおり/EHscがお勧め。 VC++ 8からGXは推奨しないというような警告が出るようになったはず。
- 397 名前:デフォルトの名無しさん [2007/04/01(日) 23:15:04 ]
- コンパイルが通ったら今度は「うまく動きません。どうすればいいんでしょうか?」と長いソースを張り付ける予感。
しかし、画像のロードとセーブだけならもっと簡単なライブラリがあるんだけどなw
- 398 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 23:15:27 ]
- >>390
2番目のはイテレータとポインタをごっちゃにしているのが悪い。 イテレータ⊇ポインタだが、逆は成り立たない。 std::vector<png_color> v;というのがあったとしたら、 vの先頭要素へのポインタは&v[0]で取得できる。 memsetを使わずに、std::fill使えとか、vectorのメンバでどうにかしろとも言えるが。
- 399 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 23:19:10 ]
- みなさんありがとうございます。+゚:。(つД`)*.゚。
>>392 自分でincludeディレクトリいじったことはもちろん無いし、ウィルスも恐らく無かったので インストールミスなんでしょうかね…… >>393>>396 仰る通りで申し訳ないです。/EHscでコンパイルを試みました。 >>394 3箇所書き換えたらエラーが loadpng.cpp(121) : error C2064: 0 引数を取り込む関数には評価されません。 に変わりました。 >>395 そうだと思ったんですがその方法を調べるとまた時間がかかりそうだったのでその場しのぎの苦肉の策ということで……
- 400 名前:デフォルトの名無しさん [2007/04/01(日) 23:23:15 ]
- >カスタムリソースのPNGをHBITMAPで読み出してBITMAPと同じように扱うにはどうすればいいのでしょうか?
>PNG GDI+ libpng カスタムリソース等であらかたググってみましたが理解できませんでした。 この質問を自分もしたかったので、成り行きに注目していたんだが。。。
- 401 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 23:26:04 ]
- >>399
vPalette.begin() -> &vPalette[0] ↑ かっこぬけてはるみたいやね。 もう一つも同じ要領。
- 402 名前:394 mailto:sage [2007/04/01(日) 23:26:07 ]
- >>399
悪い悪い、 &vPalette[0]()にしちゃったのか? 正しくは、 vPalette.begin() -> &vPalette[0] だ。
- 403 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 23:31:35 ]
- コンパイルはできてオブジェクトファイルまでは作成できました。
ライブラリが見あたらないと出たのでSDKから根こそぎコピーしました。 MSVCRT.lib(MSVCR80.dll) : error LNK2005: _abort は既に LIBCMT.lib(abort.obj) で定義されています。 LINK : warning LNK4098: defaultlib 'MSVCRT' は他のライブラリの使用と競合しています。/NODEFAULTLIB:library を使用してください。 error LNK2019: 未解決の外部シンボル __imp__ReleaseDC@8 が関数 "struct HBITMAP__ * __cdecl LoadPng(中略) で参照されました。 等のエラー、警告が山ほど出てきました…… 根こそぎコピーがマズかったのでしょうか。
- 404 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 23:32:24 ]
- memset(&vPalette, 0, nPal * sizeof png_color);
もしこう書いているのであれば、単にvPalette.resize(nPal)で十分なはず。 png_colorはどうせただのPODな構造体だろ。 デフォルト初期化と0クリアは同じような結果になるはず。
- 405 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 23:35:23 ]
- >>400
いやはや実は俺もなんだ・・・
- 406 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 23:36:17 ]
- もう働きたくない
- 407 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 23:43:26 ]
- つうか>>375のリンク先のLoadPng()って、ファイルからロードする仕様じゃん。
カスタムリソースをロードしたいんじゃなかったの? つうかVC++持ってるんなら素直にCImage使えやってのは禁句か。 GDI+が対応してるフォーマット(PNGを含む)は全対応だし、リソースからの ロードも出来るぞ。 atlimage.hな。
- 408 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 23:44:39 ]
- Express EditionにはATLないだろ。
- 409 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 23:47:30 ]
- ああ、Express Editionか。これは失礼。
- 410 名前:375 mailto:sage [2007/04/01(日) 23:53:23 ]
- >>407
カスタムからロードしたかったんですが、できるかどうかわからなかったのでとりあえずやってみようって感じです。 で、できないんですか……残念です。 VC++はウィンドウ表示するだけのプログラムすらコンパイルできなかったので(↑でコンパイルまでは解決)bccに乗り換えてました。 本格的にやりたいので製品版も買おうと思うんですが、製品版も今のような調子だったりしないか怖くて手が出ません。 あと、EEでも猫の本とだいぶ違っているし(猫のが古いんだと思いますが)、C++はまだ始めたてだったりするのでそれも手が出ない理由です。 ちなみに製品版買うならVisual Studio 2005 Standard Edition(Academic Edition)ですかね? やりたいことはWINAPI(将来的にはDirectXでも)でゲーム制作です。
- 411 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 23:54:54 ]
- libpngはPNG_SETJMP_NOT_SUPPORTEDを指定してビルドしない限り、
longjmp()でエラーレポートを行う。 >>375のコードはsetjmp()を呼んでいないようだから、多分全く エラーに対応していないな。 もっとマシなコードを探せ。 setjmp(), longjmp()である以上、デストラクタは実行されないから、 その区間でvectorなんぞを使うのは論外だ。 ま、CreateDIBSection, png_create_read_structあたりのキーワードで google codesearchでもすれば、色々引っかかるだろ。
- 412 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 23:58:56 ]
- >>410
> 本格的にやりたいので製品版も買おうと思うんですが、製品版も今のような > 調子だったりしないか怖くて手が出ません。 PlatformSDKはEnterprise Editionではそもそも付属してなくて自分で別途 インストール&環境設定しなきゃいけないからな。 あんたがインストールにミスったってだけの話だろ。 Visual Studioの品質の問題じゃない。 あんたに問題解決能力がないだけの話。それは、どんな製品を使おうが変わらないよ。
- 413 名前:348 mailto:sage [2007/04/02(月) 00:02:25 ]
- おながいします・・・orz
- 414 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 00:04:50 ]
- >>411
VC++ならSEHとの絡みでsetjmp/longjmpでも自動変数のデストラクタが呼ばれるはず
- 415 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 00:05:28 ]
- お前らスルー汁
- 416 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 00:06:03 ]
- ていうかもう、API全然関係ないなwww
- 417 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 00:06:38 ]
- >>414
へぇ。それはいいことを聞いた。教えてくれてありがとう。 ま、それに依存したコードは書く気になれないが……
- 418 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 00:07:01 ]
- 何だこのスレの伸び具合は
- 419 名前:375 mailto:sage [2007/04/02(月) 00:08:05 ]
- >>411
ちょっくら頑張ってきます( `・ω・´) >>412 了解、明日にでもVCとSDK再インスコしまつ。 >>416 サーセンwww
- 420 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 00:12:50 ]
- Platform SDKよりもWindows SDKのほうがお勧め。
スタートメニューの中にVS 2005への設定を行うショートカットがある。 それを実行するだけで、VSコマンドプロンプトからもIDEからも インクルードパスの設定を含めWindows SDKを使用できる状態になる。
- 421 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 00:19:56 ]
- 開発環境すらちゃんと構築できないような奴には無理ということで
- 422 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 00:25:05 ]
- >>413
取りあえず LVM_ 以下の全メッセージを調べてみろ。話はそれからだ。
- 423 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 00:25:22 ]
- 初心者叩きはその辺にしておいて結局のところこれは誰もわからんのだね?
>カスタムリソースのPNGをHBITMAPで読み出してBITMAPと同じように扱うにはどうすればいいのでしょうか?
- 424 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 00:29:04 ]
- 普通にLoadResourceで読んでBITMAPに変換すれば
- 425 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 00:33:19 ]
- EE使ってるちょちんちゃだから、PNGのリソースは妄想に過ぎないに1000ペリカ
と思ったら今日は四月馬鹿じゃんw
- 426 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 00:54:53 ]
- もう四月馬鹿は終了している件
- 427 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 00:55:13 ]
- >>423
リソースをバイナリデータとして読み取り、それをストリーム化、 Gdiplus::BitmapのIStream*を受け取るコンストラクタへ渡す。 そしてメンバのGetHBITMAPでビットマップハンドルを得る。 これでいい?
- 428 名前:デフォルトの名無しさん [2007/04/02(月) 01:01:58 ]
- UpdateLayeredWindowでウィンドウを透明化させると黒色が完全透明扱いに
なっちゃうんだけどどうやったらSetLayeredWindowAttributeと同じような処理にできるかな
- 429 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 01:13:59 ]
- 黒でもアルファ値は255にする
- 430 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 01:38:46 ]
- >>427
横やりでなんですが僕も気になるので実装を詳しく書いて頂けると助かります。
- 431 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 01:45:04 ]
- >>430
詳しくも何も、書いてあることそのままやればいいだけじゃないのか?
- 432 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 01:49:10 ]
- さっきから「僕も気になる」って人が多い件
- 433 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 01:49:14 ]
- GDI+を使うんならPNGのローディングの面倒はGDI+が見てくれる。
>>427そのままでいいはずよ。
- 434 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 02:01:09 ]
- Bitmap::Bitmap(HINSTANCE,WCHAR*)
使えるか知らんがこんなコンストラクタもあるみたいだ
- 435 名前:デフォルトの名無しさん [2007/04/02(月) 02:39:41 ]
- TreeViewのExpandをキャンセルするにはどうしたらいいんでしょうか?
- 436 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 02:48:06 ]
- 僕も気になってるので完全なソースコードをください
- 437 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 02:50:12 ]
- 僕も絶対に気になります。
ソースコードお願いしますこれは絶対に必要ですね。
- 438 名前:432 mailto:sage [2007/04/02(月) 03:10:06 ]
- すまない。俺が悪かったwww
- 439 名前:432 mailto:sage [2007/04/02(月) 03:15:06 ]
- >>435
ツリーが展開される直前に親ウィンドウに TVN_ITEMEXPANDINGが通知されるからそれを引っ掛ける
- 440 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 05:18:15 ]
- 僕も「僕も気になります」が大杉て気になります
- 441 名前:デフォルトの名無しさん [2007/04/02(月) 07:05:30 ]
- 質問スレで言うのもなんだけど、>>427のレスだけでコードが書けない奴って真性のバカだろ。
- 442 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 07:12:51 ]
- 確実に言えるのは書けなかったとしたらもはやこのスレで扱う内容ではない
- 443 名前:428 [2007/04/02(月) 08:24:22 ]
- >>429
SetPixelで0x00ffffffは白が表示されて0xffffffffだと透明になるから アルファ値は読んでるみたいなんだけど、 0x00000000でも透明になっちゃうんだよ
- 444 名前:デフォルトの名無しさん [2007/04/02(月) 11:37:15 ]
- >>439
ありがとうございました。 もうひとつお願いしたいんですが、 イメージインデックスを変える方法はどうしたらいいんでしょうか。
- 445 名前:439 [2007/04/02(月) 11:47:50 ]
- >>444
イメージリスト作ってLVM_SETIMAGELISTでSendする
- 446 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 11:50:33 ]
- 間違えたTVM_だった
- 447 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 12:16:19 ]
- ttp://msdn2.microsoft.com/en-us/library/ms650018.aspx
- 448 名前:デフォルトの名無しさん [2007/04/02(月) 12:26:55 ]
- 猫でも分かる〜でWin32プログラミングの基礎は分かりますか?
- 449 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 12:30:27 ]
- 猫のWin32は言っちゃ悪いけどひどいコーディングしてると思う
メニューのとこ見たら右クリックごとにメニューの生成と破棄繰り返してたよ。
- 450 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 12:36:43 ]
- オブジェクト指向的でいいじゃん
- 451 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 12:37:27 ]
- >>449
そうですか・・・ 本を買う金がないので、400章まであるサンプルを一つ一つ手打ちで勉強してるんですが、 ところどころ非効率なコードが書いてあるということですね。注意して読みます。 ありがとうございました。
- 452 名前:デフォルトの名無しさん [2007/04/02(月) 12:38:09 ]
- 方法論を学ぶ所であってコードを学ぶ所ではないと意識しておけばおk
- 453 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 13:25:27 ]
- 効率に限らず、独学の初心者的な泥臭いコードが多い
あれは教科書ではなくノートだと考えろ 丸写しすると他人の変な癖まで取り込むことになる
- 454 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 13:31:01 ]
- 反面教師なんだよ。
- 455 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 13:36:47 ]
- ついでに思うのは果たして400章までやる必要があるかどうか?
応用って言葉の意味が無いよな
- 456 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 13:39:28 ]
- 必要な動作を追うには、再利用性を考えて効率的に使えるように書かれたコードよりも見やすい。
STLやboostのコードを逐次追うような状態を想像してみると分かりやすいだろう。
- 457 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 14:14:27 ]
- まぁでもなーーーーんもわかんない人にはわかりやすいとは思う。
俺も猫からプログラミング入ったクチだし。数年前の話だけど。
- 458 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 15:21:10 ]
- 猫は雰囲気だけ掴んで詳細はMSDNって感じだな。
- 459 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 16:20:28 ]
- 猫とMSDNの間に差ありすぎだろ
- 460 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 17:18:33 ]
- 猫を含めたWEBサイトだけで窓プログラミングを覚えた
(正確にはMFCの本を1冊だけ買ったけど)俺でも 猫のコードを「あまり良くない」と思えるぐらいには成長した 結局>>452と>>456だと思う
- 461 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 17:41:54 ]
- 猫はほとんど見ないで解説サイトだけで勉強したけど
猫のコードが何故よくないのかわからない俺もいますよ まだまだ勉強不足ってことだろうか・・・
- 462 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 18:13:38 ]
- 猫のコードは普通に醜いし
処理過程も追いにくいと思うぞ 窓初心者ならこっちのほうがお勧め ttp://wisdom.sakura.ne.jp/system/winapi/index.html トピック毎のサンプルが短いから C言語の知識なくても解説見て丸写ししてるうちに分かるはず ちょっとバグってる所もあるけど猫ほどじゃないし
- 463 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 18:22:46 ]
- 後学のために質問なんだけど、
GDI+とか他のライブラリ使わないで、 PNGの画像ファイルをDCに描画する方法って、 どうやればいいのか、解説してるところあったら教えてほしい。
- 464 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 18:30:43 ]
- libpngでテンポラリメモリ上に展開したのち、SetDIBitsToDeviceとか
DIBSectionのメモリ上に展開してBitBltとか。 OleLoadPictureしてRenderとか。
- 465 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 18:37:11 ]
- windowを必要としないソフトでメッセージだけを受け取られますか?
- 466 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 18:37:59 ]
- 投げる側がPostThreadMessage使うなら、ウインドウは要らない。
- 467 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 18:41:35 ]
- libpngが既に外部ライブラリだと思うんだけど
そういうことでなくて?
- 468 名前:デフォルトの名無しさん [2007/04/02(月) 18:42:51 ]
- >>465
エスパー回答するとシステムトレイ上のアイコンからWM_COMMANDを投げたりできる でもこれは厳密にはWindowを作ってることと一緒
- 469 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 19:15:47 ]
- >windowを必要としないソフトでメッセージだけを受け取られますか?
Windowを作らずに、Windowメッセージだけを取れるか?という意味? 例えばタイマーとか
- 470 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 19:46:29 ]
- >>463
www.w3.org/TR/PNG/ ここに詳しく書いてある。 ライブラリを使うのが嫌なら自前で実装しろ。 >>465 必用としなくても見えないウインドウを生成すればいいだけ。 知恵が足りない。
- 471 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 20:05:02 ]
- ダイアログに文字を表示する方法でリソースに
LTEXT "hogehoge/,IDC_HTML,10,10,100,18 と書けば表示されるのですが、ということは、SetDlgItemTextは なんのために存在するのでしょうか??
- 472 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 20:05:34 ]
- "が抜けていました
LTEXT "hogehoge/",IDC_HTML,10,10,100,18です
- 473 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 20:08:42 ]
- 他のコントロールを変更するときに使う。
もちろん、LTEXTも変更できるので、位置だけ取って、あとから必要に応じて書いたり
- 474 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 20:08:53 ]
- 何でもかんでも静的に決まると思ったら大間違いだ
- 475 名前:デフォルトの名無しさん [2007/04/02(月) 20:10:20 ]
- 俺はlibpngとlibjpegとlibtiffを使って相互にフォーマット変換できるクラスを作った。
もちろん、DIBに変換できるのは言うまでもない。 いや、ただそれだけなんだけど。
- 476 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 20:13:35 ]
- >>473
他のコントロールを変更するとは、どういう意味なんでしょ??
- 477 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 20:15:12 ]
- ボタンならボタンに表示されてる文字列が変わる。
というかSetDlgItemTextを何だと思ってたんだ。
- 478 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 21:39:45 ]
- 動的に変えたい場合
- 479 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 21:51:29 ]
- 逆に考えるんだ
OSもダイアログテンプレートのLTEXTの文字列を読んで SetDlgItemTextを呼び出してるのだと
- 480 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 22:35:56 ]
- >>470 thx. やってみる。
- 481 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 22:52:25 ]
- CreateDialogを使用してダイアログを表示したいのですが戻り値がNULL、GetLastErrorの値が1812
になり表示できません。 ボタンを押したときに表示したいのでメッセージループに下のように埋め込んでいるのですが。 (ShowWindowとUpdateWindowは省略しています) case WM_COMMAND: hDlgWnd =(ghInst, MAKEINTRESOURCE(IDD_DIALOG1), ghWndKihon, (DLGPROC)MyDlgProc); なにか、こうじゃないの?的な物でもいいのでヒントください。
- 482 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 22:54:46 ]
- 肝心の「CreateDialog」が抜けていますがコピペミスなのでw気にしないでくださいw
- 483 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 23:02:49 ]
- エラーコード1812の意味を調べりゃ一目瞭然
- 484 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 23:04:59 ]
- 481ではないしついでに聞こうとも思っていないが、
調べてみたらなるほど一目瞭然だな。
- 485 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 23:11:32 ]
- Error Lookupで見ると「指定されたイメージ ファイルはリソース セクションを含んでいません。 」。
ごめん、馬鹿なんです。resource.hの中に手動で何か追加するとか、そんな感じなの?
- 486 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 23:16:25 ]
- EXEの中にダイアログのデータが入っていないということ。
EXE内にリソースを入れるようなことをしたか?
|

|