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+mYkd530デフォルトの名無しさん
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
おすすめは?
おすすめは?
620デフォルトの名無しさん
2020/09/16(水) 21:09:42.50ID:hOjYK7uQ >>616
でも実例は挙げないで、訊かれても「自分で調べろ」一点張り
でも実例は挙げないで、訊かれても「自分で調べろ」一点張り
621デフォルトの名無しさん
2020/09/16(水) 22:18:56.07ID:iyuoEKtv MFCにない汎用性を求めるなら、いくつか選択肢があるでしょ。
ウィジェット・ツールキット - Wikipedia
https://ja.wikipedia.org/wiki/%E3%82%A6%E3%82%A3%E3%82%B8%E3%82%A7%E3%83%83%E3%83%88%E3%83%BB%E3%83%84%E3%83%BC%E3%83%AB%E3%82%AD%E3%83%83%E3%83%88
ウィジェット・ツールキット - Wikipedia
https://ja.wikipedia.org/wiki/%E3%82%A6%E3%82%A3%E3%82%B8%E3%82%A7%E3%83%83%E3%83%88%E3%83%BB%E3%83%84%E3%83%BC%E3%83%AB%E3%82%AD%E3%83%83%E3%83%88
622デフォルトの名無しさん
2020/09/16(水) 22:23:13.67ID:1VQgoPvh >>618
具体例をあげよ
具体例をあげよ
623デフォルトの名無しさん
2020/09/17(木) 04:59:15.63ID:SW6+Z1Cs >>621
Visual Studioが使えなくなる。
Visual Studioが使えなくなる。
624デフォルトの名無しさん
2020/09/17(木) 12:47:47.90ID:OW2OZx8D Visual Studio で造れるもの
Tcl/Tk
wxWidgets
Qt
その他
Tcl/Tk
wxWidgets
Qt
その他
625デフォルトの名無しさん
2020/09/23(水) 14:11:24.89ID:L2u4imFE 「かんたんVisual C++ 改定2版」という本を見つけたのだが、ダイアログベースのアプリの説明がほとんどでSDIとMDIの説明はちょっとだけ。
MFC Tutorial
https://www.tutorialspoint.com/mfc/index.htm
上の海外のページでもダイアログベースの説明なんだよなあ。
SDIやMDIを好きに変更できるようにならないと業務に使えないのだが。
もしかしたらCMultiDocTemplateクラスのせいで自由にレイアウト変更できないの?
MFC Tutorial
https://www.tutorialspoint.com/mfc/index.htm
上の海外のページでもダイアログベースの説明なんだよなあ。
SDIやMDIを好きに変更できるようにならないと業務に使えないのだが。
もしかしたらCMultiDocTemplateクラスのせいで自由にレイアウト変更できないの?
626デフォルトの名無しさん
2020/09/23(水) 14:13:15.44ID:YfY3TQQ4 >業務
ωωω
ωωω
627デフォルトの名無しさん
2020/09/23(水) 15:16:33.25ID:wtMA3RXJ 結論的に言えば、以下の本を買えば、昔ながらのMFCのSDI/MDIプログラムは学べるはず。
他にも、4種類くらいの本があり、ダイアログベースのプログラミングなどに詳しい本もあるので
そっちもあわせて見れば、かなりの事が分かるはず。
かんたん Visual C++ [改訂2版] (プログラミングの教科書) (日本語) 単行本(ソフトカバー)
Visual C++の基本の文法を完全網羅。イラスト図解でやさしく解説したMFCの教科書です
2017年10月13日発売, 堀義博 著, A5判/560ページ, 定価(本体2,980円+税)
技術評論社のページに以下の様な目次が出ている :
https://gihyo.jp/book/2017/978-4-7741-9259-8#toc
11章 SDI/MDIアプリケーション
11-01 SDI/MDIアプリケーション
11-02 MDIプロジェクトを作成する
11-03 MDIで画像ファイル表示アプリケーションを作成する
もあるし、
10-01 ダイアログデータエクスチェンジ
10-02 メッセージの処理
10-03 ダイアログデータバリデーション
もあり、見てみたら、MFCの基本的な使い方はかなりちゃんと書いてあるようだ。
5章 コードウィザード
5-01 クラスウィザード
5-02 メンバー関数の追加
5-03 メンバー変数の追加
6章 デバッグ
7章 MFCの基本的なクラス
8章 コモンコントロール
9章 デバイスコンテキスト
他にも、4種類くらいの本があり、ダイアログベースのプログラミングなどに詳しい本もあるので
そっちもあわせて見れば、かなりの事が分かるはず。
かんたん Visual C++ [改訂2版] (プログラミングの教科書) (日本語) 単行本(ソフトカバー)
Visual C++の基本の文法を完全網羅。イラスト図解でやさしく解説したMFCの教科書です
2017年10月13日発売, 堀義博 著, A5判/560ページ, 定価(本体2,980円+税)
技術評論社のページに以下の様な目次が出ている :
https://gihyo.jp/book/2017/978-4-7741-9259-8#toc
11章 SDI/MDIアプリケーション
11-01 SDI/MDIアプリケーション
11-02 MDIプロジェクトを作成する
11-03 MDIで画像ファイル表示アプリケーションを作成する
もあるし、
10-01 ダイアログデータエクスチェンジ
10-02 メッセージの処理
10-03 ダイアログデータバリデーション
もあり、見てみたら、MFCの基本的な使い方はかなりちゃんと書いてあるようだ。
5章 コードウィザード
5-01 クラスウィザード
5-02 メンバー関数の追加
5-03 メンバー変数の追加
6章 デバッグ
7章 MFCの基本的なクラス
8章 コモンコントロール
9章 デバイスコンテキスト
628デフォルトの名無しさん
2020/09/23(水) 15:37:00.18ID:+91dLPIP629デフォルトの名無しさん
2020/09/23(水) 15:45:17.15ID:wtMA3RXJ >>628
この本は、ちゃんと、1つの章を割いているので、別の本のことかと思った。
そもそも、MFCのSDI/MDIは、そんなに高機能ではないので、質問者は勘違いしている
かも知れない。
MFCは、ダイアログベースにすると、割とIDEの機能が強く働いて、
C#のWinFormsと似たようなポトペタ的なプログラミングに近くなるが、
SDI/MDIは、メニュー以外には余り支援が無い。
SD/MDIでも、ダイアログを使えば、ポトペタ的になる。
というか、「Win32 Control」と呼ばれているものは、もともと、
ダイアログに入れた場合にちょうどよく機能するように設計されている。
だから、「ダイアログリソース」なるものがあるが、それ以外では、
独自に全て座標やサイズを指定して出すしかない。
この本は、ちゃんと、1つの章を割いているので、別の本のことかと思った。
そもそも、MFCのSDI/MDIは、そんなに高機能ではないので、質問者は勘違いしている
かも知れない。
MFCは、ダイアログベースにすると、割とIDEの機能が強く働いて、
C#のWinFormsと似たようなポトペタ的なプログラミングに近くなるが、
SDI/MDIは、メニュー以外には余り支援が無い。
SD/MDIでも、ダイアログを使えば、ポトペタ的になる。
というか、「Win32 Control」と呼ばれているものは、もともと、
ダイアログに入れた場合にちょうどよく機能するように設計されている。
だから、「ダイアログリソース」なるものがあるが、それ以外では、
独自に全て座標やサイズを指定して出すしかない。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 「中国側も日本機のレーダーを感知していた」 中国メディアが報道 [♪♪♪★]
- 【YouTuber】バイク事故で入院のゆたぼん、振込で「お見舞金」募る [muffin★]
- 高市早苗首相、消費税減税に後ろ向き 足かせはレジシステム? 「責任ある積極財政」期待高いが [蚤の市★]
- 堀江貴文、キャッシュレス非対応の店にモヤッ 『PayPay』立ち上げの人物にまさかの直談判「現金決済しかできないんだけど…」 [冬月記者★]
- 低所得層のマクドナルド離れが深刻に 広がる「ファストフード格差」の真相 米国 [少考さん★]
- 「そんなに米国が言う通りにやりたいのか」小泉氏、防衛費増額で立民・後藤祐一氏に反論 [少考さん★]
