Microsoft Foundation Classライブラリ専用スレです。
■MFC相談室 mfc21d.dll■
http://hibari.2ch.net/test/read.cgi/tech/1250919279/l50
■MFC リファレンス■
http://msdn.microsoft.com/ja-jp/library/d06h2x6e(v=VS.100).aspx
探検
MFC相談室 mfc23d.dll [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2016/09/21(水) 00:20:48.44ID:OfO+mYkd520デフォルトの名無しさん
2020/09/02(水) 11:33:30.85ID:hzf0dQWg オートマとマニュアルみたいなもん
521デフォルトの名無しさん
2020/09/02(水) 12:19:41.42ID:kh3zUZ72 Win32だと手間がかかりすぎる
522デフォルトの名無しさん
2020/09/02(水) 13:08:08.39ID:YtNHOpgs >>507
VSで、MFCのプロジェクトを新規作成すれば、HelloWorld的な
アプリは出来ているのだから、>>495で入門することも可能なはず。
今のMFCと違いがあるなら、それをGoogle検索で調べる。
たとえば、#includeされているヘッダファイルの名前が違っていると思ったら、
二つのファイル名とMFCというキーワードを半角スペースで区切って入れて、
英語モードのGoogleで検索すれば出てくる。
英語モードで検索して出てきたページを、Chromeの右クリックメニューで
出てくる日本語翻訳機能で日本語にして読み、意味が分かりにくければ、
URL欄の右隣に有るボタンから英語に戻して、辞書を引きながら読めばよい。
VSで、MFCのプロジェクトを新規作成すれば、HelloWorld的な
アプリは出来ているのだから、>>495で入門することも可能なはず。
今のMFCと違いがあるなら、それをGoogle検索で調べる。
たとえば、#includeされているヘッダファイルの名前が違っていると思ったら、
二つのファイル名とMFCというキーワードを半角スペースで区切って入れて、
英語モードのGoogleで検索すれば出てくる。
英語モードで検索して出てきたページを、Chromeの右クリックメニューで
出てくる日本語翻訳機能で日本語にして読み、意味が分かりにくければ、
URL欄の右隣に有るボタンから英語に戻して、辞書を引きながら読めばよい。
523デフォルトの名無しさん
2020/09/02(水) 14:16:19.49ID:+vFHXeZw MFCでツイッタークライアントアプリ作ります
524デフォルトの名無しさん
2020/09/02(水) 15:26:47.53ID:2IzEXmVe525デフォルトの名無しさん
2020/09/02(水) 16:27:22.64ID:Wngy4TOD >>524
「新しいプロジェクトの作製」で 「MFC アプリ」を選ぶと、「新しいプロジェクトを構成します」が出てくるので、右下の「作製」ボタンを押すと「MFC アプリケーション - アプリケーションの種類のオプション」
のダイアログが出てくるので、
プロジェクト形式: の場所が、デフォルトでは、「Visual Studio」になっているので
「MFC standard」に直す。こうすると、昔ながらの MFC の Hello World アプリになり、
入門サイトなどは大体これが基本になっている。デフォルトのままだと、入門には適さない。
アプリケーションの種類: は、デフォルトのままでも良いが、昔から作りたいものによって、
よく変更されていたものだから、変えて試して見るといい :
・単一のドキュメント : SDI アプリケーション
・複数のドキュメント : MDI アプリケーション (default)
・ダイアログベース : ダイアログベースアプリケーション
「新しいプロジェクトの作製」で 「MFC アプリ」を選ぶと、「新しいプロジェクトを構成します」が出てくるので、右下の「作製」ボタンを押すと「MFC アプリケーション - アプリケーションの種類のオプション」
のダイアログが出てくるので、
プロジェクト形式: の場所が、デフォルトでは、「Visual Studio」になっているので
「MFC standard」に直す。こうすると、昔ながらの MFC の Hello World アプリになり、
入門サイトなどは大体これが基本になっている。デフォルトのままだと、入門には適さない。
アプリケーションの種類: は、デフォルトのままでも良いが、昔から作りたいものによって、
よく変更されていたものだから、変えて試して見るといい :
・単一のドキュメント : SDI アプリケーション
・複数のドキュメント : MDI アプリケーション (default)
・ダイアログベース : ダイアログベースアプリケーション
526デフォルトの名無しさん
2020/09/02(水) 16:37:24.58ID:kh3zUZ72527デフォルトの名無しさん
2020/09/02(水) 16:44:32.58ID:nYKoGcM/ 推奨されてないね、太古の昔から
俺が参加したmsuセミナーで既にそう言ってた
俺が参加したmsuセミナーで既にそう言ってた
528デフォルトの名無しさん
2020/09/02(水) 17:04:58.98ID:PicHUi2j いまさらMDI
いまさらMFC
いまさらMFC
529デフォルトの名無しさん
2020/09/02(水) 17:22:46.76ID:4SrpfbWk タブのアプリだって、やってることはMDIなのでは?
530デフォルトの名無しさん
2020/09/02(水) 17:45:32.54ID:2IzEXmVe531デフォルトの名無しさん
2020/09/02(水) 17:46:20.46ID:kh3zUZ72 >>528
それを言ったらこのスレッドが不要ってことになるw
それを言ったらこのスレッドが不要ってことになるw
532デフォルトの名無しさん
2020/09/02(水) 17:52:02.17ID:Wngy4TOD533デフォルトの名無しさん
2020/09/02(水) 18:16:21.96ID:nYKoGcM/ >>529
MDIの悪いところを学んで改善したのがタブ
MDIの悪いところを学んで改善したのがタブ
534デフォルトの名無しさん
2020/09/02(水) 18:53:59.86ID:nd/1idBj >>533
MFCのMDIにもタブ機能はあるぞ
MFCのMDIにもタブ機能はあるぞ
535デフォルトの名無しさん
2020/09/03(木) 00:15:47.29ID:fIWixQ3j536デフォルトの名無しさん
2020/09/03(木) 00:27:42.71ID:u9Xqc0gc537デフォルトの名無しさん
2020/09/03(木) 00:38:52.17ID:Fm+qdV+I >>536
別物だけど...
別物だけど...
538デフォルトの名無しさん
2020/09/03(木) 01:12:37.27ID:u9Xqc0gc539デフォルトの名無しさん
2020/09/03(木) 01:14:14.89ID:u9Xqc0gc C++/WinRTもオワコンってことなのか?
540デフォルトの名無しさん
2020/09/03(木) 05:52:40.39ID:yk4FSoXe UWPはオワコンだろうがWinRT自体は普通のデスクトップアプリでも使えるはずだしな。
541デフォルトの名無しさん
2020/09/03(木) 11:40:53.69ID:u9Xqc0gc542デフォルトの名無しさん
2020/09/03(木) 13:04:18.42ID:Ai/K3M0v 今後はWinUI一択だろうね
流行るかどうか次第だと思うけど
C++をまともにサポートしてるのは大きい
流行るかどうか次第だと思うけど
C++をまともにサポートしてるのは大きい
543デフォルトの名無しさん
2020/09/03(木) 13:25:24.02ID:sVY42MJD fzf をコマンドプロンプトにネイティブ対応したほうがはるかに幸せになれる。
544デフォルトの名無しさん
2020/09/03(木) 15:54:33.68ID:fIWixQ3j >541
完全にUWPの時代になるよ
.NET Frameworkが始まった時ってC++がおまけの扱いされてけど、
今回はWindows上にC++のアプリ作ってもらおうとしてる感じがする
乗り遅れるなよ
完全にUWPの時代になるよ
.NET Frameworkが始まった時ってC++がおまけの扱いされてけど、
今回はWindows上にC++のアプリ作ってもらおうとしてる感じがする
乗り遅れるなよ
545デフォルトの名無しさん
2020/09/03(木) 20:15:13.46ID:yk4FSoXe UWPが全然人気ないから方向転換したんだろうが
https://ascii.jp/elem/000/004/014/4014034/
https://ascii.jp/elem/000/004/014/4014034/
546デフォルトの名無しさん
2020/09/03(木) 20:29:01.39ID:fIWixQ3j 方向転換したことに気付かないままMFCを使い続ける人も多いだろう
情報を拡散する人がいないのかな
情報を拡散する人がいないのかな
547デフォルトの名無しさん
2020/09/03(木) 21:02:21.05ID:uE1ENArI >>545
その方向転換がされたらMFCとWinRTと別の環境ができるのかな?
その方向転換がされたらMFCとWinRTと別の環境ができるのかな?
548デフォルトの名無しさん
2020/09/03(木) 21:24:49.19ID:sVY42MJD トグルボタンよりもチェックボックス、という猛者はいないのか
549デフォルトの名無しさん
2020/09/09(水) 16:47:17.22ID:MbQfEtJP WindowsのC++開発環境
Win32 : 情報はそこそこあるけど扱いが面倒
MFC : 今から勉強すると時間をドブに捨てる可能性あり
C++/CLI : 死亡
C++/CX : 死亡
WRL : 死亡
C++/WinRT : MSはこれを推奨しているが、UWPの開発環境なので人気なし
Win32 : 情報はそこそこあるけど扱いが面倒
MFC : 今から勉強すると時間をドブに捨てる可能性あり
C++/CLI : 死亡
C++/CX : 死亡
WRL : 死亡
C++/WinRT : MSはこれを推奨しているが、UWPの開発環境なので人気なし
550デフォルトの名無しさん
2020/09/09(水) 17:12:57.59ID:mnONwWHj C++ で、GUI は作れない
DLL しか作れない
DLL しか作れない
551デフォルトの名無しさん
2020/09/09(水) 19:56:59.87ID:eJCpqUcY いくらMFCの設計がいまいちだからといってもさすがに素のwin32でGUIやる方がよっぽど時間の無駄だわ。
けっきょくC++だと消去法でMFCになるんだよな。
けっきょくC++だと消去法でMFCになるんだよな。
552デフォルトの名無しさん
2020/09/09(水) 20:05:21.71ID:RLRFnFcj553デフォルトの名無しさん
2020/09/09(水) 20:21:09.51ID:XZ4eRuJ2 今ならより軽量なWTLって手もある。MFCはC++コンパイラのtemplate対応が不十分だった時代の遺産だから。
554デフォルトの名無しさん
2020/09/09(水) 20:40:15.31ID:eJCpqUcY >>552
だから消去法だよ。いまさらwin32でやろうとする方がもっと非現実的。
だから消去法だよ。いまさらwin32でやろうとする方がもっと非現実的。
555デフォルトの名無しさん
2020/09/09(水) 20:48:18.25ID:p4Sr79GR まあ、知っておいて損は無いけどな。
じゃないと議論が出来ないからな。
じゃないと議論が出来ないからな。
556デフォルトの名無しさん
2020/09/09(水) 20:52:30.25ID:XZ4eRuJ2 Win32は古典のようなもんだからWindowsアプリ開発初心者なら少しはやっておかないと。
ほんの少しでいい。電話帳を暗記する必要ないのと同じだから。公衆電話のかけ方を学ぶ感じ。
ほんの少しでいい。電話帳を暗記する必要ないのと同じだから。公衆電話のかけ方を学ぶ感じ。
557デフォルトの名無しさん
2020/09/09(水) 21:23:11.56ID:6BCsKsVr >>552
Win32 の WM_KEYDOWN が、MFC の OnKeyDown
Win32 の WM_CHAR が、MFC の OnChar
Win32 の WM_SIZE が、MFC の OnSize
Win32 の WM_PAINT が、MFC の OnPaint() や OnDraw()
Win32 の WM_CREATE が、MFC の OnCreate()
Win32 の WM_DESTROY が、MFC の OnDestroy()
に対応しているので、Win32 の知識は、MFCとほぼ対応している。
その上で、VSのIDEの機能がMFCの方が10倍有って、開発効率は格段に上がる。
Win32 の WM_KEYDOWN が、MFC の OnKeyDown
Win32 の WM_CHAR が、MFC の OnChar
Win32 の WM_SIZE が、MFC の OnSize
Win32 の WM_PAINT が、MFC の OnPaint() や OnDraw()
Win32 の WM_CREATE が、MFC の OnCreate()
Win32 の WM_DESTROY が、MFC の OnDestroy()
に対応しているので、Win32 の知識は、MFCとほぼ対応している。
その上で、VSのIDEの機能がMFCの方が10倍有って、開発効率は格段に上がる。
558デフォルトの名無しさん
2020/09/09(水) 21:25:27.57ID:6BCsKsVr >>557
他にも、
WM_LBUTTONDOWN が、OnLButtonDown()
WM_MOUSEMOVE が、OnMouseMove()
WM_NCPAINT が、OnNcPaint() または、OnNcDraw()
に対応している。
WM_COMMANDは、OnCommand()も有ったかも知れないが、
メッセージマップと言う仕組みで、IDEと組み合わせてもっと効率よく
ハンドラを作製できるようになっている。
他にも、
WM_LBUTTONDOWN が、OnLButtonDown()
WM_MOUSEMOVE が、OnMouseMove()
WM_NCPAINT が、OnNcPaint() または、OnNcDraw()
に対応している。
WM_COMMANDは、OnCommand()も有ったかも知れないが、
メッセージマップと言う仕組みで、IDEと組み合わせてもっと効率よく
ハンドラを作製できるようになっている。
559デフォルトの名無しさん
2020/09/09(水) 21:28:56.62ID:6BCsKsVr >>549
Win32より、MFCの方が後発で、C++でWindowsアプリを作るには、後者の
方が定番で、開発効率も高い。
MFCは未だに改良が進んでいる。
たとえば、ドッキング、自動レイアウト関連、リボンなどは、Win32にはなく、
MFC独自。
また、Windowsアプリらしいアプリは、Win32より、MFCの機能を使っている。
商用やプロが作るnativeアプリは、ほとんどがWin32ではなくMFC製。
Win32より、MFCの方が後発で、C++でWindowsアプリを作るには、後者の
方が定番で、開発効率も高い。
MFCは未だに改良が進んでいる。
たとえば、ドッキング、自動レイアウト関連、リボンなどは、Win32にはなく、
MFC独自。
また、Windowsアプリらしいアプリは、Win32より、MFCの機能を使っている。
商用やプロが作るnativeアプリは、ほとんどがWin32ではなくMFC製。
560デフォルトの名無しさん
2020/09/09(水) 21:36:29.29ID:MqfHYfA6561デフォルトの名無しさん
2020/09/09(水) 21:40:13.06ID:MqfHYfA6 ってかこんな書き込みあるスレじゃなかったけど
なにが紛れ込んだんやろか?
ATL/WTLのスレは2年ほど書き込みないがあっちが正常やで
なにが紛れ込んだんやろか?
ATL/WTLのスレは2年ほど書き込みないがあっちが正常やで
562デフォルトの名無しさん
2020/09/09(水) 21:49:28.18ID:MbQfEtJP >>559
自分の場合、MFCを始めようとしても何から始めればいいのか分からないし、もはやMFCをちゃんと解説した本もない。勉強する時間もない。
Win32の方がある意味わかりやすい。オブジェクト指向ではないので、クラス構成を把握する必要もない。小規模な開発なら何とかなると思う。
自分の場合、MFCを始めようとしても何から始めればいいのか分からないし、もはやMFCをちゃんと解説した本もない。勉強する時間もない。
Win32の方がある意味わかりやすい。オブジェクト指向ではないので、クラス構成を把握する必要もない。小規模な開発なら何とかなると思う。
563デフォルトの名無しさん
2020/09/09(水) 21:54:12.58ID:L9rnU3We 今からだと WTL/ATL の情報はあまり拾えないのでは
wxWidgets のようなクロスプラットフォーム狙うか、
いっそ C++ から離れるか
wxWidgets のようなクロスプラットフォーム狙うか、
いっそ C++ から離れるか
564デフォルトの名無しさん
2020/09/09(水) 22:08:55.04ID:XZ4eRuJ2 >>561
最後に書き込んだの私だった(笑)
324 自分:デフォルトの名無しさん[] 投稿日:2018/12/02(日) 09:05:18.31 ID:pHBSzoap
最近、頻繁にWTL10のmasterブランチが更新されているね。
https://sourceforge.net/p/wtl/git/ci/master/tree/
最後に書き込んだの私だった(笑)
324 自分:デフォルトの名無しさん[] 投稿日:2018/12/02(日) 09:05:18.31 ID:pHBSzoap
最近、頻繁にWTL10のmasterブランチが更新されているね。
https://sourceforge.net/p/wtl/git/ci/master/tree/
565デフォルトの名無しさん
2020/09/09(水) 22:12:49.72ID:eJCpqUcY 5chでWTL推してたのは実は一人だけだったと?
566デフォルトの名無しさん
2020/09/10(木) 02:25:17.80ID:h1l1ZP9+ >>562
MFCの場合、まず、IDEを使って、MFCプロジェクトを作るところから始める。
後は、Menuリソースに1つメニュー項目を追加して、それに対するハンドラを作成し、
中でAfxMessageBox()などを使って、ハンドラが呼び出されるのを確認する。
画面は、OnDrawの中でpDC->MoveTo(), pDC->LineTo()で直線を描いてみる。
それが出来たら、さっきのハンドラの中で、Invalidate()を呼び出すテスト。
Invalidate()を呼び出すと、メッセージがメッセージキューにたまりまくっている
場合以外は、比較的即座にOnDraw()が呼び出される。
それで色々いじって試してみるといい。
MFCの場合、まず、IDEを使って、MFCプロジェクトを作るところから始める。
後は、Menuリソースに1つメニュー項目を追加して、それに対するハンドラを作成し、
中でAfxMessageBox()などを使って、ハンドラが呼び出されるのを確認する。
画面は、OnDrawの中でpDC->MoveTo(), pDC->LineTo()で直線を描いてみる。
それが出来たら、さっきのハンドラの中で、Invalidate()を呼び出すテスト。
Invalidate()を呼び出すと、メッセージがメッセージキューにたまりまくっている
場合以外は、比較的即座にOnDraw()が呼び出される。
それで色々いじって試してみるといい。
567デフォルトの名無しさん
2020/09/10(木) 06:03:07.80ID:zeENOEPq そもそも、もうWindows専用アプリを新しく作る事自体、ほとんど需要ないだろ・・
だから、メインとしてAndroid/iOS向けに開発したクロスプラットフォーム向けのアプリで
Windows向けもビルドできるというおこぼれをもらうしかない。
だから、メインとしてAndroid/iOS向けに開発したクロスプラットフォーム向けのアプリで
Windows向けもビルドできるというおこぼれをもらうしかない。
568デフォルトの名無しさん
2020/09/10(木) 06:32:05.44ID:O4HBWdjE FAの世界にはあるんだな。
569デフォルトの名無しさん
2020/09/10(木) 07:10:35.50ID:wdhKSMlq >>554
いや、そんなでもないよ
Win32の手順や概念をクラス化なんて秒殺でできるからな
普通にCで書いてる感覚でクラス化したほうがいいところがあればひょいと
んで、毎度おなじみのコードが出てきたら再使用できるように括り出しておく
それだけのことで非現実的というほど大変なことではない
いや、そんなでもないよ
Win32の手順や概念をクラス化なんて秒殺でできるからな
普通にCで書いてる感覚でクラス化したほうがいいところがあればひょいと
んで、毎度おなじみのコードが出てきたら再使用できるように括り出しておく
それだけのことで非現実的というほど大変なことではない
570デフォルトの名無しさん
2020/09/10(木) 07:14:58.32ID:cx/3z2qx Windowsアプリの需要がないって話はエンドユーザー向けパッケージソフト市場しか見てないんじゃないかな。
571デフォルトの名無しさん
2020/09/10(木) 07:39:42.50ID:zeENOEPq ごめん。そうだな。一般消費者向けの事しか考えてなかった。で、それ以外向けのWindowsアプリの需要はどれくらいあるのか知らんが。
572デフォルトの名無しさん
2020/09/10(木) 11:03:35.58ID:QWaq+avL CADツールとかオープンソースのもいれたら
いまだに新しいものが出てきてるからね
Webだとパフォーマンス出ない分野のツールはまだまだ有効
いまだに新しいものが出てきてるからね
Webだとパフォーマンス出ない分野のツールはまだまだ有効
573デフォルトの名無しさん
2020/09/10(木) 11:12:12.76ID:YCiClA3r 本板のWin32API質問箱スレがいまも活発であることがすべてを物語っているね。
574デフォルトの名無しさん
2020/09/10(木) 12:25:31.10ID:ypm5ktrY MFC とか、Jeffrey Richter とか、何十年前の話
今でも、医療用・産業用ソフトなどは、Windows 限定かも
今でも、医療用・産業用ソフトなどは、Windows 限定かも
575デフォルトの名無しさん
2020/09/10(木) 12:31:20.22ID:cx/3z2qx >>573
年寄りのマウント合戦で盛り上がっているようにしか見えないが。
年寄りのマウント合戦で盛り上がっているようにしか見えないが。
576デフォルトの名無しさん
2020/09/10(木) 12:42:04.34ID:PEh+sMxn 一太郎やPowerDirectorは、今でもMFCアプリだな
昔から大して変わっていないとも言えるが
昔から大して変わっていないとも言えるが
577デフォルトの名無しさん
2020/09/10(木) 14:48:35.32ID:h1l1ZP9+ MSがOfficeやVisioみたいなもので、大半の需要を独り占めしてしまっているので
desktopアプリを食っていくために作ることが難しくなった。
MSが手を出してない分野では、ぎりぎりなんとかなっていることもある。
でも2DグラフィックはAdobe、3DはAutoDeskなんかが強い。
最近は、3Dは、OSSのBlenderもあるから生半可には参入できないが。
desktopアプリを食っていくために作ることが難しくなった。
MSが手を出してない分野では、ぎりぎりなんとかなっていることもある。
でも2DグラフィックはAdobe、3DはAutoDeskなんかが強い。
最近は、3Dは、OSSのBlenderもあるから生半可には参入できないが。
578デフォルトの名無しさん
2020/09/10(木) 14:52:02.07ID:h1l1ZP9+ でも、たとえ、有名ソフトと「かぶっていても」、欲しくなるソフトはある。
でも、有名ソフトが無料化してる場合は辛い。
本等は、完全なダンピングだから、法的な取締りの対象にならなければならないのだが。
Visual Studio Communityはダンピングだから、罰するべきだ。
でも、有名ソフトが無料化してる場合は辛い。
本等は、完全なダンピングだから、法的な取締りの対象にならなければならないのだが。
Visual Studio Communityはダンピングだから、罰するべきだ。
579デフォルトの名無しさん
2020/09/10(木) 14:58:29.69ID:wdhKSMlq 一太郎みたいに学割を設定すればいいのにね
580デフォルトの名無しさん
2020/09/10(木) 14:59:16.88ID:YCiClA3r そんなこといったらAndroid StudioやEclipseもダンピングにならないか?
581デフォルトの名無しさん
2020/09/11(金) 14:33:21.36ID:TREPbbxK Win32は非効率というが、自分には一番理解しやすかった。
C言語なので、Windowsの知識がなくても地道に積み上げながら理解できる。
他の開発環境だとC++クラスライブラリなので、クラスの役割の全体像を把握するまで何もできない。しかもWindowsの前提知識が必要。
C言語なので、Windowsの知識がなくても地道に積み上げながら理解できる。
他の開発環境だとC++クラスライブラリなので、クラスの役割の全体像を把握するまで何もできない。しかもWindowsの前提知識が必要。
582デフォルトの名無しさん
2020/09/11(金) 14:58:07.59ID:Pv6SYq8F >>581
実は、MFCは、Win32の知識がないと深く理解できないので、
MFCを理解するのは、意外と難しい。
しかし、IDE(VS)の支援を豊富に受けられるのはWin32ではなくMFC。
1. メニューリソースをVisual的に作った後、MFCだとハンドラ関数を自動的に作れる。
BEGIN_MESSGE_MAP()〜END_MESSAGE_MAP()の中に、
ON_COMMAND()やON_UPDATE_CMD_UI()みたいなものを自動的に入れてくれて、
対応する関数の雛形を、*.cppと*.hの両方に生成してくれる。
Win32でこれに相当する作業を手作業でするのはとても効率が悪い。
2. OnSize, OnLButtonDown, OnMouseMove, OnChar, OnKeyDown
などのハンドラも、ClassWizardなどから効率よく自動生成できる。
これも、Win32でこれに相当する作業を手作業でするのはとても効率が悪い。
実は、MFCは、Win32の知識がないと深く理解できないので、
MFCを理解するのは、意外と難しい。
しかし、IDE(VS)の支援を豊富に受けられるのはWin32ではなくMFC。
1. メニューリソースをVisual的に作った後、MFCだとハンドラ関数を自動的に作れる。
BEGIN_MESSGE_MAP()〜END_MESSAGE_MAP()の中に、
ON_COMMAND()やON_UPDATE_CMD_UI()みたいなものを自動的に入れてくれて、
対応する関数の雛形を、*.cppと*.hの両方に生成してくれる。
Win32でこれに相当する作業を手作業でするのはとても効率が悪い。
2. OnSize, OnLButtonDown, OnMouseMove, OnChar, OnKeyDown
などのハンドラも、ClassWizardなどから効率よく自動生成できる。
これも、Win32でこれに相当する作業を手作業でするのはとても効率が悪い。
583デフォルトの名無しさん
2020/09/11(金) 15:55:14.24ID:chzJA6nh >>582
Win32+MFCを習得するのに何年かかるんだ?
Win32+MFCを習得するのに何年かかるんだ?
584デフォルトの名無しさん
2020/09/11(金) 16:04:18.58ID:Cxw4gZ+X 俺はこんなだった
win32: Petzoldの本で1ヶ月
mfc: msuセミナーで2週
win32は少しでもかじってれば、あやふやでもmfcは何とかなる
win32: Petzoldの本で1ヶ月
mfc: msuセミナーで2週
win32は少しでもかじってれば、あやふやでもmfcは何とかなる
585デフォルトの名無しさん
2020/09/11(金) 16:09:34.01ID:xLNh1C0u Win32API
Cの理解が先に出来てたから
イベントドリブンとかメッセージループとか
典型的な描きかただけなら1日で充分理解出来た
全体理解なんて今でもムリポ
MFCも秒
C++とWin32APIを理解してたらそもそも勉強の必要すら無い
Cの理解が先に出来てたから
イベントドリブンとかメッセージループとか
典型的な描きかただけなら1日で充分理解出来た
全体理解なんて今でもムリポ
MFCも秒
C++とWin32APIを理解してたらそもそも勉強の必要すら無い
586デフォルトの名無しさん
2020/09/11(金) 16:09:39.60ID:GJKjt1p6 >>583
何を持って習得と言うかわからないが、
1. HelloWorldは、IDEが作ってくれる。
2. Menu項目の作り方と、ハンドラの作り方は、ネットで検索すると
解説されたものがいくつかあるはず。
3. OnDraw()の中の書き方は、Win32のGDIとCとC++の書き方程度の違い
で、基本的に変わらない。
4. WM_LBUTTONDOWNとOnLButtonDown()などは一対一に対応しているだけで、
Win32と同じ。
5. Dialogのデータ交換DDEは、チュートリアルを読まないと難しい。
解説サイトを読むのは人によるが、速い人は20分とかでも読めるのではないか。
何を持って習得と言うかわからないが、
1. HelloWorldは、IDEが作ってくれる。
2. Menu項目の作り方と、ハンドラの作り方は、ネットで検索すると
解説されたものがいくつかあるはず。
3. OnDraw()の中の書き方は、Win32のGDIとCとC++の書き方程度の違い
で、基本的に変わらない。
4. WM_LBUTTONDOWNとOnLButtonDown()などは一対一に対応しているだけで、
Win32と同じ。
5. Dialogのデータ交換DDEは、チュートリアルを読まないと難しい。
解説サイトを読むのは人によるが、速い人は20分とかでも読めるのではないか。
587デフォルトの名無しさん
2020/09/11(金) 16:11:21.83ID:GJKjt1p6588デフォルトの名無しさん
2020/09/11(金) 16:37:04.91ID:TREPbbxK589デフォルトの名無しさん
2020/09/11(金) 16:46:49.13ID:TREPbbxK >>585
>C++とWin32APIを理解してたらそもそも勉強の必要すら無い
俺はVS2019が新規作成で生成した複雑なプログラム(VS2019はHello worldを生成しない。いきなり複雑なものを生成する)を見て途方にくれたがなー
何から始めればいいのか全く理解できない
>C++とWin32APIを理解してたらそもそも勉強の必要すら無い
俺はVS2019が新規作成で生成した複雑なプログラム(VS2019はHello worldを生成しない。いきなり複雑なものを生成する)を見て途方にくれたがなー
何から始めればいいのか全く理解できない
590デフォルトの名無しさん
2020/09/11(金) 17:13:09.59ID:GJKjt1p6 >>588
作り方がこのスレッドにも出ていたぞ。
作り方がこのスレッドにも出ていたぞ。
591デフォルトの名無しさん
2020/09/11(金) 17:14:10.08ID:GJKjt1p6592デフォルトの名無しさん
2020/09/11(金) 17:32:38.43ID:TREPbbxK >>591
VS2019でその通りにやってみたけどできなかったよ
VS2019でその通りにやってみたけどできなかったよ
593デフォルトの名無しさん
2020/09/11(金) 17:59:56.28ID:+RJnbz7u ID:TREPbbxK の脳内にあるHello Worldアプリが何を指すのか次第な気がする
594デフォルトの名無しさん
2020/09/11(金) 18:06:29.86ID:Cxw4gZ+X mfcは単純にwin32の極薄ラッパーかというとそうでもない
ドキュメントビューとかシリアル化、DDX/DDVなんてのは独自の概念だ
ドキュメントビューとかシリアル化、DDX/DDVなんてのは独自の概念だ
595デフォルトの名無しさん
2020/09/11(金) 19:04:14.74ID:Y8ERPbJh MFCを新たに勉強するのが無理とか言っているような人は他のどの開発環境・
言語でも使えるようになるのは無理だろうし、プログラミングに限らず何をやっても
ダメな人間だと思う。
言語でも使えるようになるのは無理だろうし、プログラミングに限らず何をやっても
ダメな人間だと思う。
596デフォルトの名無しさん
2020/09/11(金) 19:10:08.33ID:+RJnbz7u 今さら公衆電話の使い方なんて覚える必要ないでしょ(キリッ
597デフォルトの名無しさん
2020/09/11(金) 19:33:09.27ID:TREPbbxK598デフォルトの名無しさん
2020/09/11(金) 19:50:12.24ID:+RJnbz7u599デフォルトの名無しさん
2020/09/11(金) 20:10:36.37ID:GJKjt1p6600デフォルトの名無しさん
2020/09/11(金) 20:10:37.20ID:GJKjt1p6601デフォルトの名無しさん
2020/09/11(金) 20:14:22.27ID:GJKjt1p6 >>597
ちゃんと「Standard MFC」に変えた場合、
Hello World という文字は表示されないが、MFCにとっては、それ以上減らせない
程度にシンプルなサンプルが作製される。
オイラもアセンブラでプログラムしていた口だから、人が勝手に用意した
型枠を使うのは余り好きではなかったし、気持ちは分かる。
しかし、MFCでは、原則的にはあれ以上は減らせない。
ちゃんと「Standard MFC」に変えた場合、
Hello World という文字は表示されないが、MFCにとっては、それ以上減らせない
程度にシンプルなサンプルが作製される。
オイラもアセンブラでプログラムしていた口だから、人が勝手に用意した
型枠を使うのは余り好きではなかったし、気持ちは分かる。
しかし、MFCでは、原則的にはあれ以上は減らせない。
602デフォルトの名無しさん
2020/09/11(金) 20:39:40.32ID:+RJnbz7u 開発環境が勝手に作った数々のファイルに埋もれてしまう体験は、なにもMFCに限った話じゃないだろう。
603デフォルトの名無しさん
2020/09/11(金) 20:49:11.08ID:+RJnbz7u Hello Worldの問題点は、出力しか試せないところだね。
ユーザーからの入力がプログラムに反映されるところまで試さないと
プログラマとしてはひと安心できないはず。
ユーザーからの入力がプログラムに反映されるところまで試さないと
プログラマとしてはひと安心できないはず。
604デフォルトの名無しさん
2020/09/11(金) 21:01:25.87ID:nAPZqh6B そもそもGUIアプリでHello,worldって何?w
605デフォルトの名無しさん
2020/09/11(金) 21:20:39.55ID:DA1blzOi SDI形式で、ドキュメント・ビューの仕組みは使わない方が、よりわかりやすいとは思うけどな
606デフォルトの名無しさん
2020/09/11(金) 21:27:53.38ID:+RJnbz7u C#でアプリを作ろうものなら、意味不明なXMLファイルが一緒に生成される気持ち悪さに耐えなければならない。
気持ち悪いのはMFCだけじゃないってこと。こういうもんだと慣れるしかない。
気持ち悪いのはMFCだけじゃないってこと。こういうもんだと慣れるしかない。
607デフォルトの名無しさん
2020/09/11(金) 22:50:01.30ID:3mrNom4D C# も普通のテキストエディタと csc だけ使えば
hoge.cs と hoge.exe しか造られないからすっきり
hoge.cs と hoge.exe しか造られないからすっきり
608デフォルトの名無しさん
2020/09/16(水) 14:43:10.77ID:3ja5x8/R CrystalDiskMark はMFC採用で独自コントローラー(Project Priscilla)まで実装しとる
MFCバリバリ現役じゃん
MFCバリバリ現役じゃん
609デフォルトの名無しさん
2020/09/16(水) 15:11:51.04ID:zy/NdAsc ライブラリの新旧だけで優劣だと思っちまう
浅はかなやつってライブラリで仕事してる人の
苦労が何も解ってないんだろうな
浅はかなやつってライブラリで仕事してる人の
苦労が何も解ってないんだろうな
610デフォルトの名無しさん
2020/09/16(水) 15:43:04.37ID:wZC9/K7G MFCの衰退を見守るスレ
MFCの最期を暖かく見送るスレ
MFC利用者をdisるスレ
MFCの最期を暖かく見送るスレ
MFC利用者をdisるスレ
611デフォルトの名無しさん
2020/09/16(水) 17:39:55.40ID:ZQue+HKY 必死に現役アピールするからおもちゃにされてしまっているw
612デフォルトの名無しさん
2020/09/16(水) 17:57:07.68ID:K+FHyBLB >>608
現役なのは確かだけどオワコンでもあるんだよね
現役なのは確かだけどオワコンでもあるんだよね
613デフォルトの名無しさん
2020/09/16(水) 18:02:53.43ID:iyuoEKtv TortoiseGit とかもmfc使ってる。
614デフォルトの名無しさん
2020/09/16(水) 18:56:19.61ID:g8ss57Sd 良くない側面も持っているが、C++でWindowsプログラムをしようと思ったら、MFCが一番良い選択肢だと思う。
615デフォルトの名無しさん
2020/09/16(水) 18:57:29.78ID:g8ss57Sd 仮にMFCを使わないとなると、VisualStudio を使うとなれば、Win32とC#しか選択肢がなくなる。
それは困る。
それは困る。
616デフォルトの名無しさん
2020/09/16(水) 19:28:09.07ID:ZQue+HKY 他にもあるだろw
617デフォルトの名無しさん
2020/09/16(水) 19:37:21.63ID:lYPT6/er >>616
UWP系は避けたい
UWP系は避けたい
618デフォルトの名無しさん
2020/09/16(水) 20:01:26.47ID:ZQue+HKY もっと情報収集しよ?
こんなんだからMFCじゃなくてMF爺って呼ばれてるんだぞ
こんなんだからMFCじゃなくてMF爺って呼ばれてるんだぞ
619デフォルトの名無しさん
2020/09/16(水) 20:49:32.03ID:0cbcGKkw >>618
おすすめは?
おすすめは?
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 空自機レーダー照射、音声データ公開 中国 ★3 [蚤の市★]
- 日銀「歴史的」利上げ迫る 35年ぶりの年間上げ幅、0.5%の壁を突破 [蚤の市★] [蚤の市★]
- 【YouTuber】バイク事故で入院のゆたぼん、振込で「お見舞金」募る [muffin★]
- 【無職の男(31)】女子小学生に次々触る 下半身を露出した状態で 公然わいせつ、不同意わいせつ疑い 千葉県警 [nita★]
- 低所得層のマクドナルド離れが深刻に 広がる「ファストフード格差」の真相 米国 [少考さん★]
- 津波警報の発表中にグーグル検索、AIが「すべて解除」と誤情報 [蚤の市★]
- 【実況】博衣こよりのえちえち朝活🧪
- VIPでパズドラ
- 最寄りのラブホの店名を晒すスレ
- 朝からハイエースでカップラーメン食べてるドカタ
- 中国がここまで過敏になるのは日本に前科があるから。盧溝橋、満州事変。ジャップの先制攻撃は挙げればキリがないけど [472617201]
- 冬季賞与報告スレ [577451214]
