C言語始めた。GUIまでたどり着ける気がしない at TECH
[2ch|▼Menu]
1:デフォルトの名無しさん
21/04/23 16:03:51.52 9Jbn4jGc.net
初心者向けの本で勉強してるけど、実行したらコマンドプロンプトに色々表示されるじゃん?
そもそもこの枠から脱出するプログラムって書けるのか?天才過ぎねーか

2:デフォルトの名無しさん
21/04/23 16:04:47.43 QhHVXSoA.net
CならTcl/Tkやっとけ

3:デフォルトの名無しさん
21/04/23 16:05:07.26 9Jbn4jGc.net
英単語帳のアプリ使いにくいから、自分に必要な苦悩だけ入れたアプリとか作ってみたいンゴ

4:デフォルトの名無しさん
21/04/23 16:05:21.16 9Jbn4jGc.net
>>3
苦悩じゃなくて機能だった

5:デフォルトの名無しさん
21/04/23 16:06:15.62 QhHVXSoA.net
あとはこれか
ISBN 4899774451

6:デフォルトの名無しさん
21/04/23 16:08:12.72 QhHVXSoA.net
新刊出てた
ISBN 4899775067

7:デフォルトの名無しさん
21/04/23 16:13:36.29 9Jbn4jGc.net
もう返信きてる……ありがと…
>>6 表示かわいい
グラフィカルコンソールなるものが使えるっぽいけど、これってこの本で独自に作られたやつなのかな?入門にちょうどよさそうだし見てみる

8:デフォルトの名無しさん
21/04/23 16:16:19.90 9Jbn4jGc.net
なんか色々調べたけど、c♯っていう言語とvisual studioなるソフトがあると楽らしい
c仲間なら今から乗り換えてもええよな
visual studioも大学が無料で使わせてくれるから丁度よさげ

9:デフォルトの名無しさん
21/04/23 16:30:51.72 9Jbn4jGc.net
あれ?なんかこの画面みたことある

5年前にvisual studio codeを再インストールしようとしたら出てきたやつやん…
ここでわけわかんなくなってプログラミング諦めたんだよな……お前のせいだったんか…

10:デフォルトの名無しさん
21/04/23 16:45:49.49 pIaI/Y8z.net
釣りじゃなくても釣りでも相当頭悪いやつだな…
スレタイからも想像できなかった反面教師にもネタにもならない低レベル
小学生でももっとちゃんと始められる

11:デフォルトの名無しさん
21/04/23 16:48:00.68 bSb09CRO.net
過疎板の自称上級者の下手くそ&キチガイっぷりは以上
なぜここまでイキりたがるのか…

12:デフォルトの名無しさん
21/04/23 20:01:07.71 +WQuyT7u.net
C#を徹底的に知り尽くすのは悪くないんじゃねーの?
他の言語を学ぶ時にも潰しが利く
だが俺はC++とHaskellを知ってたお陰で
C#のジェネリクスごときで躓いたりしなかったが
初学者には難しい所もあるかもなー
ちゃんと本読んだ方が早いぞ
オライリーとかのちゃんとしたやつをな

13:デフォルトの名無しさん
21/04/23 20:35:32.84 CiH1hl+g.net
>>10みたいな初学者にマウント取り始める恥ずかしい奴は放っておいてC#でがんばれ

14:デフォルトの名無しさん
21/04/23 20:50:17.42 u+P4/XB4.net
>>1
GUIを学びたかったら
Win32APIというのを覚える必要があるよ
でもWinFormから作る方法もまあ一応存在する
そっちの方が楽、だが現場では全く使い物にならんと罵倒される事になる

15:デフォルトの名無しさん
21/04/23 20:52:17.21 u+P4/XB4.net
今ならC#で何でも作れちゃうからなあ

16:デフォルトの名無しさん
21/04/23 21:02:48.16 +WQuyT7u.net
>>14
>そっちの方が楽、だが現場では全く使い物にならんと罵倒される事になる
素人にわけわからんこと吹き込むなよ
どんな現場を想定してるのか知らんが
ネイティブAPIだっていつか廃れる
出来るだけ使いやすいライブラリを使って
ライブラリがどうあるべきか理解する方がためになる
どうせこれ学べば終わりなんてものは無いのだから
考え方の方が大事だ

17:デフォルトの名無しさん
21/04/24 02:08:22.24 n+Hv8cY+.net
visualstudioやってみたけど、なんかプログラミングと言っていいのかわからんな
実戦で使うような便利ツールって感じだけど、学習でこれ使っても能力はあがるのだろうか
まあわかろんしとりまC言語続けよ

18:デフォルトの名無しさん
21/04/24 02:10:32.96 n+Hv8cY+.net
C♯とCの関連性はそんなに高くないのね
むずそうだから逃げます。図書館で一冊借りて軽く眺めてみよう

19:デフォルトの名無しさん
21/04/24 03:05:40.94 s6nqrZ2t.net
Visual Studio使ってるんだったらMFC + C++で手っ取り早くGUI作れば
CとC++は関連性高いし

20:デフォルトの名無しさん
21/04/24 08:44:03.77 C77iMz9+.net
MFCを若い奴に使わせるとか
自分と同じ苦労を経験しろ的な老害だろ

21:デフォルトの名無しさん
21/04/24 08:55:56.21 GB8LI3qT.net
>>20
C言語で簡単にGUI作りたいならそうなるだろ

22:デフォルトの名無しさん
21/04/24 09:09:15.01 LUJ0Utr0.net
今からやるのにMFCはないだろう
まだFormの方がマシだと思う
C#でGUI作って、速度が必要なところだけ
C++/CLIで書けばいい
今からMFCとかWin32とか、動作環境激変してるから
この先地獄見るぞ

23:デフォルトの名無しさん
21/04/24 10:40:32.56 C77iMz9+.net
WPFとかWinRTとかスタンダードがコロコロ変わる
ネイティブAPIすら今後はあやしい
GUIツールキットには深入りせずに距離を置いた方がいい
それ以上にMFCはコントロールのID管理周りがクソ過ぎる
あれがクソだと分からない奴はロクなもんじゃない
resource.hのコンフリクトでそのまま流用出来ないコードが山ほどあっただろ?

24:デフォルトの名無しさん
21/04/24 11:19:49.46 gMqF1SGc.net
>>23
通は、.rcファイルとResource.hを直書きですわ

25:デフォルトの名無しさん
21/04/24 11:22:51.70 gMqF1SGc.net
C#の機能やクラスのライブラリ化をしてるけど、C++/cliは速いわ

26:デフォルトの名無しさん
21/04/24 11:31:35.65 fOHAtvcd.net
C++入れても良いなら
1.wxWidgets
2.Qt
Cに限るなら
3.Tcl/Tk
4.Win32API
GTKは糞

27:デフォルトの名無しさん
21/04/24 11:35:31.22 fOHAtvcd.net
C#入れて良いなら
WPF
Unity
C++に追加で
UE
他に
DirectX とか OpenGL とか OpenCV とか使うのもあり

28:デフォルトの名無しさん
21/04/24 11:56:54.42 KpPukrGk.net
ググれば大量にサンプル出てくるだろ

29:デフォルトの名無しさん
21/04/24 12:09:38.18 Zn0YoRkv.net
ド素人がいきなりCをやる
いつもの挫折パターンの典型ですわ

30:デフォルトの名無しさん
21/04/24 15:39:00.30 hc4SaSPr.net
>>22
MFCはダイアログ作成の部分は中途半端だし、全体的にへんなところが多いのは
同意するけれど、C#のC++/CLIでC++を使うというのはどうも納得できない。

31:デフォルトの名無しさん
21/04/24 17:01:41.77 i87zy5SX.net
スレ主の目的は将来性ではなくとりあえず手っ取り早くCでGUIを作ることなんだからMFCが適切だろ

32:デフォルトの名無しさん
21/04/24 17:24:05.63 dUtGD9O4.net
クロスプラットフォーム開発するなら、GUIは何がおすすめでしょうか?
商用利用可能かつ無料がいいです

33:デフォルトの名無しさん
21/04/24 17:52:28.51 n+JXhE4b.net
electron

34:デフォルトの名無しさん
21/04/24 17:58:08.71 RPGHdVOi.net
>>32
ネイティブにこだわりがなければHTML+CSSが一番簡単かつ汎用的
JavaScriptスレに自分用の英単語アプリ自作してるやついたぞ
スレリンク(hp板:914番)

35:デフォルトの名無しさん
21/04/24 20:50:33.24 dUtGD9O4.net
>>33
>>34
速度を求めるので、速いライブラリを希望します

36:デフォルトの名無しさん
21/04/24 20:57:25.41 dUtGD9O4.net
QTは商用利用出来ませんでした
何卒ご教授願います

37:デフォルトの名無しさん
21/04/25 00:07:06.63 CJspxBJs.net
GTKがおすすめ

38:デフォルトの名無しさん
21/04/25 08:20:27.30 IDEGLvtV.net
electronはちゃんと作れば十分速いぞ
VS CodeやSikiを触って遅いと感じるならしょうがないけど

39:デフォルトの名無しさん
21/04/25 11:22:41.21 vJWG11Gh.net
>>31
MFCが将来性が無いというわけでもないと思うが。
なぜなら、もっともMSがOSや言語で輝いていたWin95時代から
あるもので、もっともWindowsプログラミングで使われてきた環境だから。

40:デフォルトの名無しさん
21/04/25 11:28:19.88 vJWG11Gh.net
>>38
MFCに比べれば起動が数十倍〜100倍くらい遅い。

41:デフォルトの名無しさん
21/04/25 11:43:57.14 vJWG11Gh.net
WindowsでC++でプログラミングしようとすれば、Visual Studioで
C++のMFCプロジェクトを使うのが標準。
C++を使いたいのにC#のプロジェクトを作ってC++/CLIを使うのは
さすがにおかしいだろう。

42:デフォルトの名無しさん
21/04/25 13:12:42.36 vrxr0D/D.net
今更MFCで業務システム書くのはアホ
普通は.NETでサクッと済ます
パッケージソフトならもっとマシなクロスプラットフォームなツールキット使うか
あるいは独自にネイティブAPIのラッパー層を構築してることが多いだろう
高度な仕事と簡単な仕事の二極化に取り残された
極一部のカビの生えた企業だけが
未だにWindows専用のネイティブアプリを
MFCで作って保守してんだろうな

43:デフォルトの名無しさん
21/04/25 13:28:44.41 rOXFfo73.net
>>37
>>38
electlonでも良さそうですが、少しでも速度を稼ぐ必要があります
デザイナも使えるwxwidgetsも候補に考えています

44:デフォルトの名無しさん
21/04/25 13:35:48.17 rtrHqrCb.net
>>42
>パッケージソフトならもっとマシなクロスプラットフォームなツールキット使うか
>あるいは独自にネイティブAPIのラッパー層を構築してることが多いだろう
C++において、Visual Studioを越えるIDEが存在していないので、そうも
行かない。

45:デフォルトの名無しさん
21/04/25 13:56:42.07 LkhNcHGi.net
MFCなんて使う価値ないやん

46:デフォルトの名無しさん
21/04/25 13:59:14.96 9Nm1id/y.net
>>45
でも、C++でWindowsプログラムを作るには、Visual Studioを使い、
C++プロジェクトを作成して始めるのが基本であり、C++プロジェクト
で使えるのは、生Win32とMFCしかないはずで、MFCの方がIDEとの
統合具合が良いからMFC、ということになる。

47:デフォルトの名無しさん
21/04/25 14:08:34.72 /MNsyaEe.net
頼みのVSですらオプション扱いなのにもうとっくにオワコンだよMFC

48:デフォルトの名無しさん
21/04/25 14:15:42.37 9Nm1id/y.net
>>47
であるなら、MS自体がC++を捨てようとしているというだけ。
しかし、C#とC++/CLIの組み合わせはいろいろと問題が生じるだろう。

49:デフォルトの名無しさん
21/04/25 14:17:42.43 LkhNcHGi.net
>>46
俺の場合は昔からMFCなんて使わなかった
ただプロジェクトによっては仕方なく使ってたけど結局はwin32apiを知らないと作れないしMFCだから楽になった記憶はあんまり無いな
その後C#に移行したからもう10年以上やってないけど

50:デフォルトの名無しさん
21/04/25 14:21:38.12 9Nm1id/y.net
>>49
もしかして、当時、Visual Studio 2008 の Expression 版を使ってたの?
そのころ、Visual Studioの無料版は、基本、それしかなくて、それではMFCが
使えない様になっていたから、日本ではWin32で書く人が多くいた。

51:デフォルトの名無しさん
21/04/25 14:31:59.70 9Nm1id/y.net
C++は、vc++以外でも、コンパイラとしては gcc/clang/intel compiler、
IDEやツールキットとしては、CLion、Qt、C++Builder、XCode
など色々有ってベンダーロックの危険性が少ないが、C#だとMS専用という
感じになるからMFC以上に将来の危険を感じる。
それに他の人のアプリやMS自身の作品を見ても遅い。

52:デフォルトの名無しさん
21/04/25 14:36:56.11 9Nm1id/y.net
>>51
AndroidやiOSやμTRONでもC++は使えるし、
組み込みまで広げれば、ArduinoやPIC、ラズパイやH8やNECのマイコン
でもC/C++は使える。
C#はそもそも無理か、メモリーを圧迫したり速度が遅すぎることが多い。
C#はLinuxでもある程度は使えても、完全には無理だと聞いてる。

53:デフォルトの名無しさん
21/04/25 14:54:46.30 vrxr0D/D.net
>>44
>>46
IDEとライブラリがゴチャゴチャになってんのかよ
好きなIDEで好きなライブラリ使えや
アホか
話にならん
Microsoftは昔から
ちゃんと使い物になる製品と
どうしようもないゴミを同時に売ってんだよ

54:デフォルトの名無しさん
21/04/25 15:14:14.13 9Nm1id/y.net
>>53
>IDEとライブラリがゴチャゴチャになってんのかよ
>好きなIDEで好きなライブラリ使えや
MFCは Visual Studioと深く統合されているので、別のライブラリを使うのとは
訳が違う。
特にMenuの作成とそのハンドラと、Menuの有効/無効やチェック状態を管理する
ハンドラがMFCを使っている場合にはIDEから容易に作成できる。
また、Win32のGUIの「Control類」をラッパしたクラスやそれを継承した独自クラスも
IDEから簡単に作成できる。
ドッキングバーなどもMFCではサポートしているが、それもMenuからのメッセージを
受け取ることも出来るのでIDEと連携していると言えば連携している。
ダイアログは、WinFormsに比べれば作りにくいが、それでも簡単な数値や文字列を
入力するようなものは、IDEからグラフィカルに作れるので、Win32で手作りするよりは
楽。
他のライブラリを使っても、Visual Studioからはそんなことは出来ないと思う。

55:デフォルトの名無しさん
21/04/25 15:29:37.48 vrxr0D/D.net
>>54
少しは他のプラットホームを使ってみろ
タチの悪い大馬鹿め
レイアウトマネージャの概念すら知らないんじゃないのか
無知の知が絶望的に欠落している
どうしてお前が確かめたこともない領域に
未知のモノが広がっているに決まっているという
当たり前のことすら分からんのだ

56:デフォルトの名無しさん
21/04/25 16:54:50.80 Ir5JJ5R1.net
>>42
質問者の意図に沿った回答になるとMFCになるってだけ

57:デフォルトの名無しさん
21/04/25 17:16:35.60 vrxr0D/D.net
>>56
どの質問者だよ
スレ主なら開始早々にC#に転びかけて
GUI作りたい以外に大した拘りもないのは明らかなのに
今更MFCを押す奴に良心があるとは思えんね

58:デフォルトの名無しさん
21/04/25 17:39:15.36 vaTXIUpA.net
>>51-52
C#がMSにかなり依存した言語というのは確かだと思うけど、こういうのもあるってことを知らないかな?
URLリンク(www.jetbrains.com)
URLリンク(www.jetbrains.com)

59:デフォルトの名無しさん
21/04/26 14:26:26.31 REE9nEfp.net
>>46
MFCはやめとけ
URLリンク(wiki.wxwidgets.org)
URLリンク(denspe.blog.fc2.com)

60:デフォルトの名無しさん
21/04/26 14:37:02.49 REE9nEfp.net
>>1
>>46
補足
URLリンク(wiki.wxwidgets.org)
URLリンク(www17.plala.or.jp)

61:デフォルトの名無しさん
21/04/26 14:53:11.62 u7NjNSbC.net
MFCだとVSのデバッガが使えて便利。

62:デフォルトの名無しさん
21/04/26 14:58:41.47 XRwQT5tI.net
リンク先読んでも全然MFCやめとく理由見つからないのワロタwww

63:デフォルトの名無しさん
21/04/26 17:35:42.81 u7NjNSbC.net
>>57
タイトルに「C言語始めた」とあるんだから、C#は全く関係ない。
全然実行形態が違う全くの別物。
前者はマシン語に直るコンパイル言語だが、後者は仮想コードに直る
インタプリタ言語。実行時に高速化のためにマシン語に直ることもあるというだけ。

64:デフォルトの名無しさん
21/04/26 17:40:37.08 u7NjNSbC.net
C/C++だとRustやSwiftとも比較的容易にリンクできるが、C#だとそうはいかない。
LinuxやMacでも呼び出すAPIの関数名さえ変えてしまえばC/C++はそのまま動くが
C#は仮想マシンが無ければ動かない。
また、WasmにしたときもC/C++はサイズが小さいが、C#だと大きくなるので使い物に
ならない。

65:デフォルトの名無しさん
21/04/26 17:45:19.71 u7NjNSbC.net
>>64
そしてSun/OracleのJavaはもともとWrite Once, Run Anywhereを目標にしていた
から、実際に、WindowsでテストしたJavaアプリは、そのままLinuxやMacや
ブラウザ上でも動いたが、C#だとWinFormsやWPFは原則動かないと聞いている。
動かすためには、特殊な専用のフレームワークを使う必要があるし、完成度が
低く、ちゃんとまともになるのは何年も先といわれているし、本当に完成するのか
も定かではないので、最初から標準のフレームワークがWin/Mac/Linux/ブラウザ
でマルチプラットフォームで動作したJavaとは根本的に異なる。

66:デフォルトの名無しさん
21/04/26 22:21:17.94 oPgKAust.net
今 C で GUI のプログラム書くのはキ○ガイだ。
GUI は C# で作っときなはれ。
C は入門書に従ってコマンドラインだけで使っとればよろしい。

67:デフォルトの名無しさん
21/04/27 10:52:49.43 V9b4VlmB.net
>>66
そんなことない。

68:デフォルトの名無しさん
21/04/28 18:58:48.49 Iyt2rIRl.net
アンドロイドやiOsやLinuxもあるし、あまり.netに支配されたくないというか。
monoあるといってもGUI周りが・・・

69:デフォルトの名無しさん
21/04/28 19:08:10.09 7PrD92Ui.net
これやれば終わりなんてもんは無いんだよ単細胞め
どうせいろんな物がコロコロ変わっていくんだからな
経験が次につながるかって話
だからC#は悪くないんじゃねーのって話
面倒な道具を頑張って使うテクニックなんてのは
いずれゴミになる可能性が高いので
簡単にいろんなことが出来るツールか
出来るだけ洗練されたツールから手を出せばいいんだよ
物分かりの悪いアホだな

70:デフォルトの名無しさん
21/04/28 20:26:18.71 u2gO+cD/.net
>>69
それは同意
初めからCやれと、アセンブリ言語わかってねーと使いこなせねーぜ?ウリウリ
と言いたがる人は昔からいるけど、はっきり言って老害なんだよね

71:デフォルトの名無しさん
21/04/28 21:07:17.04 3eBBmXMM.net
質問者はCでやりたいって言ってるんだからそこは尊重してやれよ

72:デフォルトの名無しさん
21/04/28 21:24:06.15 ohiKXwgS.net
GDIで文字やらお絵かきやらするの楽しいじゃん

73:デフォルトの名無しさん
21/04/28 21:35:16.45 5l35CIx+.net
やりたいことが明確にあるならより実現に近いルートとしてc#やるのもいい
言語覚えたいってならcをやるのもいいんでない
仕事じゃないなら自由だし両方つまみながらも出来るんならアリだし

74:デフォルトの名無しさん
21/04/28 21:57:51.38 7PrD92Ui.net
>>71
お前はいい加減、最初の20レス程度の流れぐらい把握しろや

75:デフォルトの名無しさん
21/04/29 01:29:34.96 NDGBRI+4.net
>>1
そこでHaskellなんですよ。

76:デフォルトの名無しさん
21/04/29 11:41:49.76 +6PLd0Qa.net
>>66
組み込みではCで書いているよ。
イベント、メッセージドリブンで、Label、Image、LstBoxやらWidgeをtypedefクラス化して表示している。 OS書いてるようなもの。
てか、他にはQt for MCUのようなプロプライエタリを使うしかない。

77:デフォルトの名無しさん
21/04/29 12:41:00.50 tHKeN3MF.net
メジャーな言語ならググれば入門用のサイトが出てくるどころか、この板にある各初心者用のスレのテンプレにも役立つURLが書いてある
そんな状況でこんなスレ立てるやつは勉強する気が無いけどかまってほしいだけだろう

78:デフォルトの名無しさん
21/04/29 16:39:29.01 Uk4l3wFW.net
Cをやるのが合目的的でなかったらおすすめはしないでしょ
普通は

79:デフォルトの名無しさん
21/04/29 20:48:37.99 pipao3DU.net
合理的です

80:デフォルトの名無しさん
21/04/30 18:42:46.28 cskxoHNE.net
rust とか go とかなくとも困らないけど、
CとCOBOLがないってのは困るな。

81:デフォルトの名無しさん
21/04/30 19:38:57.80 M1JbY/Lc.net
Win32でpng画像使った時て一つのexeにまとめる方法あるのだろうか?
bitmapならexeファイルひとつになるのにpngだと外から呼び出す方法しかのってない...

82:蟻人間
21/04/30 19:49:00.78 jFZrfdul.net
>>81
リソースかダウンロードを使えばできるよ。
FindResource、LoadResource、png_set_read_fnあたりだね。

83:デフォルトの名無しさん
21/04/30 19:58:45.76 M1JbY/Lc.net
>>82
ありがとう、何冊か書籍買って読んでも分からなかったんだ
その単語で検索してみるよ

84:蟻人間
21/04/30 21:03:16.33 kCduN7D8.net
リソースファイルに
100 PNG "my-file.png"
って書いてFindResourceなどでメモリー上に読み込む。それを某png関数で読み込めば完了。

85:デフォルトの名無しさん
21/04/30 21:34:02.21 FMAJ7L8f.net
libpngをスタティックリンクする話じゃなかったのか

86:デフォルトの名無しさん
21/04/30 21:36:06.50 M1JbY/Lc.net
現在の知識では理解できなかった...
とりあえずコメントをメモってわかるようになったら
またやってみるよ

87:デフォルトの名無しさん
21/04/30 21:49:48.46 M1JbY/Lc.net
>>85
エロゲー作るから他フォルダにまとめて使うようにするとフォルダー覗かれたら
内容がわかるのでそれを防ぐために一つのexeファイルにしようとしてるのだけど
これがスタティックリンクのほうかな?(ググて流し読んだ)
png使う処理もだけどまとめる処理もわからない状態で2つとも達成したい
現在の知識では、上の目的を達成できなさそうかな

88:デフォルトの名無しさん
21/04/30 22:16:34.15 Ub4HITUz.net
単純にexeにリソース追加してもデータとして存在している事は調べたら分かるから
見られたくないという場合は暗号化をかけるなりの工夫が必要だな
一番簡単そうなのはzipでパスワードをかけて圧縮してフォルダに保存しておく方法かな
ファイル名でパスワードの規則が変わるならバレにくい

89:デフォルトの名無しさん
21/04/30 23:35:02.11 M1JbY/Lc.net
まあ、パソコン詳しくない人がフォルダあさって画像みてネタバレしないための処置だから
ガチで見られたくないわけでもないが
pngもbitmapみたいにoファイルにしてくっつけてるのかな?調べても分からなかった
現知識では理解できないということか

90:デフォルトの名無しさん
21/04/30 23:39:19.84 9cqxfo3+.net
bmpでできるならpngファイルをbmpにすればいい

91:デフォルトの名無しさん
21/05/03 12:15:37.12 THe2bBjz.net
>>85
漏れも最初に質問読んでそうかと思ったが
第一解答者がエスパー過ぎてexeに埋め込む話だと良く判ったなと感心した
前者の発想はむしろプログラマとしては既に上級なのかも試練

92:デフォルトの名無しさん
21/05/03 12:23:09.37 THe2bBjz.net
>>89
>>84
最近はリソースファイルの仕様も変わってるから
(基本は一緒だと思うが)
古いやり方と新しいやり方がごっちゃになるので注意
URLリンク(dobon.net)
URLリンク(jyn.jp)
URLリンク(docs.microsoft.com)

93:デフォルトの名無しさん
21/05/03 12:23:49.83 THe2bBjz.net
NGあるのか?
URLリンク(katahiromz.web.)<)さくら.ne.jp/system/winapi/win32/win72.html

94:デフォルトの名無しさん
21/05/03 17:51:27.96 AM+ss1Q7.net
>>92
自分の理解度が低いため説明がうまくできない
質問の流れ↓
1.bitmap画像を使用したゲームをつくっていて
2.画像枚数が多くbitmapでは容量がすごくなる
3.pngを使って軽くしよう
4.bitmapで制作したときは画像をrcファイルでoに変えて全部まとめてexe一つにしてた
5.pngは使用時は4の時みたいにまとめた状態で使うのどうするのだろう?←ココ
png画像をつかう関数みたいなのは検索したらでてきたけど全部外から
使うのしか見つからなかったため
まとめ方はbitmap と同じでいいのか?まとめた場合どうやって使うのか?
の2つがわからない
よくわからないが、見る限りまとめ方はrc使ってるのでbitmapと同じでいいということか
確認しようにもpngをまとめた後表示する方法が謎
書いてもらった情報の中にあるかもしれないが現状わからない
でも、情報ありがとう

95:デフォルトの名無しさん
21/05/03 18:00:10.60 aV7aDLTY.net
>>94
>png画像をつかう関数みたいなのは検索したらでてきたけど全部外から
>使うのしか見つからなかったため
>まとめ方はbitmap と同じでいいのか?まとめた場合どうやって使うのか?
>の2つがわからない
100. まず、MS標準のGDI+の Imageクラスには、*.png をファイルから読み込むものと、
IStreamから読み込むものとが有り、後者を使えば以下のようにしてメモリーから
読み込むことも可能 :
IStream *pStream = SHCreateMemStream((BYTE *)pBuf, size);
(ここで GDI+のImage クラスを使って ong ファイルを読み込む);
pStream->Release();
101. 任意のバイナリデータは、*.exe のリソースの中に埋め込むことが可能。

96:デフォルトの名無しさん
21/05/03 18:01:47.92 aV7aDLTY.net
100 に関しては、こうするといけるはず :
IStream *pStream = SHCreateMemStream((BYTE *)pBuf, size);
IStream *pImage1 = new Image(pStream);
pStream->Release();

97:デフォルトの名無しさん
21/05/03 18:03:29.81 aV7aDLTY.net
誤: IStream *pImage1 = new Image(pStream);
正: Image *pImage1 = new Image(pStream);
101 のリソースの中にバイナリデータを埋め込む方法は、ggって欲しい。

98:デフォルトの名無しさん
21/05/03 18:08:09.94 +oXrxKHu.net
別にビットマップじゃなくてもバイナリデータは何でもリソースに追加出来るよ
LoadResource()で読み込みLockResource()でポインタ取得出来る
pngの表示はlibpng何かを使うしかVCでは無いかも

99:デフォルトの名無しさん
21/05/03 18:08:10.44 aV7aDLTY.net
101 については、
URLリンク(stackoverflow.com)
2) Add it as a binary resource to the executable. You said "exe", did you?
So you are likely on Windows. Window EXE files can have binary resources,
that can be located using the resource API. See the FindResource, LoadResource and GlobalLock,
functions.
resource.rc
ID_DATA_JPG FILE "data.jpg"

100:デフォルトの名無しさん
21/05/03 18:11:00.49 aV7aDLTY.net
>>98
後半、libpngを使わなくても、GDI+で
BYTE *pBuf = (pngファイルのバイトデータの先頭アドレス);
DWORD size = (バイト数);
IStream *pStream = SHCreateMemStream(pBuf, size);
IMage *pImage1 = new Image(pStream);
pStream->Release();
とすればロードできる。
後は、GDI+の機能を使って、非常にいろいろなことが出来、Bitmapデータ
として取り出すことも、HBITMAPにすることも、HDCに書き込むことも、
GDI+で描画することも、GDIで描画することも、DirectXで書き込むことも
何でも出来る。

101:デフォルトの名無しさん
21/05/03 19:30:52.56 AM+ss1Q7.net
質問板でないのに説明が悪く何回も
質問してしまったうえ、噛み砕いて説明してもらってすいません。
見ながら小さいプログラムで確認したいと思います
ありがとうございました。

102:デフォルトの名無しさん
21/05/04 23:36:56.35 ss1P2V0W.net
ここの人達的にはWinRTってどうなの?

103:デフォルトの名無しさん
21/05/06 10:23:56.09 84/gBo5v.net
ライブ
現在の中國制御不能ロケットの軌道
URLリンク(www.youtube.com)

104:デフォルトの名無しさん
21/05/06 12:15:21.81 b7Mkjg0R.net
ゲームでは画像をまとめるのは、Sprite/Texture Atlas みたいなツール

105:デフォルトの名無しさん
21/05/19 17:01:31.54 ZyjXFBY0.net
msのwin32apiのページに詳細にGUIハロワ解説載ってるからコピペしていじれ

106:デフォルトの名無しさん
21/05/20 12:59:15.13 bQ5/ppWH.net
ポトペタが糞なのはUI変更のdiffが取りづらいこと。
使ってるカスタムコントロールのせいなのか知らんが、
プロパティ1つ変更するだけでDesignerファイルが
ぐっちゃぐちゃに書き換えられた。

107:デフォルトの名無しさん
21/05/20 14:25:14.52 cxYRPbxm.net
ちょうどwindows3.1でた当たりでプログラム始めた人が一番とっつき易かったね。直書きで全部書く時代だったし。

108:デフォルトの名無しさん
21/05/20 15:03:30.28 Tib2Kwph.net
>>107
今はまたXML使って自分で定義する方向に回帰していきたかな

109:デフォルトの名無しさん
21/05/21 11:32:25.18 GKCq9/G0.net
RADが間違いだったよねぇ。 全体のアーキを考えなくなるのがRADの悪いところ。 行き当たりばったり。

110:デフォルトの名無しさん
21/05/28 12:25:57.77 7opfUBkP.net
>>20
WTLは楽だけど、やっぱコツがいるからな

111:デフォルトの名無しさん
21/07/09 14:15:08.12 S3BY4rw/.net
C++ builder がいいと思います。
書籍はヤフオクとかで買えるし。
昔の本も使えます。
CからC++の移行には これならわかるC++って本がすごく分かりやすかったです。
これもヤフオクにありますね。
正誤表見ないとメモリリークのあるコードなんだけど、なぜC++がいいのかよくわかります。

112:デフォルトの名無しさん
21/07/16 03:38:40.17 8243ISwm.net
>>105
MSサイトに大体テンプレ揃ってるから、標準ライブラリ引いてコンソールプログラミングよりGUIから始める方が楽まである
完全にデジタルディバイド

113:デフォルトの名無しさん
21/07/28 21:10:18.61 WK6eds7w.net
猫でもわかるWindowsプログラミング読めば誰でも出来るよ。
わからなかったら猫以下w

114:デフォルトの名無しさん
21/07/29 03:20:32.63 BEdCf7g2.net
最初Cを覚えただけではわかりにくかったこと
win32api
イベントドリブン
コールバック関数
呼び出し規約
INTとかDWORDとかの型の存在理由
TEXTマクロ
この辺をクリアしたらたいして難しくない気がする。

115:デフォルトの名無しさん
21/08/06 03:37:48.32 zJmNJx0o.net
>>113
巻末のおまけとしてサンプルしか載ってないが

116:デフォルトの名無しさん
21/08/08 01:12:51.78 3kfZajlX.net
猫でもわかる〜はわからなかったら凹む人多そう。
難しいとは思わないけど簡単とも思えない。

117:デフォルトの名無しさん
21/08/08 14:32:06.00 UvnbNG8C.net
プロセスとスレッドとコンテキストを理解して、
flutterでプラグインまで作れるようになると、
月200万円稼げます。

118:デフォルトの名無しさん
21/08/10 08:18:28.56 pah0uFHX.net
Cで実用的なもの作りたかったらarduinoオススメ
自分で作ったプログラムを五感で味わえるぜ

119:デフォルトの名無しさん
21/08/10 11:03:46.77 QjfVve9T.net
味もみておこう

120:デフォルトの名無しさん
21/08/15 00:57:27.29 hU1F3jPY.net
>>118
へぇー。こんなのあったんですね。

121:デフォルトの名無しさん
21/10/08 21:22:36.05 aRBPVxhX.net
GTK+ を学ぶのは意味がありますか?

122:デフォルトの名無しさん
21/12/30 09:53:59.76 QlTJCcME.net
GUIやりたいならC#やれよ

123:デフォルトの名無しさん
22/08/26 09:54:39.33 i2SIEm4o.net
良いの発見
gui-flower.com


最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

560日前に更新/34 KB
担当:undef