トップページ⇒tech
1001コメント242KB

WTLお勉強スレッド

レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさんNGNG
単に質問したいから立てました。

↓↓ダウンロード↓↓
http://www.microsoft.com/downloads/details.aspx?familyid=1BE1EB52-AA96-4685-99A5-4256737781C5&displaylang=en

↓↓WTL support list↓↓
http://groups.yahoo.com/group/wtl/
0002デフォルトの名無しさんNGNG
早くサポートしてください。
VSにつけてください。
ナムナム
0003デフォルトの名無しさんNGNG
>>4-6は、リンクを書いてくれる優しい人です。
ありがとう!>>4-6!
0004デフォルトの名無しさんNGNG
WTL研究所
http://homepage1.nifty.com/Roy_/Software/WTL/WTL.htm

The Code Project - WTL
(英語だがそれが問題なければ情報源としては最強)
http://www.codeproject.com/wtl/
0005デフォルトの名無しさんNGNG
Windows Template Libraryの概要
http://www.mars.dti.ne.jp/~kattoshi/Program/
0006デフォルトの名無しさんNGNG
ttp://home.att.ne.jp/banana/akatsuki/doc/atlwtl/
ttp://homepage1.nifty.com/Roy_/Software/WTL/WTL.htm
ttp://www.freeml.com/ctrl/html/MLInfoForm/[email protected];jsessionid=h88hjv9eo1

WTLのポジション
ttp://www.gdncom.jp/general/bbs/ShowPost.aspx?PostID=4737
0007デフォルトの名無しさんNGNG
ほんとに優しい人がいた!!
ありがとう!!>>4-6
6は自分だけど。
00084,5NGNG
でも今からWindows GUIプログラミングの勉強するなら
.NET Frameworkの方がいいと思うぞ。System.Windows.Forms。
WTLっつっても結局、拡張を続けてカオス状態になっている
Win32APIをむりやり押さえ込んだラッパークラスでしかないわけだし、
WTLでちょっと凝ったことやろうとすると結局、Win32APIを直接いじらないといけない。
出来上がったソースコード見てもいかにもハリボテといった感じで
美しいとは思えん。

メッセージループに振り回されることなく、ロジックの本質的な
部分に集中できる方がいいと思うぞ。
0009デフォルトの名無しさんNGNG
WTLは以前から↓のレスで扱ってるんだけど。

ATL 相談室
http://pc2.2ch.net/test/read.cgi/tech/1029029882/

まぁあっちも800レス超えたから次にここを使ってもいいけどね。
0010デフォルトの名無しさんNGNG
COM使えるようにならなきゃ
0011デフォルトの名無しさんNGNG
WTLの概要:
なんとなくきれい(見た目もコードも)。
サイズ小さめ。
実行速度早目。
コンパイル速度遅目。
ドキュメントが無い。
0012デフォルトの名無しさんNGNG
>>9
次ここ使ってよ。
0013デフォルトの名無しさんNGNG
>>8
MFCに比べれば美しいでしょ。
なんか輝いて見えるよ。
0014デフォルトの名無しさんNGNG
海外サイトといえばCodeProjectが有名だけど、
http://home.worldonline.dk/viksoe/all_wtl.htmも有名なので一押ししたい。
0015デフォルトの名無しさんNGNG
>>6で挙がってるMLってかなり放置されてるよな
0016デフォルトの名無しさんNGNG
このスレも放置されるんだろか。
不安になってきた。

C#勉強した方がいいかなぁ・・・
0017デフォルトの名無しさんNGNG
>>16
そんな厨房みたいな排他的なこと言うなよ。
やりたきゃ両方やれ。
0018デフォルトの名無しさんNGNG
C#(というか.NETのライブラリ)いいよねえ。まるでJavaみたい(ウッ
WTLはあれだ、MFC使うくらいならWTL使えと。
なんて言いながらMFCろくに触ったこと無い俺。
# この後、「18は何も分かっていない。そもそも〜」と蘊蓄を垂れる人希望。
0019デフォルトの名無しさんNGNG
http://pc.2ch.net/tech/kako/1014/10149/1014932657.html
先が見えてしまった・・・
シクシク
0020デフォルトの名無しさんNGNG
で、>>1の質問したいことって何よ
0021デフォルトの名無しさんNGNG
ほんとはC#やろうと思ったんだけど、日本語の入力とか調べていて
やめよっかなーとか思って、WTLみつけました。
0022デフォルトの名無しさんNGNG
>>20
使い方です。
とりあえず、ウインドウに文字だけ書いてみました。
なんか楽しかったです。
MFCだと、いやな気持ちになるんだけど。
0023デフォルトの名無しさんNGNG
>>18
MFCもWTLもそこそこ触ってる俺から言うと、その程度でいいと思うよ。
何もWTLが最強だとか言うつもりはさらさらない。
Win32APIだけでウィンドウ作るならWTLの方が楽だし、
MFCよりもシンプルでいいなー程度。
0024デフォルトの名無しさんNGNG
なんとなく>>18と同じ気分です。
0025デフォルトの名無しさんNGNG
>>14のサイトすごい!

関係ないけど、C#はコンパイルが速くていいなーって思いました。
起動も速い。
002618NGNG
>>23
「WTLなんてクソ、MFCサイコーだぜ。なぜなら〜」という語りを期待してたんだけどね。
俺は昔MFC挫折して、最近WTLでプログラム書いてる。
本当はC#で.NET使いたいんだけど、普及率とやはり動作がもたつくのが原因で
全てには適用出来ないなと判断してる。
0027デフォルトの名無しさんNGNG
今のところ、C#(というより.NET Framework)と比較したときのWTLの利点って

・COMの利用が簡単
・実行速度の速さ、使用メモリの少なさ

この辺りか?
逆に欠点は

・体系立てられたドキュメントが存在しない
・設計が.NET Frameworkほど洗練されていない

こんな感じだな

>>23
そうそう、Better MFCとして、Win32APIがある程度分かってる人が
楽するために使う、というのが正しいと思う
0028デフォルトの名無しさんNGNG
CodeProject出した者だけど、>>14のサイトは俺もイイ!と思った
すべてのサンプルにスクリーンショットがあるので分かりやすいし、
何よりWTLでこんなこともできたのか!っていうサンプルがたくさんある。
(Ballon Dialogとか)
0029デフォルトの名無しさんNGNG
俺の中ではWTLはWin32用で今すぐ使えるもので、
.NET Frameworkは今は普及に問題はあるが数年後WinFXの時のために習得しておくものだと思ってる。
要はWindowsプログラミングに限って言えば、
両方覚えて、今はWTLでC++、Longhornが普及する頃はC#を使えばいいだけだと思う。
(もちろん他のライブラリなり言語なり使ってもいいわけだし。)
どれかに限定しようとしなくたっていいんだよ。
0030デフォルトの名無しさんNGNG
んで、結局>>1=>>22は今すぐ質問したいことがあるわけじゃなかったのか
0031デフォルトの名無しさんNGNG
>>30
最速の学習方法を教えてください。
0032デフォルトの名無しさんNGNG
>>31
何か目標(こういうソフトが作りたい)を作って、それを完成させる
ために必要なことを学習していくっていう方法をとるといいと思う。これだと
モチベーションもキープできるし。
そのとき、最初から難しすぎる目標を立てないで、段階を踏んで
ステップアップしていくようにするのがポイント。
0033デフォルトの名無しさんNGNG
>最初から難しすぎる目標を立てないで

耳が痛くなってきた。
0034デフォルトの名無しさんNGNG
>>33
頭じゃないのか?
0035デフォルトの名無しさんNGNG
昔、MFCを使ってたんだけど、ATLでCOMを書くようになってから、EXEを書くときにWTLを
使うようになった。軽くてシンプルでいいよね。
MSが正式サポートしてくれると良いんだけど。

もちろん、.NETも並行してつかってる。
0036デフォルトの名無しさんNGNG
>>19
少なくともそのスレよりはレス数がある(w
0037デフォルトの名無しさんNGNG
>>14
そこにあるWTLのドキュメントがなかなか良いね。
0038デフォルトの名無しさんNGNG
日本のYahooGroupにはWTLグループが無いのに検索するといつも上位にあるよな
0039デフォルトの名無しさんNGNG
>>36

スレ立て日が一年前の同じ日!
別にまねしたわけでもないのに同じスレ名!

誰かMMR呼んでよ!!
0040デフォルトの名無しさんNGNG
わざとだろ絶対。
0041デフォルトの名無しさんNGNG
うん。>>1は具体的な質問もしてないし。
0042デフォルトの名無しさんNGNG
それがわざとじゃないんですよ。
ぐぐるって掲示板とかだと書いた直後に検索できたりするでしょ。
それでヒットするかな?って検索して見たらヒットしてて、
見てみたら違うページだったわけ。
それが過去ログのページ。
ほんと驚いた。
なんか呪いかかってるかも。
0043デフォルトの名無しさんNGNG
ATL ウィンドウ クラス
http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/vccore/html/_atl_ATL_Window_Classes.asp

http://user.ecc.u-tokyo.ac.jp/~rr26303/develop/wtl/atlcrack.html
0044デフォルトの名無しさんNGNG
WTL 使う前に C# ちょっと触ってて、当時 Rebar を使いたかった
んだけど、C# で簡単に実現する方法がないっぽくて WTL に決めた。

結局 C# を使おうと思っても、Windows の本質的なところをわかって
いなかった俺は、うわべだけわかった気になるのが嫌できちんと
Windows を勉強したいと思った。

で、独自のクラスライブラリを作ろうかと思ってたときに出会ったのが
WTL。マジ感動した。
0045デフォルトの名無しさんNGNG
で、質問ってなによ?
0046デフォルトの名無しさんNGNG
>>45
使い方。
0047デフォルトの名無しさんNGNG
>>44
似たようなことやってますね。
0048デフォルトの名無しさんNGNG
ドキュメント無いですよね。
みんなのためにドキュメント作ってあげようって言う優しい勇者はいないかなぁ。
0049デフォルトの名無しさんNGNG
>>46
・・・漠然としすぎていて答えられないって

サンプルいじってみたら?
0050デフォルトの名無しさんNGNG
個人個人が作成したドキュメントやノウハウの類をどこかに集積整理できないものかなぁ。
0051デフォルトの名無しさんNGNG
>>49
そんなの放置しとけ。
0052デフォルトの名無しさんNGNG
WTL のドキュメントの計画は Code Project にもあったよね。
0053デフォルトの名無しさんNGNG
あったあった。
0054デフォルトの名無しさんNGNG
なんでこのスレこんなに盛況なの?w

#俺も使ってるけどね。WTL
0055デフォルトの名無しさんNGNG
ドキュメントの類は既出のサイトでとりあえず十分じゃない?
数も少ないし巡回するのも苦じゃないと思う。
まぁ日本語のドキュメントがもっと多くなれば良いとは思うけど。
あとリファレンスがあればいいかな。
どっかの外人がWTL3.1のリファレンスを公開してたけど、
7.0以降は見かけないなぁ。
0056デフォルトの名無しさんNGNG
>>54
>>1がageてるから。
0057デフォルトの名無しさんNGNG
>>54
いつものように巡回してたら、新しいスレがたってた。

ちなみにドキュメントのページはここ(英文)
http://www.codeproject.com/wtl/wtldocs1.asp
0058デフォルトの名無しさんNGNG
関係ないけどhttp://groups.yahoo.com/group/wtl/の検索って使いにくいよね
0059デフォルトの名無しさんNGNG
>>58
同意

無いのにページが出るのがなんとも・・・。
広告出したいからなのかな・・・
0060デフォルトの名無しさんNGNG
>>55
リファレンスってどの辺の?
全部をだらだらっと書いたものって欲しい?
0061デフォルトの名無しさんNGNG
>>60
MSDNみたいなの。いちいちソース見るのめんどくさいから。
0062デフォルトの名無しさんNGNG
公式ドキュメント
ttp://home.worldonline.dk/viksoe/static_downloads/wtl.zip
0063デフォルトの名無しさんNGNG
>>61
じゃあ、この板の有志で作るとか
0064デフォルトの名無しさんNGNG
ただでさえ少ない住人にどれだけ有志がいるか・・・

ま、やるならCWinDataExchange<T>(atlddx.h)だけ俺がやってもいいよ。
0065デフォルトの名無しさんNGNG
>>62
なんか協力を求めているようだけど(viksoe)
問題は英語で協力できるか、ってことと日本語のドキュメントが
欲しいんだけどってニーズにこたえられるかってあたりがネック?
0066デフォルトの名無しさんNGNG
>>64
なぜ DDX(w

ヘルプで知りたいのは各メソッドとかなの?
MFC(SDK) とかと大して変わらない気がするが・・・

クラス図とかがあればわかりやすいか?
0067デフォルトの名無しさんNGNG
>>65
というか中身を見た感じ作りかけ。
これなら最初から日本語版作った方が良さげ。
0068デフォルトの名無しさんNGNG
SourceForge とか使ってやる?
0069デフォルトの名無しさんNGNG
>>66
MFCとほとんど同じならMFCのリファレンスでもいいし、
SDKのリファレンスでもいいんだけど、
結局MFC(日本語ドキュメント)とSDK(ほとんど英語のままドキュメント)を行ったり来たりしなきゃならないし、
加えてWTL特有のクラスはソースを見ながら・・・
ってことが多いからいっそ一つにまとめたWTLリファレンスがあればいいなと思ったの。
0070デフォルトの名無しさんNGNG
>>69
ま、確かにインテリセンスが効かなくて確認しなきゃ無いときは
正直面倒だが。
0071デフォルトの名無しさんNGNG
本当にやるならロリポくらいなら借りてくるよ。
wikiとか設置してもいいんだけど、作ったデータを再利用しやすくできる方法ないかな?
XMLで保存できるとか。
0072デフォルトの名無しさんNGNG
DECLARE_FRAME_WND_CLASS_EX(0,0,0,0)
0073デフォルトの名無しさんNGNG
暫定
http://groups.yahoo.co.jp/group/WTL/

明日になったらブックマークが充実しているといいなぁ。
0074デフォルトの名無しさんNGNG
>>73
作ったのか。俺も以前作ろうと思ったけど、FreeMLの状態を見ると寂しいことになりそうだからやめた。
0075デフォルトの名無しさんNGNG
まぁ、自分のメモを貯めていくつもりでがんばります。
0076デフォルトの名無しさんNGNG
おー気合入ってるなぁ。
年度末で忙しいからアレだけど、時間を見つけて参加するよ。
0077デフォルトの名無しさんNGNG
久々にFreeML見たら今年に入って書き込み二件か・・・
007866NGNG
よしやるか

>>71

Wiki はわかるけど「ロリポ」ってなに?

・・・ってぐぐったらわかった。
そこ借りて立てるならそれもいいなぁ。

で、暫定的な目標をどうするかってことになると思うんだけど・・・

・HTML ヘルプにして VS.NET から呼び出せる形式
・当然フリー
・日本語ヘルプ
・クラス図付き追加してほしい内容はどっかのスレに書き込む
・年内完成目標(控えめに)

こんな感じ?
(個人的な希望を挙げてみたので皆さんのご希望も)

とりあえず、参加できると思うので声かけて下さい。
66でよろしく(w
0079デフォルトの名無しさんNGNG
KABAちゃんが妊娠!!
http://tmp2.2ch.net/test/read.cgi/mog2/1076074534/l50
008066NGNG
あれ、ちょっと変だった

誤)・クラス図付き追加してほしい内容はどっかのスレに書き込む
正)・クラス図付き
   (追加してほしい内容はどっかのスレに書き込む)
0081デフォルトの名無しさんNGNG
参加してみて気が付いたこと。
ブックマークだけど、これまでこのスレで出たサイトはどれも定番だし数少ないものだから全部載せては?
あとマナーとしてブックマークはサイトのトップにした方がいいような気がする。
0082デフォルトの名無しさんNGNG
質問
Donut*とかみたいにSimpleReBarを細くしたいのですが
どうすればいいのでしょうか?
TB_SETBITMAPSIZEとかTB_SETBUTTONSIZE送っても
きれいに細くなりません。
0083デフォルトの名無しさんNGNG
ソース配布されてるんだから見れば・・・
0084デフォルトの名無しさんNGNG
ブックマークは誰でも修正できるので、よろしくお願いします。
0085デフォルトの名無しさんNGNG
そんなんじゃ2chのスレすらまともに立てられないぞ。
せめて>>1のテンプレと>>2-6の過去ログ&参考サイトを書くくらいの勢いがないとな!
0086デフォルトの名無しさんNGNG
早くも盛り上がってないな
0087デフォルトの名無しさんNGNG
世界貿易図書館
0088デフォルトの名無しさんNGNG
73=71?

つか Yahoo Group に入るの面倒くさい
0089デフォルトの名無しさんNGNG
>>88
まぁまぁ、そういわずに・・・
0090デフォルトの名無しさんNGNG
wiki使え
0091デフォルトの名無しさんNGNG
YahooGroupのメッセージは公開しないのか。
0092デフォルトの名無しさんNGNG
公開ってどういうことですか?
0093デフォルトの名無しさんNGNG
とりあえずwiki用意しました。
0094デフォルトの名無しさんNGNG
WEBからメンバー以外もログを見られるようにすること<公開
0095デフォルトの名無しさんNGNG
とりあえずヘルプ見てみます。
0096デフォルトの名無しさんNGNG
はりきるのは良いが初心者じゃないだろうな。
0097デフォルトの名無しさんNGNG
初心者です。
0098デフォルトの名無しさんNGNG
とりあえず見られるようにしました。
0099デフォルトの名無しさんNGNG
だめだこりゃ
0100デフォルトの名無しさんNGNG
いかにもグループ作ってみたかった、wikiやってみたかった、スレ立ててみたかったって感じだもんなぁ。
0101デフォルトの名無しさんNGNG
wikiどこ?
0102デフォルトの名無しさんNGNG
Doxygen を公開してどういう方向に持って行きたいのさ?
0103デフォルトの名無しさんNGNG
MSはWTLを何のために作ったのでしょう?
誰かが洒落で作ったものを公開したとか。
0104デフォルトの名無しさんNGNG
元々はATLのサンプルコードだったはず
0105デフォルトの名無しさんNGNG
>>103
MFC に変わるフレームワークとか
0106デフォルトの名無しさんNGNG
UNICODEビルドをするとコンパイルエラーになるものがあるよね。
0107デフォルトの名無しさんNGNG
CodeProject重すぎ!!
リニューアルしたCodeGuruがんばれ!!
0108デフォルトの名無しさんNGNG
>>102
俺も疑問。誰でも作れる自動生成したものをアプしたり、
それの構成ファイルをアプして何を期待してるんだろうか。
さらにアプしただけで何のアナウンスもないし。
場所だけ提供して後は皆よろしく的な他力本願では先は見えてしまう。
0109102NGNG
正直 Doxygen は好きじゃない。
そもそもこのスレの流れでは MSDN 的なヘルプが欲しいように
思えたんだが、違うのだろうか?

Doxygen だったらそれぞれが勝手にやれるだろうに。
0110デフォルトの名無しさんNGNG
そして誰も書き込まなくなった・・・
0111デフォルトの名無しさんNGNG
属性付きプログラミングでもWTLを使える方法を編み出したよ
0112デフォルトの名無しさんNGNG
WTLには3,4年前凝ったことがあったが、正直


M S が や る 気 無 い の に つ き 合 っ て も 無 駄


 
0113デフォルトの名無しさんNGNG
>>112
WTL7.1出てるよ
0114デフォルトの名無しさんNGNG
でも、ATLに触れてしまうといまさらMFCに戻りたくなくなる・・・・
0115デフォルトの名無しさんNGNG
未だにwin32API直叩きですが、何か?
0116デフォルトの名無しさんNGNG
グループ、未だに誰も(オーナーすら)書き込んで無いな。
0117デフォルトの名無しさんNGNG
YAHOOでやる時点で・・・。
0118デフォルトの名無しさんNGNG
boostもYahooじゃなかったか。
0119デフォルトの名無しさんNGNG
なんかおわったっぽいね?
立て逃げか・・・
0120デフォルトの名無しさんNGNG
>>114
ATLとMFCとは競合しないでそ?
0121デフォルトの名無しさんNGNG
あるフレームに分割ウィンドウで隔てられた複数のビューがあって、それぞれのビューの
処理が違う(たとえばTreeViewとListView)としたらそれぞれのビューに対する実装は、
別々のクラスになる気がするんですが、違うんでしょうか?

http://homepage1.nifty.com/Roy_/Software/WTL/WTL_Lecture05.htm
0122デフォルトの名無しさんNGNG
別になるだろ。

>View はまだ作っていませんが、ここでは便宜上デフォルト
>の S2H_ConvView を使います。全部で3つの View が必要
>なので、MainFrm.h に3つの View を定義します。
>名前もわかりやすいようにつけてみました。

って書いてあるから、それぞれの View を実装するクラスを作る
までは、デフォルトで作られた S2H_ConvView を使うってことでしょ?

最後に、

>次回はフォルダの内容を表示する CFolderView を作成したいと思います。

って書いてあるし。
0123デフォルトの名無しさんNGNG
別になるだろ。

>View はまだ作っていませんが、ここでは便宜上デフォルト
>の S2H_ConvView を使います。全部で3つの View が必要
>なので、MainFrm.h に3つの View を定義します。
>名前もわかりやすいようにつけてみました。

って書いてあるから、それぞれの View を実装するクラスを作る
までは、デフォルトで作られた S2H_ConvView を使うってことでしょ?

最後に、

>次回はフォルダの内容を表示する CFolderView を作成したいと思います。

って書いてあるし。
0124122NGNG
ごめん2回書いちゃった
0125121NGNG
>>122
>それぞれの View を実装するクラスを作る までは、デフォルトで作られた
>S2H_ConvView を使うってことでしょ?

こういう意味だったんですね。疑問が解けました。
これでやっと入り口の部分が突破できました。ありがとうございました。
0126デフォルトの名無しさんNGNG
: public CWindowImpl<CTextView, CRichEditCtrl>
なウインドウにて、EN_SELCHANGEを取得したいのですが、

・OnCreate()で
  long mask = GetEventMask();
  mask |= ENM_SELCHANGE;
  SetEventMask(mask);

あとは、

NOTIFY_CODE_HANDLER(EN_SELCHANGE, OnSelChange)

で、いけると思ったのが、イケてませんでした。
mfcだと OnSelChange()とうvirtualなメソッドがあるようですが、
wtlだとどうやるのでしょうか。
0127デフォルトの名無しさんNGNG
CRichEditCtrlを使うときはリッチエディット用DLLをロードする
0128デフォルトの名無しさんNGNG

大丈夫なようです。

HMODULE hInstRich = ::LoadLibrary(CRichEditCtrl::GetLibraryName());
0129デフォルトの名無しさんNGNG
クラスリファレンスに必要な項目って何ですか?
0130デフォルトの名無しさんNGNG
・クラスの概要
・メンバ関数/変数一覧、およびそれらの用途/動作の説明
・メンバ関数の引数の説明もあったら言うことなし
0131デフォルトの名無しさんNGNG
>>130
ありがとう。
0132デフォルトの名無しさんNGNG
レベル低いな・・・
WTL の前にやることがあるんじゃないのか?
0133デフォルトの名無しさんNGNG
>>129
MSDN読んだことないのか?
0134デフォルトの名無しさんNGNG
MSDNの形式を踏襲することはできないんじゃないかな?
0135デフォルトの名無しさんNGNG
形式ってなんだよ。リファレンスに必要な項目はMSDNを参考にすりゃ聞くまでもないだろって話だ。
0136デフォルトの名無しさんNGNG
解説
必要条件
例
参照
ですか?
これあまりよくないんじゃないかなぁ?
0137デフォルトの名無しさんNGNG
>>135
いちいちDHTMLで書いてられるかよ
0138デフォルトの名無しさんNGNG
まぁまぁ、そう言わずに書いてみてくださいよ
0139デフォルトの名無しさんNGNG


T* pT = static_cast<T*>(this);
0140デフォルトの名無しさんNGNG
>>133
読んだことはあるが正直テンプレートクラスの書き方はワケワカラン
0141デフォルトの名無しさんNGNG
>>140
じゃあ、ATL とか WTL 使えないだろ
0142デフォルトの名無しさんNGNG
Wiki になっても同じようなことしてるな?

つまり日本語版の
ttp://home.worldonline.dk/viksoe/static_downloads/wtl.zip
とおなじ状況になったと。

でこれからどうするの?
ちょこちょこ埋めていくのか?
0143デフォルトの名無しさんNGNG
>>137
ソースじゃなくて項目の話だろーが。
トップにクラスの解説なり書いてその下にメンバ関数のリファレンスだ。
メンバのリファレンスは戻り値や引数の説明など。
つーかMSDNだよ。
0144デフォルトの名無しさんNGNG
「wikiを立ち上げました。何かプランがあればお知らせください」って
普通はプランを考えてから立ち上げるんじゃないのか・・・
0145デフォルトの名無しさんNGNG
>>137
自分の調べた範囲をメモしていけばいいと思いますよ。
よく、「テンプレートなんだからヘッダ読めばいいだけ」って言う人がいるけど、
ヘッダから作者の意図を汲み取るのってすごく難しいことのような気がします。
また、ひとつのことをやるのにも複数の方法があるわけで、
メモしてあることに対しての意見とかも追記していけばいいんじゃないでしょうか。
0146デフォルトの名無しさんNGNG
こういうのは言い出しっぺが自ら進めないと寂しいことになる。
0147デフォルトの名無しさんNGNG
>>146
WTLって、想像以上に使ってる人少ないみたいです。
待ってても何も落ちてきそうに無いので、わかりきったことでも書き込んでみてください。

wikiは、ここです。
http://wtl.main.jp/pukiwiki/pukiwiki.php

どういった構成にすると便利なのか?
そういったことから始めたいです。

wikiが便利だという人がいたので用意しましたが、
ほかにもっといい方法があれば、教えてください。
0148デフォルトの名無しさんNGNG
ああ、wikiでやりたいのはこういうことね。なるほど。
書式って言うか書き方はMSDNを踏襲した感じでいいのかな
0149デフォルトの名無しさんNGNG
個人的にはMSDNって使いやすいと思えないんです。
素人が翻訳したはずのmanpageとかの方がずっとわかりやすくて、
それで、書式をちょっと迷っています。
0150デフォルトの名無しさんNGNG
このwikiはPHPで書かれているので、ローカルで一括して内容を修正とかが
難しいんですよ。

それで、出来れば最初に書式を決めちゃいたいです。

0151デフォルトの名無しさんNGNG
とりあえず、雛型をつくるとこから始めないとダメみたいね。
0152デフォルトの名無しさんNGNG
修正が困難というのは、wiki上に戻すのが難しいだけで、
wikiから取り出してほかの形式に変更するのは簡単です。
rootを持っていれば戻すのも簡単なんですけど、
残念ながら持ってません。
0153デフォルトの名無しさんNGNG
>>151
そうですね。
0154デフォルトの名無しさんNGNG
>>149

つか MSDN であまり困らないんだけど(ヘルプの形式)
どの辺がわかりづらいわけ?

それがどうも理解できないんだけど
0155デフォルトの名無しさんNGNG
ヤフーのほうに物質投下。ほぼMSDNの劣化コピペだけど
なんかに使ってくださいな。
0156デフォルトの名無しさんNGNG
>>155
ありがとう!
大切に使わせていただきます。
0157デフォルトの名無しさんNGNG
リファレンスなんてどれも同じような形式(引数、戻り値の説明、関数の使い方など)なのに
何を迷う必要があるんだ?
このスレではたまたまWTLはATLの拡張だからMSDNを例に出しただけで、
何もMSDNのデザインや構成、DHTMLなんて真似しろなど一言も言って無いぞ。
0158デフォルトの名無しさんNGNG
>>154
暗号が使われてるところとか。
0159デフォルトの名無しさんNGNG
何暗号って。
0160デフォルトの名無しさんNGNG
>>157
この形式がずっと使われることになりそうなので、
案があれば出してくださいって言う程度の意味にとってください。
0161デフォルトの名無しさんNGNG
いっそ項目だけXMLで作っちゃって後でXSLTでレイアウトを好きなようにするとか。
でもwikiじゃ無理か。
0162デフォルトの名無しさんNGNG
>>161
それが悩みの種
コメント行で構成がわかるようにしておけば変換できるけど
単純でいい方法ないかな?
0163デフォルトの名無しさんNGNG
これ1ページでクラスの概要もメンバの一覧もメンバの詳細も書くことになってるけど
メンバは別にした方が良くないか。
0164デフォルトの名無しさんNGNG
>>155
これwikiにこぴぺしていいですか?

>>163
そうすることの利点と欠点を教えてください。
0165デフォルトの名無しさんNGNG
>>163
wikiでページを分けると、後で変換するときのために何かの工夫が必要なんですけど、
そこらへんのアイデアないですか?
0166デフォルトの名無しさんNGNG
>>164
どぞー。お好きなようにしてください。
0167デフォルトの名無しさんNGNG
>>166
ありがと!
0168デフォルトの名無しさんNGNG
>>163
とりあえず分けてみました。
http://wtl.main.jp/pukiwiki/pukiwiki.php?CServerAppModule
0169デフォルトの名無しさんNGNG
DWが重いです。
0170デフォルトの名無しさんNGNG
http://home.att.ne.jp/banana/akatsuki/doc/atlwtl/index.html
WTLについて日本語で一通り解説してあります
0171デフォルトの名無しさんNGNG
>>170
ここの人はすごいですね。
0172デフォルトの名無しさんNGNG
ヘルプはそのサイトでいいんじゃない?
0173デフォルトの名無しさんNGNG
そのサイトでで充分ですね。
0174デフォルトの名無しさんNGNG
でで
0175デフォルトの名無しさんNGNG
結局Yahooグループは何のために使うんだ・・・
0176デフォルトの名無しさんNGNG
アップローだ
める
0177デフォルトの名無しさんNGNG
アプならwikiでもしてるし連絡ならここでもしてるしなぁ
0178デフォルトの名無しさんNGNG
Windows XP SP2に「アプリケーションに障害を起こす恐れ」
ttp://pc2.2ch.net/test/read.cgi/tech/1078150663/

ATL/WTLのCWindowImpl継承したサンクつかってるクラス動かなくなんのかな?
0179デフォルトの名無しさんNGNG
ごめんこっちだ
ttp://www.itmedia.co.jp/enterprise/0403/08/epic01.html
0180デフォルトの名無しさんNGNG
>>178
サンクがだめになったら、ソート済みベクタか、ハッシュマップを使って
ウィンドウの検索を行うのかな…
ATL は MS 謹製なのだから、何らかの回避手段があるのではないかと予想
0181デフォルトの名無しさんNGNG
その予想は、外れてる・・・
0182デフォルトの名無しさんNGNG
C#なんですが、適当にC++のコードを書いてみたら普通にコンパイルできて実行できました。
簡単に乗り換え出来そうですね。
0183デフォルトの名無しさんNGNG
>>182
C#->C++?
C++->C#

どっちからどう乗り換えるんだ?
C#->C++の場合なんちゃって乗り換えで・・・
てか、WTLと関係あり?
0184デフォルトの名無しさんNGNG
C++→C#
0185デフォルトの名無しさんNGNG

C#ってむしろJavaに近い印象だが違うのか?

0186デフォルトの名無しさんNGNG
>>182
managed C++ ではなくて?

>>185
そういう話ではない。
0187デフォルトの名無しさんNGNG
うそみたいだけど本とです。
C++のコード書いてコンパイルできますし・・・
0188デフォルトの名無しさんNGNG
ポインタ使えますし・・・・
0189デフォルトの名無しさんNGNG
フォーム便利ですし・・・
0190デフォルトの名無しさんNGNG
で、ここが何のスレかわかってる?
0191デフォルトの名無しさんNGNG
何のスレですか?
0192デフォルトの名無しさんNGNG
スレ違いにバカみたいにいちいち反応すんな。放置しとけよ。
0193デフォルトの名無しさんNGNG
>>190がばかっていいたいの?
いい人だと思うんですけど?
0194デフォルトの名無しさんNGNG
よく読むと>>192もいい人そうですね・・・
0195デフォルトの名無しさんNGNG
春〜Spring〜♪
0196デフォルトの名無しさんNGNG
>>195さんもいい人そうですね・・・
0197デフォルトの名無しさんNGNG
昔のスレが落ちた日までもう少し…
0198デフォルトの名無しさんNGNG
なんだ WTL を managed C++ で使った話なのかと思ったのに、ただの春か。
0199デフォルトの名無しさんNGNG
>>179
ええ!今までVirtualProtectで実行属性にしてないコードも実行できてたの?

ガクガクブルブル
0200デフォルトの名無しさんNGNG
C#でWTL使えるかとおもってきたいしていしまったよ。
0201デフォルトの名無しさんNGNG
>>200
C#でWTL使いたいですか?
0202デフォルトの名無しさんNGNG
その話まだ続けるのかよ
0203デフォルトの名無しさんNGNG
ヘルプとか作らなくてもCodeProjectで十分な気がしてきた
0204デフォルトの名無しさんNGNG
つーかこのスレでヘルプヘルプって言ってるけど
リファレンスとチュートリアルとTips的なものごっちゃにしてないか。
あくまでも要求はリファレンスで、その他は既出のサイトで十分という結論になってる。
0205デフォルトの名無しさんNGNG
はぁ・・・もう飽きたのか・・・
0206デフォルトの名無しさんNGNG
短い処理を描くために自分が使っているマクロ。

#define MESSAGE_LAMBDA(msg, lambda) \
 if (uMsg == msg) \
 {          \
  lResult = 0;  \
  lambda;    \
  return TRUE; \
 }
0207デフォルトの名無しさんNGNG
短い処理を描くために自分が使っているマクロ。

#define QUERY_SUMMATION_OF_TWO(a, b) (a+b)
0208デフォルトの名無しさんNGNG
>>206はわかるが>>207はこのスレで発表するものじゃないだろ。
0209デフォルトの名無しさんNGNG
>>207 は、>>206 を QUERY_SUMMATION_OF_TWO() と同じようにくだらないマクロだとみなしたのでは。
0210デフォルトの名無しさんNGNG
んでwikiとYahooGroupは早くも放置ですか。
ほんと、他力本願な奴が言い出しっぺだと悲惨だよなー
0211デフォルトの名無しさんNGNG
なんで粘着して煽ってるのですか?
0212デフォルトの名無しさんNGNG
僕も不思議に思ってた。
0213デフォルトの名無しさんNGNG
WTLをググってたら偶然>>1(?)の人見つけた。
http://www.hatena.ne.jp/1077962619
0214デフォルトの名無しさんNGNG
本家のグループにもメッセージあるね。
0215デフォルトの名無しさんNGNG
>>214
何の?
0216デフォルトの名無しさんNGNG
>>211
WTLの本でも出そうかと画策している出版社の社員とか(w
0217デフォルトの名無しさんNGNG
むしろその方がいいし。本出してくれ。
0218デフォルトの名無しさんNGNG
>>216
何を言わんとしてるのかわからん
0219デフォルトの名無しさんNGNG
>>210
まあ、わかっていたことだから(w

書く時間をプログラムに使ったほうが有意義のようきがするけどね。
所詮学生の暇つぶしか
0220デフォルトの名無しさんNGNG
あ〜あ、周りを巻き込んでおいて結局これかよ。

>>3>>7
こういう姿勢の奴になんかやってくれることを期待する方が無理だろ
続けるか辞めるか>>1は選択を迫られたな。

つーかwikiの方に書いてくれた人の好意を無駄にするのは酷いな

最低
0221デフォルトの名無しさんNGNG
>>73
>明日になったらブックマークが充実しているといいなぁ。
0222デフォルトの名無しさんNGNG
必要なものってなんなんだ?
WTL使っているような人間は、分からなくても自己解決できるような奴らだろ?
MFCのドキュメントで代用したり、ヘッダ読んだり。

個人的には、クラスリファレンスよりも、
Tips、拡張、サイドパーティのライブラリなんかがまとまっていると嬉しいんだが。
0223デフォルトの名無しさんNGNG
確かに>>1(こういち君?)の姿勢を見てると>>100の通りに思えてきた…
質問したいからスレ立たと言うが具体的な質問はしていないし、
Yahooグループ作っても作った本人すらろくに投稿してないし、
Wiki立てても「何かプランがあればお知らせください」だし。

リアル中高生なのかどうか知らんけど、自分でいろいろ用意した割にその使い方や進行が下手すぎだろう。
0224デフォルトの名無しさんNGNG
>>222
必要なものなんて無い。あったら便利だってだけだ。
0225デフォルトの名無しさんNGNG
>>222
>Tips、拡張、サイドパーティのライブラリなんかがまとまっていると嬉しいんだが。
このスレで出たURLをブックマークすりゃほぼ完成。
0226デフォルトの名無しさんNGNG
>>1よ、Yahooグループで何をやればいいのかわからないなら俺が仕事を与えてやろう。
本家グループの翻訳を流してくれ。
0227デフォルトの名無しさんNGNG
つーかこんなこーいちたんは本当にWTLを使えているのだろうか
0228デフォルトの名無しさんNGNG
使えてないです。
0229デフォルトの名無しさんNGNG
>>222
バグがなく、商用でもフリーで使用可能なライセンスのライブラリ
0230デフォルトの名無しさんNGNG
でもみんな何使ってるんだろうね?
やっぱ、MFCが一番多いの?それとも直書き?
0231デフォルトの名無しさんNGNG
MFC
0232デフォルトの名無しさんNGNG
本家の人に日本のヤフーグループ見られたらちょっと恥ずかしい・・・
0233デフォルトの名無しさんNGNG
多いのはMFCだろうね。
おれはATL/WTLが最近のお気に入りだけど。
0234デフォルトの名無しさんNGNG
ATL/WTLのどこがいいの?
0235デフォルトの名無しさんNGNG
>>234
テクニカルなところ(w
0236デフォルトの名無しさんNGNG
だめじゃんw
0237デフォルトの名無しさんNGNG
ライブラリの管理が楽なところか?
0238デフォルトの名無しさんNGNG
フレームワークを強制されないところ。
0239デフォルトの名無しさんNGNG
シンプルなところだろ。
0240デフォルトの名無しさんNGNG
MFCではないところ。
0241デフォルトの名無しさんNGNG
COMのカスタムインターフェースの実装が楽にできるところ
0242デフォルトの名無しさんNGNG
>>238で全て。
0243デフォルトの名無しさんNGNG
C++使いって、ネジ・クギは良いものを欲しがるけど、フレームワークを乗っ取られるの嫌がるよね。
一方、Java使いは、その対極のように思う。
……雑談でした。
0244デフォルトの名無しさんNGNG
WTLの雑談ならまだしも「〜使い」の話って思いっきりマ板向けだろ
0245デフォルトの名無しさんNGNG
粘着が一人居座ってる。
0246デフォルトの名無しさんNGNG
CScrollWindowImplの使い方がわからないです。
どこから調べていけば良いですか?
0247デフォルトの名無しさんNGNG
>>246
http://www2.muroran-it.ac.jp/circle/mpc/old/pc98dos/gdc/gdc.html
0248デフォルトの名無しさんNGNG
>>247
意味がさっぱりです??
0249デフォルトの名無しさんNGNG
>>246
まさか>>1じゃないよな
0250デフォルトの名無しさんNGNG
試行錯誤してみました。
マウスホイールが普通に使えるけど、
オートスクロールが使えないです。
やったことある人いますか?
0251デフォルトの名無しさんNGNG
>>250
http://www2.muroran-it.ac.jp/circle/mpc/old/pc98dos/grcg_egc/egc.html
0252デフォルトの名無しさんNGNG
>>249
1です
0253デフォルトの名無しさんNGNG
これほど>>1(と>>1が作ったもの)を放置するスレも珍しいな
0254デフォルトの名無しさんNGNG
1ですが何か?
0255デフォルトの名無しさんNGNG
>>254
いちいち出てくんな、ヴォケ。
0256デフォルトの名無しさんNGNG
256!
0257デフォルトの名無しさんNGNG
65536!
0258デフォルトの名無しさんNGNG
WTLの勉強がしたいです。
どんな人に聞いてどんな本を読めばいいですか?

よろしくお願いします。
0259デフォルトの名無しさんNGNG
>どんな人に聞いてどんな本を読めばいいですか?

そういうことを自分で調べられない人にはWTLはお勧めしない。
そういう人はMFCの方がいい。
0260デフォルトの名無しさんNGNG
自分で調べられない人にはMFCだってお勧めしない。
0261デフォルトの名無しさんNGNG
こうなったら意地でもグループに投稿しないぞ
0262デフォルトの名無しさんNGNG
入ってる10人は何をやってるんだ?
0263デフォルトの名無しさんNGNG
まったく動き出さないな……。
とりあえず、逆引きサンプルリストでも調べてみるか。
「ドッキングウィンドウを組み込みたい場合は……」
「グリッドコントロールが欲しい場合は……」
みたいな。
0264デフォルトの名無しさんNGNG
自分で調べられない人には学校の先生にでもなって下さい。
0265デフォルトの名無しさんNGNG
wikiも書く場所だけは増えるが内容が無いな・・・
0266デフォルトの名無しさんNGNG
微妙にグループの参加者減ってるね
0267デフォルトの名無しさんNGNG
グループに入っている人は、文書を必要としていないみたいです。
投下された文書を読めばわかるけど、
いわゆるプロの人たちなので、自分がほしいものを作るというよりは、
みんなのために何かしようって言うスタンスみたいですから。
メールのやり取りはしていますよ。
0268デフォルトの名無しさんNGNG
>>258
残念ながら、公式な文書といえるものは無いです。
WTLチームのメンバが書いた文書が3個だけあります。
あとは、ヤフーグループで聞くしかありません。
使い方を学ぶには、まず、まねてみるところから始めると早いようです。
WTLは、全体的にAPIの薄いラッパーになっている部分とMFCと同じように
使えることを意図した部分に大別できるようです。
メッセージのハンドリングについてはATLの説明が役に立ちます。
0269デフォルトの名無しさんNGNG
>>258
まだ活動し始めてはいないのですが、日本のヤフーグループの方へも、
気軽に投稿してみて下さい。
メンバーはわりとWTLを使い込んでいる人が多いようなので、
運がよければ、回答が期待できますよ。
0270デフォルトの名無しさんNGNG
さむっ
0271デフォルトの名無しさんNGNG
thunking?について詳しく教えてください知りたいです
あの奇怪なデータはなんですか
0272デフォルトの名無しさんNGNG
>>271
hWnd を this に置き換えて jump。
詳しくは>http://www.codeproject.com/atl/atl_underthehood_5.asp
0273デフォルトの名無しさんNGNG
【ドッキングウィンドウライブラリ】
どれも完璧ではない。多少の改良が必要。

The Code Project - WTL Docking windows - WTL
 - http://www.codeproject.com/wtl/wtldockingwindows.asp
viksoe.dk - WTL XP UI sample
 - http://home.worldonline.dk/viksoe/xpui.htm
viksoe.dk - Docked WTL UI sample
 - http://home.worldonline.dk/viksoe/fancyui.htm
0274デフォルトの名無しさんNGNG
びくそえマンセー
0275デフォルトの名無しさんNGNG
つか日本の恥だからグループ閉鎖してくれよ。
0276デフォルトの名無しさんNGNG
おまいが閉鎖しれ
0277デフォルトの名無しさんNGNG
このスレよく読むと、ぜんぜんWTL使ってない人のほうが多いらしい。
たぶん3人しか使ってないな。
寝言のほうが多い。
0278デフォルトの名無しさんNGNG
このスレもグループもwikiもすべて予想通りになった。
0279デフォルトの名無しさんNGNG
ばか、これからだよ。
0280デフォルトの名無しさんNGNG
おまえ、あせりすぎ。
0281デフォルトの名無しさんNGNG
現状を見て少しは焦れよ
0282デフォルトの名無しさんNGNG
このスレはヘタレばっかりだな。
おれは去年、WTL使ったプログラムを納品したもんね。
0283デフォルトの名無しさんNGNG
そんなマ板向けレスを自慢げにされても…っていう雰囲気がスレに漂った。
0284デフォルトの名無しさんNGNG
それ言うためだけに上げたのかよ?
0285デフォルトの名無しさんNGNG
http://pc2.2ch.net/test/read.cgi/tech/1077470361/679
0286デフォルトの名無しさんNGNG
終わった。
0287デフォルトの名無しさんNGNG
その話題はATLスレで既出じゃなかったっけ
0288デフォルトの名無しさんNGNG
終わったんだよ。
0289デフォルトの名無しさんNGNG
またMSがATLを変更するな
0290デフォルトの名無しさんNGNG
ATLが消滅するんじゃない?
0291デフォルトの名無しさんNGNG
少なくともLonghornでWinFXが普及するまではサポートするだろ
0292デフォルトの名無しさんNGNG
つーかプロセッサ側もまだ対応してるのが少ないから、
SP2が出たとたんにATLが動かなくなるわけじゃないんだけどな。
0293デフォルトの名無しさんNGNG
消滅しろよw
0294デフォルトの名無しさんNGNG
>>285の問題に関しては全く心配しなくていいそうだ。
http://discuss.develop.com/archives/wa.exe?A2=ind0401c&L=atl&T=0&F=&S=&P=1681

というわけで、開始。
0295デフォルトの名無しさんNGNG
お前、責任もって翻訳しろよ。
出来ないなら上げるな。
0296デフォルトの名無しさんNGNG
ワロタ。何の責任だよ
0297デフォルトの名無しさんNGNG
>>295
http://www.infoseek.co.jp/Honyaku?pg=honyaku_top.html&svx=100302&svp=SEEK
0298デフォルトの名無しさんNGNG
つぶれるまで粘着するからな。
0299デフォルトの名無しさんNGNG
>>295 == >>298
MSが?
0300デフォルトの名無しさんNGNG
>>255は、しゃれだったんだが。
誰も気がつかないとは、馬鹿しかいないのかここは?
0301282NGNG
>>300
>>255書いたのは、おれだもんね。
完全にスルーされて悲しかったもんね。
0302デフォルトの名無しさんNGNG
>>301
恥ずかしいやつだなw
0303デフォルトの名無しさんNGNG
恥ずかしいやつしかいないということで、
終了。
0304デフォルトの名無しさんNGNG
念のため言っとくけど、code projectより作業が進行してるんだぞ?
どこが恥ずかしいんだ?
0305デフォルトの名無しさんNGNG
おまえもうイラネ。心底ウンザリ。
0306デフォルトの名無しさんNGNG
仕事で使ってたのなら、よくわかってると思うのでなんか書いてください。
一応、お勉強スレッドなので。
0307デフォルトの名無しさんNGNG
はじめてきました。
最近WTLを知ったばかりなのですがもう終わりなんていわないでください。
0308デフォルトの名無しさんNGNG
>>306
その「○○してください」っていい加減やめてくれ。
0309デフォルトの名無しさんNGNG
CFileDialogクラスは、[ファイルを開く]ダイアログと、 [名前を付けて保存]ダイアログをサポートしています。
ttp://home.att.ne.jp/banana/akatsuki/doc/atlwtl/atlwtl13-01/index.html
0310デフォルトの名無しさんNGNG
>>307
俺も最近始めたばっかりなんだよね。
もう何使ったらいいのかワカンネ。
0311デフォルトの名無しさんNGNG
>>309
・・・・で?
0312デフォルトの名無しさんNGNG
WTLに触れた雑誌ってあるのかな。
0313デフォルトの名無しさんNGNG
>>312
これにちらっと出てたのを見たことがある。後は知らん
http://www.bab.co.jp/hiden/
0314デフォルトの名無しさんNGNG
そんなクマーーーーーーーーーーーーーーー(AAry
0315デフォルトの名無しさんNGNG
>>313
おじさんつまんなーい。
0316デフォルトの名無しさんNGNG
>>308
やめてくれって言わないでください。
0317デフォルトの名無しさんNGNG
C#いいですね。
0318デフォルトの名無しさんNGNG
C#にはまりそうです。
0319デフォルトの名無しさんNGNG
なるほど、煽ろうと思って書き込んだものの、age忘れたので再度書き込んだというわけだね。
0320デフォルトの名無しさんNGNG
いや、真の目的はあげること。
0321デフォルトの名無しさんNGNG
真の目的は何のためにあげたのかだ。
0322デフォルトの名無しさんNGNG
煽るために決まってる。
0323デフォルトの名無しさんNGNG
char***************************************************************& p = 0;
0324デフォルトの名無しさんNGNG
このスレは>>1のような使えない奴が立てたので改めて煽るまでもなく雑談スレだ。
0325デフォルトの名無しさんNGNG
>>324
お前が言うなw
0326デフォルトの名無しさんNGNG
>>325の煽り方はワンパターンだということに気づいた
0327デフォルトの名無しさんNGNG
>>324
w
0328デフォルトの名無しさんNGNG
ぶっちゃけこのスレにはWTL自体の話がほとんどないな
0329デフォルトの名無しさんNGNG
このスレに>>326は、イラナイ
0330デフォルトの名無しさんNGNG
>>328
誰一人使えていないからなw
0331デフォルトの名無しさんNGNG
つーか>>1はYahooグループもWikiも放置してどこ行った。
0332デフォルトの名無しさんNGNG
>>331
お前は、知らなくていい。
0333デフォルトの名無しさんNGNG
煽ってるのが>>1だよ。このスレで叩かれて悔しかったらしい。
0334デフォルトの名無しさんNGNG
糞な>>1が立てたスレでも>>1が去った後に有効利用されることがある。
俺はそんなスレをいくつも見てきた・・・
0335デフォルトの名無しさんNGNG
死滅スレから来てる。
常識。
0336デフォルトの名無しさんNGNG
MFCやATL、WTLなどのネイティブC++ライブラリはLonghornまでの繋ぎなんだから
そんなに焦らなくても数年後に下火になるのに。
まったりできない奴はイラネ。
0337デフォルトの名無しさんNGNG
自分でスレ立てといて自分で煽ってって>>1の頭は大丈夫か?
0338デフォルトの名無しさんNGNG
>>334
これだけクソな>>1だと無理。
0339デフォルトの名無しさんNGNG
>>338
だから「糞な>>1が去った後」だってば。>>1がいる限り糞スレは糞スレであり続ける。
0340デフォルトの名無しさんNGNG
つか>>1は童貞だろ?童貞にはWTLは使えない。
0341デフォルトの名無しさんNGNG
スレタイがアレなので新たに立てますた。
【稍】WTLお勉強スレッド2【稍】
http://pc2.2ch.net/test/read.cgi/tech/1078150663/
0342デフォルトの名無しさんNGNG
もうさ、どうしようもなくつまらんこと書くのやめないか。
面白いと思って書いてる奴は自分のセンスを疑った方が良い。
0343デフォルトの名無しさんNGNG
>>341
また来たのか・・・・
0344デフォルトの名無しさんNGNG
>>342
お前もな。
0345デフォルトの名無しさんNGNG
オマエモナって久々に見た
0346デフォルトの名無しさんNGNG
>>318が>>1だね
0347デフォルトの名無しさんNGNG
叩かれるとわかってこのスレに居座り、
グループやwikiを中途半端に放置して醜態を晒して、
>>1はマゾなん?
0348デフォルトの名無しさんNGNG
本名こういちだっけ
0349デフォルトの名無しさんNGNG
>1は本当は日本のWTLユーザーとして有名になりたかったんだろうな…
0350デフォルトの名無しさんNGNG
マゾな>>1こと、マゾこういちたんとして有名にしてあげよう
0351デフォルトの名無しさんNGNG
こういちだけに高一の男子。  なんちゃって!
0352デフォルトの名無しさんNGNG
結局、WTLを使おうと思っている奴は殆どの問題を自力で解決できる。
だからこのスレに書き込む事なんて何も無い。
0353デフォルトの名無しさんNGNG
というか本当に教えて欲しいときはATLスレに書きます
0354デフォルトの名無しさんNGNG
こういちたんは現在Yahooチャットの「マ板 prog 1070269501」ルームでチャットしてますね
0355デフォルトの名無しさんNGNG
koichi_vv: ほかが、お金を追ってるのに、MSは時代を作ろうとしてるようなきがします
0356デフォルトの名無しさんNGNG
こういちがMSを賛辞して一斉にツッコミが入ってる状態だな・・・
0357デフォルトの名無しさんNGNG
突っ込み入ってないですけど?
0358デフォルトの名無しさんNGNG
WTL使ってる人っていないんですか?
0359デフォルトの名無しさんNGNG
心底あきれた。
0360デフォルトの名無しさんNGNG
まぁまぁ、そういわずに・・・
0361デフォルトの名無しさんNGNG
ここまでDQNだとはなぁ
0362デフォルトの名無しさんNGNG
>>352
使おうと思っても、使い方がわからないのですよ。
どういう風に使い始めたのか教えてほしいです。
0363デフォルトの名無しさんNGNG
教えて君イラネ。そんなにC#が気に入ったなら失せろ。
0364デフォルトの名無しさんNGNG
まだ高校生くらいか?それならまだ許せる。
0365デフォルトの名無しさんNGNG
>>362
ソースやCodeProjectを読む。
でもそれすらできないんだろ?
もう向いてないからやめた方が良いよ。
あとWTL理解できない人間がWTLのYahooグループを管理するのもアホらしいから閉鎖した方がいいかも。
0366デフォルトの名無しさんNGNG
>>362
MFCを窓から投げ捨てたらWTLかSDKしか残らんだろう。
ATLはMSDNに資料(日本語)があるしサンプルもある。
WTLはMFCのヘルプを参考にしながら作れば、そんなに難しい事は無いと思うが。
大体、作り方はMFCとそんなに変わらんだろ。
0367デフォルトの名無しさんNGNG
>>365
ヘッダは読んでるんだけど、意味がわからない部分が多いです。
グループは、元々ドキュメントを作ろうという人がいたので、
それに乗っかって作りました。
僕がほしいのはドキュメントで、編集とかならいくらでもやりますけど、
自分で書いていくのはちょっと無理だと思います。
0368デフォルトの名無しさんNGNG
こういちって本当に一人じゃ何もできない人なんだなぁ。
0369デフォルトの名無しさんNGNG
>>368
一人で出来なかったので、スレッドつくりました。
0370デフォルトの名無しさんNGNG
>>369
ていうか、何をしようとして挫折したんだ?
具体的な話が知りたい。
0371デフォルトの名無しさんNGNG
366>>
WTLは、なんとなく雰囲気がわかってきたんですけど、
ATLは、さっぱりです。
本は1冊買ってきました。
けど、さっぱりわからないです。
0372デフォルトの名無しさんNGNG
つか、反論してるつもりなのかねぇ。
まさに教えて君だな。
「わからない」だけで自分がどこまでやってどこがどうわからなかったのかこれまで一言も書かないし。
ドキュメントが欲しくて編集ならやる?
自分はわからないから書くつもりもない?
わからなくても調べるつもりもない?
一人でできなかったからスレ立てた?
普通は少しでも自分でやるもんだろーが。
「何一つ」やる気が無いだけだろ。

心底呆れた。
0373デフォルトの名無しさんNGNG
>>370
具体的な話は、ほとんど出来ないんです。
なぜかって言うと、まだ、スクロールウインドウとスプリッタと
デバイスコンテキストしか使ってないからです。
なんとなくとてもいいものだってことはわかるんだけど、
どう使っていいのかわからないです。
0374デフォルトの名無しさんNGNG
>>371
さっぱりわからないから何だ?
1から教えて欲しいのか?無理。
絶対に向いてないって。
本も豊富で簡単なお気に入りのC#だけやってればいいって。
このスレから身を引け。
0375デフォルトの名無しさんNGNG
すごいなぁ。ここまでの教えて君がよくWTLを触る気になったよなぁ。本気でマゾかも。
0376デフォルトの名無しさんNGNG
ほかの人は、このスレで何を語りたいのですか?
0377デフォルトの名無しさんNGNG
>>373
具体的な質問もできなくてスレ立てた、ってバカかおまえは。
0378デフォルトの名無しさんNGNG
で、高校生くらいなんだろ?
0379デフォルトの名無しさんNGNG
>>377
ほかにもそういう人はいると思いました。
いろいろ調べてみると、使っている人自体かなり少ないことがわかりました。
0380デフォルトの名無しさんNGNG
いつのまに語るスレになったんだよ・・・ハァ・・
0381デフォルトの名無しさんNGNG
>>379
君はWTLがどうだこうだ言う前にUIの勉強をした方がいいぞ。
「箸の使い方は分かったけど、御椀の使い方が分からない。」と言ってるようなものだ。
色んなソフトをspy++とかで覗いて、どんなコントロールの組み合わせで構成されているのか勉強しろ。
実は何を作りたいのかも考えてない?
0382デフォルトの名無しさんNGNG
>>380
ここに良く書き込まれているのは、WTLを使っている人は自分で全部解決できるので
質問自体無いってことです。
それで、何か語りたいのかと思いました。
0383デフォルトの名無しさんNGNG
だからさ、結局スレ立ててみたかっただけなんだって。
なんか「他の人のために」みたいなこと言ってるけど。
0384デフォルトの名無しさんNGNG
>>381
どうもありがとうございます。
spy++は、使ってます。
何を作りたいか以前に、何が出来るのかがわからない状態です。
あと、WTL・ATLだけでは足りないクラスがとても多いと思うのですが、
みんなはどういったもので補っているのですか?
0385デフォルトの名無しさんNGNG
>>382
ATLスレ見て無いのか。少ないが質問はあるしWTLの話もしてる。
つーかATLスレで十分なのにおまえが何も考えないでスレ立てたからこうなるんだ。
あとはATLスレの後にWTLスレとして有効に使ってやるからおまえは去れ。
質問も回答もできないただのMS信者は一つも役に立たない。
0386デフォルトの名無しさんNGNG
>>383
主に自分のためです。
質問したかったんです。
たとえば、ほかの人はどうやって調べるのかとか、
どういったものを作ったのかとそういうことです。
0387デフォルトの名無しさんNGNG
>>386
技術的な話じゃないならマ板にでも行って聞いてくればいいのに。
まさにスレ立てるまでもない質問だな。
0388デフォルトの名無しさんNGNG
>>384
へ?何が足りないの?
MFCにあるようなものは殆どあると思ってたけど・・・
それと何が出来るか考える前に、何か作る努力をしろ。
君程度の知識でATL/WTLの限界を語られても困る。
0389デフォルトの名無しさんNGNG
なんだろうね、この脱力感。あまりの厨房ぶりにかなりがっかり。
0390デフォルトの名無しさんNGNG
>>387
技術的な質問もしているんだけど、回答はつかないみたいです。
自分で調べた部分については、ウェブのほうに少しずつ書いています。
0391デフォルトの名無しさんNGNG
>>388
コレクションとか、足りてますか?
0392デフォルトの名無しさんNGNG
具体的に質問できないと言ってみたり技術的な質問はしてると言ってみたり・・・
場当たり的な言い訳してるのがばればれだな
0393デフォルトの名無しさんNGNG
あと、みんなは、WTLで何を作りましたか?
0394デフォルトの名無しさんNGNG
>>392
少ないですけど、技術的な質問もしています。
ただ、回答がつかないです。
たぶん使っている人自体が少ないのだと思います。
0395デフォルトの名無しさんNGNG
>>390
ウェブのほうってどこよ?
0396デフォルトの名無しさんNGNG
>>394
どれ?
0397デフォルトの名無しさんNGNG
>>391
足りない物はSTLで代用してるから不都合はないと思うけど。
0398デフォルトの名無しさんNGNG
コレクションが足りないのはMFCも一緒だろ
0399デフォルトの名無しさんNGNG
>>395
wikiのあるところです。
少しずつ、メモしていってるだけなので、
役に立つようなものになるのはだいぶかかりそうです。
最初にドキュメントを作るといった人たちは、
こういうメモを集約したいといっていました。
wikiが必要だという人がいたのでwikiを作りました。
僕には運営する能力は無いので、出来れば誰かが運営してくれると良いんですが。
0400デフォルトの名無しさんNGNG
>>398
そういう部分をどうしているのですか?
0401デフォルトの名無しさんNGNG
あぁあのホワイトデーから放置してるやつね
0402デフォルトの名無しさんNGNG
>>397
やっぱりSTL使ってる人が多いのかな。
0403デフォルトの名無しさんNGNG
>>400
STLって出てるやん。つーかそんなことまで質問かよ。
0404デフォルトの名無しさんNGNG
>>401
wikiのうえにページがあります。
0405デフォルトの名無しさんNGNG
なんで運営する能力がないと自覚してるのに立てるんだろう
もしかして初めから他人を頼りにしてた?
0406デフォルトの名無しさんNGNG
>>405
当然、頼りにしてますよ。
0407デフォルトの名無しさんNGNG
だめだこりゃ
0408デフォルトの名無しさんNGNG
全然やる気無いね。こういちは放置決定。じゃ。
0409デフォルトの名無しさんNGNG
>>406
先導役くらいやれよ。糞SEのような奴だな。
0410デフォルトの名無しさんNGNG
>>409
みんなは、どういうドキュメントが必要なのですか?
ログを読むと、ドキュメントは必要ないって言う意見がほとんどなんですけど。
ぼくがwebのほうに書いていくことにしたのは、
あまり必要の無いものみたいなので、自分のためのメモとして負担の少ない方式に切り替えたんです。
あるていどメモがたまれば、それはそれで役に立つかもしれないし。
そんな感じです。
0411デフォルトの名無しさんNGNG
つーかお前ら>>1を当てにしすぎててキモい
>>1は単に話題を提供しただけで、それ以上でも、それ以下でもない
0412デフォルトの名無しさんNGNG
あと、ヘッダを見てわからない部分というのは、
なぜ、そうなっているのかというようなことです。
0413デフォルトの名無しさんNGNG
あと、ここに書き込まなくなったのは、
ここにいる人と自分のレベルがあまりにも違うようなので、
少しずつコードを書いていたほうが建設的だと思ったっていうのもあります。
自分にとっては普通に疑問なことでも、わかりきっている人には、
がっかりすることが多いようなので。
0414デフォルトの名無しさんNGNG
とりあえず「ATLインターナル」って本を買って読めよ。
0415デフォルトの名無しさんNGNG
>>411
悪いが>>1は話題すら提供できてない。
0416デフォルトの名無しさんNGNG
uzeーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
0417デフォルトの名無しさんNGNG
変なのが粘着してるな...。
0418デフォルトの名無しさんNGNG
418 名前:デフォルトの名無しさん[sage] 投稿日:04/03/25 14:35
粘着は、所詮Del厨だろ。

419 名前:デフォルトの名無しさん[] 投稿日:04/03/25 16:08
WTLに、
.NETでいうところのPanelクラスみたいなものってありますか?
できるだけ簡単なコードで、
ウィンドウより大きい画像をスクロールバーでスクロールさせたいのですが・・・

420 名前:デフォルトの名無しさん[sage] 投稿日:04/03/25 17:31
>>419
CScrollImplなんかどうよ?

421 名前:デフォルトの名無しさん[] 投稿日:04/03/25 21:43
>>419
ちょうどスクロールウインドウ使ってみたところです。
まだ良くわかっていないのですけど、
必要なら、わかる部分までまとめますけど?
0419デフォルトの名無しさんNGNG
>>418
あんがと
0420デフォルトの名無しさんNGNG
皿仕上げ
0421デフォルトの名無しさんNGNG
ageてねーし
0422デフォルトの名無しさんNGNG
自作フリーウェアを、MFCからWTLに移行して公開したり
したっけな。今はかなり忘れてるw

いつのころか調べたら、3年前だったヨ
0423デフォルトの名無しさんNGNG
うーむ。
Windows 3.0のころから始まって、Win16 API→MFC→ATL+WTLてな感じで
歩いてきたけど、行き着いたのはWin32 APIですよ。
やっぱ、これが一番ストレスなくできて良いかなと。。。

え?WinFXですって?それって何味だよ。
もうトシかなw
0424デフォルトの名無しさんNGNG
つまんね
0425デフォルトの名無しさんNGNG
>>423
Cで書くのですか?

関係ないけど、ソケット関連が足りないなぁ。
0426デフォルトの名無しさんNGNG
CPaneContainer最強。
0427423NGNG
>>425
Cだよ。
アセンブラでも組んだりする。
最近はこっちに嵌り気味かな。
0428デフォルトの名無しさんNGNG
>>427
めんどくさくないですか?
0429デフォルトの名無しさんNGNG
>>428
16bitのWindowsだとこんな感じ〜
tp://ftp.microsoft.com/Softlib/MSLFILES/MASMWIN.EXE

でも、漏れはMASM32使っているのでラクチン。
ttp://www.masm32.com/

めんどくさいって言っても遊びだからね。
仕事で使う言語と違う言語を家で使って遊ぶのさw
0430デフォルトの名無しさんNGNG
久しぶりにWTL+ATLを使ってコード書いた。。。
WTL3.1からみると今の7.1は変ったなぁ。ATL7の影響もあるのかな?
CString を使うにしても、コンパイルエラーが取れなくて苦労した
#define _WTL_NO_CSTRING
#define _CSTRING_NS ATL
の宣言がないと使えないの?
この宣言を付けないと。。コンパイルエラーが取れないんだが。
誰か教えて。。

あとCAtlHttpClientを使ったけど、情報少ないね。
CAtlNavigateDataのSetChunkCallbackで設定するコールバック。。
MSDNでは引数2つだけど、、、3つ必要じゃない。。。MSDN違うぞ
0431デフォルトの名無しさんNGNG
>>430

何もしなければ、勝手に#define _CSTRING_NS ATLされるはずですけど。
WTL・ATLともに7.1で使ってるけど、問題出ていません。
0432デフォルトの名無しさんNGNG
こういちタンマンセーage
0433デフォルトの名無しさんNGNG
ありがとう>>431
近づけようとしたら次のようなコードで限界です

#define _WTL_NO_CSTRING
//#define _CSTRING_NS ATL

#include <atlstr.h>
#include <atlbase.h>
#include <atlapp.h>

.....の後の
extern CAppModule _Module;

#include <atlmisc.h>
#include <atlwin.h>
#include <atlhttp.h>// ATL HTTP Client (CAtlHttpClient)

atlhttp.hが悪さしているような。。。

0434デフォルトの名無しさんNGNG
こういちMLの過去ログが非公開になったわけだが意味はあるのか
0435デフォルトの名無しさんNGNG
> atlhttp.hが悪さしているような。。。

たぶんこれは関係ないと思うのですが、
個人的に興味あるので、良かったらソース見せてもらえませんか?
0436デフォルトの名無しさんNGNG
>>433
MSDNから引用。
CString、CStringA、および CStringW は、ユーザーの DLL からエクスポートせずに、
MFC DLL (MFC7x.DLL) からエクスポートします。これは CStringT の多重定義を防止するためです。

これ関係ないですか?
0437デフォルトの名無しさんNGNG
>>435
ソースアップロードしました。
http://pub.idisk-just.com/fview/wFVe0HfDC__H_zruSjO22IXPp_iVpvsIJqo4ejdqmkJvB9IiCU70TSGK6haINzoY
iDiskです。

CAtlHttpClientにもバグがあるようなので、今日はそちらの調査。
ソースの中にも、「こける」とか「なぜ取得できないの」の部分です

>>436
CStringといってもMFC使っていないので、関係ないと思いますが。。。

0438デフォルトの名無しさんNGNG
http://wtl.main.jp/pukiwiki/pukiwiki.php
もメンテしていないみたいだし。。
http://joyful.main.jp/?ATL%2FWTL
にある CAtlHttpClient の修正はコンパイルエラーになる
> } else {
> Close();
> if (Create()) <---------------えらー
> {
> if (GetProxy())
> Connect(m_strProxy, m_nProxyPort);
> else
> Connect(m_urlCurrent.GetHostName(), m_urlCurrent.GetPortNumber());
> }
> }

なんてこったい
0439デフォルトの名無しさんNGNG
>>437
atlmisc.hを廃止してatltypes.hを使うのはどうですか?

#include <atlbase.h>
#include <atlapp.h>
extern CAppModule _Module;
#include <atltypes.h>
#include <atlwin.h>
#include <atlhttp.h>
0440デフォルトの名無しさんNGNG
>>439
うまくいきました。
でも atlmisc.hの最後の方に定義されているグローバル関数も捨てがたいような

次は CAtlHttpClient.... 疲れる
0441デフォルトの名無しさんNGNG
class WTL相談室 : public 2chImpl<WTL相談室, Part2>
0442デフォルトの名無しさんNGNG
>>441
ワラタ
次スレのタイトルだな。
問題は次スレまで行くかどうかだが…
0443デフォルトの名無しさんNGNG
>>442
先代スレが13レスで終わったことを考えれば上出来(w
0444デフォルトの名無しさんNGNG
こういちバッシングで何レス稼いだことか
0445デフォルトの名無しさんNGNG
CAtlHttpClientはあまり使う人居ないから情報少ないんだよね。
というわけで>>440氏はがんばってWikiを充実させてください(w


0446デフォルトの名無しさんNGNG
WTLに興味があり下調べ中の者です。
MFCはウィンドウプロシージャで例外をハンドルしていますが、
VC6付属のATLには見当たりません。
私の目が悪いのでしょうか、それとも、自力で作る必要があるのでしょうか。

0447デフォルトの名無しさんNGNG
>>445
CAtlHttpClientだめだぁ〜。虫ありすぎ
0448デフォルトの名無しさんNGNG
ダイアログバーをメインフレームに貼り付けたいんですけど
MFCのCDialogBarのようなクラスはないんですか?
0449デフォルトの名無しさんNGNG
↑一眠りしたら解決しました。
0450デフォルトの名無しさんNGNG
あげとこう。
0451デフォルトの名無しさんNGNG
ここはこういちと共に放置するスレだから上げなくていいよ。
0452デフォルトの名無しさんNGNG
MDIって推奨されないんですか?
0453デフォルトの名無しさんNGNG
>>452
時代はタブなんじゃね?
0454デフォルトの名無しさんNGNG
>>453
3.1→95 で アイコン→タスクバーのボタン の流れと似たようなもんかね
0455デフォルトの名無しさんNGNG
はぁ?つーかWTLの話かよこれ。
0456デフォルトの名無しさんNGNG
viksoeさん、更新まだ〜〜??
0457デフォルトの名無しさんNGNG
彼がこういちスレなんて見てるかよっ!
0458名無しさん♯NGNG
WTLオープンソース化ヽ(´∇`)ノバンザーイ
http://sourceforge.net/projects/wtl
0459名無しさん♯NGNG
しかもバージョン7.5が出てるね。
0460デフォルトの名無しさんNGNG

ソースを7.1と比較したけど、機能追加はなし。
細かな不良修正だけ
0461デフォルトの名無しさんNGNG
ニュースになっとる。
http://www.itmedia.co.jp/news/articles/0405/13/news016.html
0462デフォルトの名無しさんNGNG
まあ今までも十分オープンソースみたいな物だったけどな。
0463デフォルトの名無しさんNGNG
まぁ、使い方からしてオープンソースの方が合ってるわな
0464デフォルトの名無しさんNGNG
とりあえずあちらこちらで取り上げられて知名度うpを期待
0465デフォルトの名無しさんNGNG
でもCPLとして独立して配布されたらGPLなんかとは"混ぜたら危険"になるのかな。
0466デフォルトの名無しさんNGNG
そもそもGPL自体、何と混ぜても発火するじゃん。
0467デフォルトの名無しさんNGNG
結局、WTLで作成したソフトをシェアウェアで販売するのは禁止になるの?
0468デフォルトの名無しさんNGNG
どこをどう読んで「結局」なんだ
0469デフォルトの名無しさんNGNG
http://www.tietew.jp/cppll/archive/10788
WTL を使ったこともない方が、妄想で夢語っておられました。




なんかしゃべる前に実際に使ってみろよ…
0470デフォルトの名無しさんNGNG
>>469
そのスレのレス糞ばっかじゃん。
ATLベースなのも知らんし7.1から7.5の違いはVC6.0用のAppWizardが無くなっただけとか言ってるし。
0471デフォルトの名無しさんNGNG
放置して2ヶ月、か・・・哀れすぎる
0472デフォルトの名無しさんNGNG
http://money3.2ch.net/test/read.cgi/bizplus/1084643364/l50
ビジネス+にスレが立ってた
0473デフォルトの名無しさんNGNG
>>466
激しくワロタ
0474デフォルトの名無しさんNGNG
りばー

ttp://home.att.ne.jp/banana/akatsuki/doc/atlwtl/atlwtl15-02
0475デフォルトの名無しさんNGNG
レバーだろ
0476デフォルトの名無しさんNGNG
【漏れは】猫でもわかる質問スレ【猫以下です】
http://pc5.2ch.net/test/read.cgi/tech/1054813207/63-66
0477デフォルトの名無しさんNGNG
このコード、どうみてもおかしいんだが。動作もおかしい。
オプソ化したんならなら早く直してくれよ

if((rbbi.fStyle |= RBBS_GRIPPERALWAYS) == 0)
{
rbbi.fStyle |= RBBS_GRIPPERALWAYS;
bRet = SetBandInfo(i, &rbbi);
ATLASSERT(bRet);
rbbi.fStyle &= ~RBBS_GRIPPERALWAYS;
}
0478デフォルトの名無しさんNGNG
オプソ化したんだから自分で意見出してこいよ
0479デフォルトの名無しさんNGNG
>>475-476不覚にも笑っちまった。
0480デフォルトの名無しさんNGNG
保守安芸
0481デフォルトの名無しさんNGNG
コンパイルが遅いんだよなぁ。俺のマシンじゃ開発辛いよぉ。
ライブラリ的にはいかしてるんだが・・・。
0482デフォルトの名無しさんNGNG
テンプレートライブラリはどうしても遅いよね。
0483デフォルトの名無しさんNGNG
コンパイル時間 / パフォーマンス = const.
0484デフォルトの名無しさんNGNG
WindowImpl
とか言うクラス名がある時点でオレ的には没
ちゃんとWindowImplementにしとけよ>MS
0485デフォルトの名無しさんNGNG
>>484 は、WindowImplement が文法的におかしいことに気づいていない。
0486デフォルトの名無しさんNGNG
MS
とか言う略称を使ってある時点でオレ的には没
ちゃんとMicrosoftにしとけよ>>484
0487デフォルトの名無しさんNGNG
そもそも"WindowImpl"なんてクラス名は無いしな
しかもCWindowImplはWTLではないしな
0488デフォルトの名無しさんNGNG
なんとかして話に入りたかったんだろ。そっとしといてやれ。
0489デフォルトの名無しさんNGNG
ちょいと質問。

CSplitterWindowでクライアント領域を3つに分割して
それぞれにコントロールから派生したビューを表示させようとしてるんですが、
CListViewCtrlと、CCheckListViewCtrlを使う場合、
それぞれ独自クラスに派生させて使うべき?

それぞれ派生させるとなると、CListViewCtrlだと
class HogeView : public CWindowImpl<HogeView, CListViewCtrl>
でいけるんだけど、

CCheckListViewCtrlだと、同様にやるとエラー吐かれるんで、
class FugaView : public CCheckListView<FugaView>
としてるが、これはこれで無問題かつ仕方ない?

それともCFrameWindowImplの派生クラスにメンバとして
持たせといた方がいいのかな?
0490デフォルトの名無しさんNGNG
CCheckListView< > て何?どっから出てきたクラス?

class CHogeView2 : public CCheckListViewCtrlImpl<CHogeView2>
じゃダメ?
0491デフォルトの名無しさんNGNG
>490
ああ、typoしてた
そそ、今はそうやってるんだけど、
CListViewCtrlの場合と統一性ないし
それでいいのかなと思ったのよ
0492デフォルトの名無しさんNGNG
それぞれのクラスの基底側に注目。
ダイアモンドが出来ないようにすればいいだけ。
0493デフォルトの名無しさんNGNG
>492
そういうことを聞いてるんじゃないんだが。

まあ、それは置いといて、続きの質問。
チェックリストビューの場合は、

// Traitsは省略
class MyCheckListView
 : public CCheckListViewCtrlImpl<MyCheckListView, CListViewCtrl>
{
 private:
  typedef CCheckListViewCtrlImpl<MyCheckListView, CListViewCtrl> _BaseClass;

  BEGIN_MSG_MAP_EX(MyCheckListView)
   MESSAGE_HANDLER(WM_CREATE, OnCreate)
  END_MSG_MAP()

  LRESULT OnCreate(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL & bHandled)
  {
   if (_BaseClass::OnCreate(uMsg, wParam, lParam, bHandled) != 0)
    return -1;
   /* 独自の初期化 */
   return 0;
  }
};

という感じで独自の初期化をやってるんだけど、
通常のリストビューの場合だと同様のことをする方法が分からない。
独自の初期化をインプリメントするいい方法ありませんか?
0494デフォルトの名無しさんNGNG
同様にOnCreateを追加すればいいのとちゃうんか。
0495デフォルトの名無しさんNGNG
初めてこのスレでまともな質疑応答を見た気がする
0496489NGNG
>494
俺もそう思ってやってみてたんだけど、同じようにやると、

class MyListView : public CWindowImpl<MyListView, CListViewCtrl> {
 private:
  typedef CWindowImpl<MyListView, CListViewCtrl> _BaseClass;

  BEGIN_MSG_MAP_EX(MyListView)
   MESSAGE_HANDLER(WM_CREATE, OnCreate)
  END_MSG_MAP()

  LRESULT OnCreate(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL & bHandled)
  {
   /* A */
   if (_BaseClass::OnCreate(uMsg, wParam, lParam, bHandled) != 0)
    return -1;
   /* B */
   /* 独自の初期化 */
   /* bHandled = FALSE; */
   return 0;
  }
};

派生元クラスにOnCreateが無いって言われるんだよね。
で、/*A*/から/*B*/までを消してやると独自の初期化は行われるんだが
派生元であるCListVewCtrl自体の初期化が正常に行われない。
ちなみに独自の初期化の後の /* bHandled = FALSE; */をコメントアウトすれば、
ちゃんと派生元の初期化も行われるんだが、その前にSetViewType(LVS_REPORT)とかしていると、
その設定が初期化されてしまう。
誰か、いい方法知らない?
0497デフォルトの名無しさんNGNG
>>495 糞レスするな!!
0498デフォルトの名無しさんNGNG
>>496
_BaseClass::OnCreateではなく
_BaseClass::DefWindowProcを使ってみては?
0499デフォルトの名無しさんNGNG
CWindowImplにOnCreateなんてないよね。MFCじゃあるまいし。
0500デフォルトの名無しさんNGNG
あと、派生クラスがDefWindowProcをオーバーライドしてないならただのDefWindowProcでいいよね。
0501デフォルトの名無しさんNGNG
お、このスレもVC++初心者スレみたく、糞スレから普通のスレに変貌するのか?!
0502489NGNG
>498
ばっちり、期待通りの動作になりました。

結局、CCheckListViewCtrlは使うのやめて、
全部CListViewCtrlから派生させるようにして、
拡張スタイルでチェックボックスは後付けにするようにしますた。

多謝>ALL
0503デフォルトの名無しさんNGNG
>>502
CHAIN_MSG_MAPか、ALT_MSG_MAP使えよ。
0504デフォルトの名無しさんNGNG
wikiの練習に
http://wtl.main.jp/pukiwiki/pukiwiki.php?FrontPage
使ってみた!!
メッセージマップ書いてみた!おー、できた。感動したw

まぁ、気が向けば更新するかも・・・。
0505デフォルトの名無しさんNGNG
あの一覧書き込むって、そうとう暇だったんだな。
0506504NGNG
>>505
一覧の左側だけは、The Code Project にあったんで、コピペして貼り付け。
viksoe.dk の WTL 7.0 Documentation にも関数の引数かいてないので、まあwikiの練習がてらにということで書いてみた。
0507デフォルトの名無しさんNGNG
WTL Browser
ttp://www.codeproject.com/useritems/wtlbrowser.asp
0508デフォルトの名無しさんNGNG
>>507
それ、VS.NET2003 + WTL7.5だとコンパイルエラーになるな。
まあ、簡単に直せるけど。

まだ、VisualStudio6.0の方が多く使われているのかね。
0509デフォルトの名無しさんNGNG
どこがどういうエラーになるか教えれ
0510デフォルトの名無しさんNGNG
>>509
error C2248: 'CWebBrowser2<T>::String' : private typedef (クラス 'CWebBrowser2<T>' で宣言されている)にアクセスできません。
8件ほどあるな。まずはやってみろよ。
>>508
WTL使うような人はVS.NETにする必要ないのかもしれないね。
0511デフォルトの名無しさんNGNG
>>510
> WTL使うような人はVS.NETにする必要ないのかもしれないね。
いや、VS.NET になってATLの機能も上がってるからバージョンアップした方がいいだろ。
0512デフォルトの名無しさんNGNG
>>511
ATL::CStringはかなり使い勝手が良い。
WTLもがんばってほしいもんだ。
0513デフォルトの名無しさんNGNG
_AtlBaseModule?だっけ
このへんが気に入らない。

CMyAppModule MyModule;
CAppModule& _Module = MyModule;

みたいなことがやりづらくなった。いや出来るんだけど
0514デフォルトの名無しさんNGNG
>512
WTL使いながら、CStringはATLのを使ってるよ、俺は。
0515デフォルトの名無しさんNGNG
WTLのCStringはMFCのよりどんな点が優れてるのでつか?
(サンプル作ってみたけどインテリセンスきかなくてメンバも
みられないのでわからんですばい)
0516デフォルトの名無しさんNGNG
WTLがATLから独立宣言するかもしれないってのにおまえらのんきだな。
0517デフォルトの名無しさんNGNG
そうなの?
独立出来るぐらい高機能になってくれれば良いんだけどね。
特にCString。
0518デフォルトの名無しさんNGNG
質問いいですか?
CContainedWindow使おうとしててちょっと詰まってるんです。
class CMainDlg : public CDialogImpl<CMainDlg>{
public:
enum { IDD = IDD_MAINDLG };
CContainedWindow m_contained;
CMainDlg() : m_contained(_T("BUTTON"), this, 100){}
//…略…メッセージマップとか
LRESULT OnInitDialog(UINT, WPARAM , LPARAM , BOOL&){
m_contained.SubclassWindow(GetDlgItem(IDOK));
return TRUE;
}
//…略…
};
こんな感じにするとコンパイルは通るんですけど
実行時にSubClassWindowでコケちゃいまして…。
それと、CContainedWindow関係以外のコードはウィザードが吐いたモノです。
何か物凄いバカやってるかもしれませんが
どこがマズいか教えてくださいませんか?
0519デフォルトの名無しさんNGNG
>>518
//…略…メッセージマップとか
を書いて見せろ。重要なところだからな。
0520デフォルトの名無しさんNGNG
レスありがとうございます。
BEGIN_MSG_MAP(CMainDlg)
MESSAGE_HANDLER(WM_INITDIALOG, OnInitDialog)
COMMAND_ID_HANDLER(IDOK, OnOK)
COMMAND_ID_HANDLER(IDCANCEL, OnCancel)
END_MSG_MAP()
メッセージマップはこんな風になってます。
どこかおかしいですか?
0521デフォルトの名無しさんNGNG
>>520
ALT_MSG_MAP(100) がない。
あと、コケたときのエラーメッセージも読め&書け。
0522デフォルトの名無しさんNGNG
>>518
あのさ、そもそもOKボタンをサブクラス化して何使うんだ?
0523デフォルトの名無しさんNGNG
そりゃあ

















                   OK牧場
0524デフォルトの名無しさんNGNG
>521
あー、すみませんっ。
ALT_MSG_MAP(100) 追加したら動きました。
なんていうか、後で追加しようとしててすっかり忘れてました。
なんで質問する前に気づかなかったんだろう…。
本当申し訳ないです。

ええと、実はまだ同じような状態のコードがあってそっちは
メッセージマップもきちんと書いてあったりします。
…けどまたしょうもないミスしてそうな気がしてきました。
おかげで解決しそうです。
付き合ってくださってありがとうございました!
0525デフォルトの名無しさんNGNG
>522
テスト用のコードなんで意味はないです。
コンボボックスとその中のエディットをサブクラス化して、
タブキーで移動したりリターンの押下検出したりしたかったんですよ。
で、コンボボックスをCContainedWindowで作ろうとしてるトコで
ずーっと詰まってたりするわけだったりです。
0526デフォルトの名無しさんNGNG
>>522
そんなことどうでもいいだろ
0527デフォルトの名無しさんNGNG
やっとこさデバッグ終わりましたー。
>519さんありがとうございます。助かりました。

うーむ、CWindow::Create()のlpRectはNULLでもいいのに
CContainedWindowT<CWindow>::Create()のはダメなんですね。
まず先にプロトタイプと実装確認しとけばよかったなー。
0528デフォルトの名無しさんNGNG
>>527
&CWindow::rcDefault にしておくっていう手もある。
0529デフォルトの名無しさんNGNG
>528
はい。そうすることにします。
というか、CWindow::CreateはlpRectにNULL渡すと
勝手にそれをやってくれるんですよね。
なんでCContainedWindowの方はそうなってないのかなぁ。
0530デフォルトの名無しさんNGNG
>>529
おいしいものにはわけがある
0531デフォルトの名無しさんNGNG
>>529
Win32 API の仕様で、WS_OVERLAPPEDWINDOW とかその辺のものじゃないと、
デフォルトサイズでの生成はできなかったはず。 WTL もそれに準じているんでしょう。
0532デフォルトの名無しさんNGNG
MFC の
CWnd::FromHandle(hWnd);
に相当するもんはないんかなぁ?。
0533デフォルトの名無しさんNGNG
CWndが無いんだからあるわけないだろう
0534デフォルトの名無しさんNGNG
>>533 (・∀・)ニヤニヤ
0535デフォルトの名無しさんNGNG
というかいらないよね
0536デフォルトの名無しさんNGNG
>>533
「相当」という語の意味が理解できていないようですな
0537デフォルトの名無しさんNGNG
>>536
ウィンドウハンドルから「ATLの」ウィンドウオブジェクトを作りたきゃ
CWindow win = hWnd;
でいい。
CWindowは内部でCWndみたいなことしてないんだから相当するものがあるわけないだろう。
0538デフォルトの名無しさんNGNG
ATL::CWindow::operator= (HWND)が、MFCのCWnd::Attach(HWND)に相当する。
CWnd::FromHandle(HWND)と似た使い方が出来るが、厳密には同じではない。
0539デフォルトの名無しさんNGNG
つまりCWnd::Attachに相当するものはあるが
FromHandleに相当するものは>>537の意味なら=、Attach、違う意味なら無い。
でもAttachじゃなくてFromHandleに相当するものを聞いてるんだから
回答は後者の「相当するものはない」が適当なんじゃないの。
0540デフォルトの名無しさんNGNG
>>537はoperator=じゃないし。
適当なこと言うな。>>538
0541デフォルトの名無しさんNGNG
元質問者は煽るだけで話についてきてないんじゃないのか
0542デフォルトの名無しさんNGNG
>540

何かりかりしてんの?
>540=538か?ワラ
0543デフォルトの名無しさんNGNG
あ、まちがいた
>540=537だな
0544533NGNG
>>541
いや、質問してから、何もかきこんでないし。

てーか、MAPつかって、自分で処理しないとだめなんですなぁと思ったが、
めんどくさいので他の方法でなんとかしますたよ。
0545デフォルトの名無しさんNGNG
>>543
違うが。つーか間違いは素直に認めれ。煽るのはカコワルイ。
0546デフォルトの名無しさんNGNG
おまえらレス番間違えすぎ。落ち着けよ。
0547デフォルトの名無しさんNGNG
>>544
他の方法ってどんな方法よ?
0548デフォルトの名無しさんNGNG
そもそも>>532はどんな処理でFromHandle相当のものが必要になったのだろう
0549533NGNG
>>547
あー、いや、FromHandle(hWnd);つかえたら便利だなぁと思ったけど、
使えないから、泥臭いコードかいただけって話です。
(例えば、SetWindowLongPtr() に LPVOID に ポインタいれとくとか・・・。)

お答えくださった皆さま、どうもありがとうございました。
0550532NGNG
おう、レス番ちがってるしw

>>533失礼した。

>>548
いやねぇ、 FromHandleで Cwindow* のポインタGetしたときに、
dynamic_cast で とあるクラスに変換できたら処理して、できなかったら何もしないとかできたらうれしいなと。
てーか今考えたが、ウインドウネームでなんとかなるじゃねーか。
0551デフォルトの名無しさんNGNG
>540はなんだ、結局それはoperator=じゃねえ、
コピーコンストラクタだってことが言いたいのか?
よく文章読んでから煽れや、池沼
0552デフォルトの名無しさんNGNG
つーか間違いは素直に認めれ。煽るのはカコワルイ。
0553デフォルトの名無しさんNGNG
厳密には同じではない
とか言ってる人間が厳密性を欠いた発言してんだもんなー
0554デフォルトの名無しさんNGNG
つか厳密にはずっとATLの話してるな。もう少しで埋まるんだからATL相談室使ってやれよ・・・
0555デフォルトの名無しさんNGNG
そもそも、WTL/ATLの区別はどこらへんでつけるのかと・・・。
自分的にはCOMとかならATLの方にかきこむけど・・・。
GUI周りなら、WTLと決めてるて感じ。
0556デフォルトの名無しさんNGNG
そもそも、WTLとATLを切り離して話をすることが無理
0557デフォルトの名無しさんNGNG
CComObject と CWindowImpl で切り離せばいいじゃないの?
CWindowImpl は、ATL だけどウィンドウだからこっちのスレで良いのでは。
0558デフォルトの名無しさんNGNG
プロジェクトの種類もATL/WTL一緒になってるしね
0559デフォルトの名無しさんNGNG
びくそえ移動してるね
http://www.viksoe.dk/code/

いつの間にか7.5のドキュメントとか作ってたんだ・・・
氏等なんだ
0560デフォルトの名無しさんNGNG
そんなの世の中のWTL本全部かき集めたところで分かりゃしねーよ
0561デフォルトの名無しさんNGNG
>世の中のWTL本全部かき集めた

そんな便利なものがあるのか
0562デフォルトの名無しさんNGNG
みんなでWTL本かこーぜ
0563デフォルトの名無しさんNGNG
自費出版かよ
0564デフォルトの名無しさんNGNG
>>562
こういちみたいな勢いだけの発言するなよ
0565デフォルトの名無しさんNGNG
みんなでWTLビデオ撮ろーぜ
0566デフォルトの名無しさんNGNG
俺男優な
0567デフォルトの名無しさんNGNG
>>566
お前はPCのスイッチ入れる役だ
0568デフォルトの名無しさんNGNG
やっぱりオライリーの本みたいに、何か動物を模そうよ
何がいいかな?
0569デフォルトの名無しさんNGNG
>>567
俺のゴールドフィンガーでスイッチを入れたらPCが潮吹くぜ
0570デフォルトの名無しさんNGNG
>>569
だからペルチェ素子はやめておけって言ったのに。
0571デフォルトの名無しさんNGNG
VC++6.0にWTLインスコしてみました
WTLにはstd::vectorに代わるもんは無いの?
0572デフォルトの名無しさんNGNG
そのへんはATL7だろう。WTLはGUI関係のライブラリだと思った方が良い。
0573デフォルトの名無しさんNGNG
つーか、std::vectorが使いたいならstd::vector使えば良い。
最近のATL/WTLはそもそもSTLと連携することを念頭においてるんじゃなかったか?
0574デフォルトの名無しさんNGNG
どこでそんな話が?<念頭
今のところATLと同様なるべくCRTに依存しないようになってると思うが。
0575デフォルトの名無しさんNGNG
ATLインターナルにはSTLと一緒に使えみたいなこと書いてたな。
0576デフォルトの名無しさんNGNG
CComEnumOnSTL あたりが、STLとの連携を念頭に置いてるね。
0577デフォルトの名無しさんNGNG
STLと連携することを念頭においてるなら引数にCStringなんて取らずに、
std::string取って下さい
0578デフォルトの名無しさんNGNG
WTLの構造って全部Hに書いてあるわけでしょ?
このソースぱくれば自分で好きな機能使えるんじゃないの?
0579デフォルトの名無しさんNGNG
そうだよ、よかったね。
0580デフォルトの名無しさんNGNG
このスレも終わりだな
0581デフォルトの名無しさんNGNG
どうした突然。まぁ>>1のやりたかったことはとっくに終わってるが。
0582デフォルトの名無しさんNGNG
>>577
それを言うなら std::basic_string<TCHAR> だろう。ボケが。
0583デフォルトの名無しさんNGNG
http://sourceforge.net/projects/wtlのOpenDiscussionでis this project alive?って投稿が。
0584デフォルトの名無しさんNGNG
↑アフォ
0585デフォルトの名無しさんNGNG
is this thread alive?
0586デフォルトの名無しさんNGNG
dead...
0587デフォルトの名無しさんNGNG
正直MFCの改悪版にしか見えない
0588デフォルトの名無しさんNGNG
MFCはランタイムいるだろ
0589デフォルトの名無しさんNGNG
atl.dllは要らないのか?>wtl
0590デフォルトの名無しさんNGNG
MFCはスタティックリンクしたらいらないじゃん
0591デフォルトの名無しさんNGNG
釣られんな
0592デフォルトの名無しさんNGNG
>>589
スタティックリンクを知らないバカバッカ <- <<588-589
0593デフォルトの名無しさんNGNG
>>577 >>582
MBCS対応が…
0594デフォルトの名無しさんNGNG
そこをC言語の文字列操作関数でカバーするw
0595デフォルトの名無しさんNGNG
MFCはmainが隠蔽されてるではないか!
0596デフォルトの名無しさんNGNG
>>595
だから、何?
0597デフォルトの名無しさんNGNG
>>595
真っ赤な嘘。WinMainが正解。
0598デフォルトの名無しさんNGNG
MFCはブラックボックス
0599デフォルトの名無しさんNGNG
>>598
思いっきりソースが公開されているじゃないか
0600デフォルトの名無しさんNGNG
>>596
不便じゃないか!
0601デフォルトの名無しさんNGNG
mainにだらだらと書くのはどうかと思うよ。
0602デフォルトの名無しさんNGNG
つかいちいち釣られんなよ
0603デフォルトの名無しさんNGNG
MFCはN88-BASICの改悪版
0604デフォルトの名無しさんNGNG
↑頭の可笑しい人
0605デフォルトの名無しさんNGNG
>>603
真っ赤な嘘。Hu-BASICが正解。
0606デフォルトの名無しさんNGNG
エクスプローラの左側のフォルダのやつを作っています(CFolderViewと命名)
CFolderViewクラスはスプリッタで区切ったMainFrameの左側に設置しています

class CFolderView : public CWindowImpl<CFolderView> という風なクラスにして
CtreeViewCtrlをメンバに持ちFolderViewクラスのOnCreate()でツリーを作ったらうまく表示されてくれたのですが

class CFolderView : public CWindowImpl<CFolderView, CTreeViewCtrl> と
FolderViewクラスをTreeViewCtrlの派生クラスに修正したらツリーが表示されなくなってしまいました
OnPaintで文字を出力させてみたらちゃんと文字が表示されていたのでFolderView自体は表示されていると思うのですが・・・

どこか勘違いしているのでしょうか・・・ご教授ください(TT
0607606NGNG
すみません、自己解決しました
DefWindowProc呼んでませんでした
ちょっと前に話題になってるし・・・よく調べもせず、すみませんでした(TT
0608デフォルトの名無しさんNGNG
ジェット機突っ込んで崩れたビルね
0609デフォルトの名無しさんNGNG
別スレに誤爆したろ
0610デフォルトの名無しさんNGNG
>>608
DefWindowProcのことか?
0611デフォルトの名無しさんNGNG
WTC
0612デフォルトの名無しさんNGNG
あー
0613606NGNG
>>609
な、なんのことやら
0614デフォルトの名無しさんNGNG
CDCとかCRectとか便利なクラスが色々入っていていい。
0615デフォルトの名無しさんNGNG
CPointとかCRectはPSDKに入っててもいいような気がする。
0616デフォルトの名無しさんNGNG
>>615
Gdiplus::Rectangle とかあるし。いや、タダのボケ。いいたいことは分かる。
0617デフォルトの名無しさんNGNG
PSDKはあくまでもAPIの提供でCがベースだからな。
CRectとかはATLで提供してるから今更また別個にすることは無いだろう。
0618デフォルトの名無しさんNGNG
COMとかGUIDのサポートは入ってるのに。
0619デフォルトの名無しさんNGNG
>>618
C言語でCOMを使うのは可能ですが。
0620デフォルトの名無しさんNGNG
>>619
それはC言語でRECTを使うのは可能ですが。
って言ってるのと等価ですが何か?

comdef.hとかguiddef.hとか見てみろ。

0621デフォルトの名無しさんNGNG
>>618
GUIDはただの構造体ですが何か?
0622デフォルトの名無しさんNGNG
>Cがベースだからな。
に対して
C++用のサポートコードが入ってるといってるんだ。
いいからcomdefやguiddefを読んで来い。
0623デフォルトの名無しさんNGNG
>>618のカキコから
「C++用のサポートコードが入ってる」と言いたいなんて分かるわけないじゃん。
理由を後付けするな。
0624デフォルトの名無しさんNGNG
>>619
なんで>>618からCでCOMは不可って思考になったのか俺にはわからん
0625デフォルトの名無しさんNGNG
>>623
>>624の言うように、普通はまさかCで使えないなんて思考するとは思わない。
となると、話の流れからCで使えるのは前提として、
C++のサポートが余分に存在している事について言及しているとしか考えようがない。
0626デフォルトの名無しさんNGNG
おまえらWTLと関係無い話をするな
0627デフォルトの名無しさんNGNG
mochituke
0628デフォルトの名無しさんNGNG
とあるWindowのOnPaint処理で

LRESULT CTestView::OnPaint(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/)
{
CPaintDCdc(m_hWnd);

DrawA(dc);
DrawB(dc);

return 0;
}

という風にしているのですが、DrawAで描画している内容は表示されるのに
何故かDrawBで描画している内容が表示されません・・・

試しにDrawAの中身を全てコメントアウトしても同じ結果になってしまいました
またDrawAの呼び出し部分をコメントアウトするとDrawBの描画内容が表示される為
DrawAを呼び出すことで勝手にEndPaintされてしまっているのかと思っているのですが・・・

こういう場合は、DrawBの処理もDrawAに入れてしまうしかないのでしょうか?
0629デフォルトの名無しさんNGNG
>>628
DrawAの宣言はどうなってる?
こんな感じか?

void DrawA(CPaintDC dc);
0630628NGNG
>>629
まさしく、その通りになっております
戻り値voidで、引数がCPaintDCですね
0631デフォルトの名無しさんNGNG
CPaintDC のコピーコンストラクタを調べてみぃ。
0632デフォルトの名無しさんNGNG
参照にしとけばいいんでねーか?
0633デフォルトの名無しさんNGNG
WTL的には、参照よりもCDCHandleかな。
0634デフォルトの名無しさんNGNG
>>631
無いな。
コピーされたら困るのに

private:
CPaintDC(const CPaintDC&);

が無いのはなんでだろう。
0635628NGNG
>>631&632
なるほど、引数でクラスを渡すとスタックに実態がコピーされてコンストラクタ&デストラクタが呼ばれることになるんですね
ぜんぜん仕組みわかってなかったみたいです(T。T

void DrawA(CPaintDC &dc);

参照渡しにしたら無事に動きました
ありがとうございます
0636628NGNG
>>633
参照はWTL的じゃないですか_no
調べてきます
0637デフォルトの名無しさんNGNG
マニアックな慶應義塾大学総合政策学部
ttp://www.google.co.jp/search?q=CreateSimpleToolBarCtrl&ie=UTF-8&hl=ja&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=lang_ja
0638デフォルトの名無しさんNGNG
MFCとは違ってCToolBarCtrlはあるけどCToolBarが無いみたいなんだけど、
メッセージを処理したい場合はどうすべき?
0639デフォルトの名無しさんNGNG
class CToolBar : public CWindowImpl<CToolBar, CToolBarCtrl>
0640名無しさん@そうだ選挙に行こうNGNG
ありがとん
0641デフォルトの名無しさんNGNG
誰も書いてないので、一応。

WTL 7.5.4196.0
http://sourceforge.net/projects/wtl/
0642デフォルトの名無しさんNGNG
>>641
VS.NET 2005にも対応するわけか。
0643デフォルトの名無しさんNGNG
Web全体で「WTL 7.5.4196.0」をぐぐってもほとんど出てこないな。
海外含めてバージョンアップしたことほとんど知られてないんじゃないか。
0644デフォルトの名無しさんNGNG
>>643
いずれこのスレがトップで引っかかるようになったりしたら世も末だな。
0645デフォルトの名無しさんNGNG
>>643
今朝リストで流れた。
0646デフォルトの名無しさんNGNG
本当だ。おせーなおい。
0647デフォルトの名無しさんNGNG
WTLには、MFCのCFileのようなファイル入出力を扱うクラスって、用意されてないんでしょうか?
0648デフォルトの名無しさんNGNG
日本語化はできないの?
0649デフォルトの名無しさんNGNG
>>647
>>ATLにある

>>648
AppWizardは手動で日本語化できる。
0650デフォルトの名無しさんNGNG
_Module無しで、WTLのCStringを使うことは可能でしょうか?

atlmisc.hをインクルード>atlapp.hが必要です>atlbase.hが必要です
>_Moduleがありません…でショボーンとしてます。
0651デフォルトの名無しさんNGNG
>>650
#ifndef __ATLAPP_H__
#error atlmisc.h requires atlapp.h to be included first
#endif
と言うわけで、ヘッダをいじらない限り無理。
0652650NGNG
>>651
アイヤー意外に不便なんですねぇ…
すっきりしました、レスありがとうございました
0653デフォルトの名無しさんNGNG
助けて下さい!ツールバーのボタンを押されている状態にしたいのですが
上手くいきません。これで終わるのに、まさかこんな事で(´Д⊂

ttp://home.att.ne.jp/banana/akatsuki/doc/atlwtl/atlwtl06-07/
こちらの通りにしているだけに、何がまずいかさっぱりです

デバッガで追っても、しっかりatlframe.hにある
UISetCheck(int nID, int nCheck, BOOL bForceUpdate = FALSE)のcase文まで届いています

自分でTB_CHECKBUTTONを送っても駄目なので、
何か根本的なとこ(TBSTYLEとか)を間違ってそうなのですが・・・。
0654デフォルトの名無しさんNGNG
できたけど。
0655デフォルトの名無しさんNGNG
UPDATE_ELEMENT追加してないとかOnIdleでUIUpdateToolBar呼んで無いとか
0656653NGNG
>>654
実行ありです、わずかな疑念も吹っ飛びました(´Д⊂
環境も全く同じなのになぁ、何故かへこんだままでいてくれない

>>655
確認ありです。最終的にこのソースだけ(コピペ)だった事もあり、その辺は大丈夫みたいです。

となると後はリソースの作り方だけですかねぇ。
IDR_MAINFRAMEという名のツールバーを作り、ID_MENUITEM_TOPMOSTという
アイコンを追加しただけなのですが・・・もうダメポ
0657デフォルトの名無しさんNGNG
ソース見せた方が早いかも。
0658デフォルトの名無しさんNGNG
TBSTYLEとか << どう考えてもこれだろ・・・
TBSTATE_ENABLEDを指定しているとか。
0659デフォルトの名無しさんNGNG
UIAddToolBarしてないとか <<どう考えてもこれだろ・・・
0660デフォルトの名無しさんNGNG
コピペしてると書いてるからそのへんは大丈夫だろ。
大丈夫じゃなかったらぶっとばす。
0661デフォルトの名無しさんNGNG
メッセージマップでCUpdateUIにCAINしてないとか
0662デフォルトの名無しさんNGNG
>>653
次の中から適切なものを選べ(複数選択可)。

1. UPDATE_ELEMENT追加してないとか
2. OnIdleでUIUpdateToolBar呼んで無いとか
3. TBSTATE_ENABLEDを指定しているとか
4. UIAddToolBarしてないとか
5. メッセージマップでCUpdateUIにCAINしてないとか
6. ぬるぽ。
0663デフォルトの名無しさんNGNG
まぁぶっちゃけCHAINをCAINと書いてしまった俺だが。
0664デフォルトの名無しさんNGNG
カインメッセージマップ
0665デフォルトの名無しさんNGNG
キャイーン
0666デフォルトの名無しさんNGNG
>>653
で、原因は結局何だったの?
それともまだ解決してない?

こんだけの人が助言してやってんだから
報告くらいしないと撥あたるよ
0667653NGNG
自己解決しまつた。
0668デフォルトの名無しさんNGNG
>で、原因は結局何だったの?
0669デフォルトの名無しさんNGNG
>>668
自我崩壊しまぷう。
0670デフォルトの名無しさんNGNG
ム板にもIDが必要かもしれないな
0671デフォルトの名無しさんNGNG
いや、ぶっちゃけ原因なんてどうでもいいんだけどな。
0672653NGNG
うほっ、まだこの話題とは。騙りまで出てる。
レスくれた方々、すんません。

結局出来ないので、ボタンコントロールで偽ツールバーを作って誤魔化し、
そのままお盆突入してました。適当人生。
0673デフォルトの名無しさんNGNG
>>653
>>662の6項目は確認したか?
0674デフォルトの名無しさんNGNG
WTLって、難しいな
0675デフォルトの名無しさんNGNG
911
0676デフォルトの名無しさんNGNG
ATLのCStringと、WTLのCString、どっちを使ったほうがいいですか?

ATLの方は、CString.Formatが浮動小数点に対応してて便利なんだけど、
atlstr.hをインクルードするとなぜか実行ファイルサイズがめちゃくちゃ大きくなってしまいます。

こっちがお勧め、とかあったら教えてください。
0677デフォルトの名無しさんNGNG
用途に合った方がおすすめ。
0678デフォルトの名無しさんNGNG
ATLを使うと一気に実行ファイルサイズが10倍に?!
0679デフォルトの名無しさんNGNG
C++スレでもATLスレでもないので二重にスレ違い
0680デフォルトの名無しさんNGNG
>>676
両方使えるなら、ATLのほうを使うのが正解。
40KBほど大きくなるという意味なら、我慢しなさいとしか言えない。
それ以上大きくなるなら、何が必要で何が必要でないか一度考えてみたらいいと思う。
少なくともダイエットさせることは可能。
0681デフォルトの名無しさんNGNG
>>679
WTLが比較対象に入ってるんだから構わない
0682デフォルトの名無しさんNGNG
>>683
おまえがスレッド違い。
0683デフォルトの名無しさんNGNG
CreateThread
0684デフォルトの名無しさんNGNG
>>680
> 両方使えるなら、ATLのほうを使うのが正解。

これは何故ですか?
0685デフォルトの名無しさんNGNG
ATL/WTL つーより、_ATL_MIN_CRT の問題だったりしないか?
0686デフォルトの名無しさんNGNG
>>684
>>650-652
0687デフォルトの名無しさんNGNG
>>686
それは_Moduleが必要というだけでATLを使う理由にはなってないと思うが
0688デフォルトの名無しさんNGNG
というか、どうでもいいのでは?
ATL::CStringのないVC6のためにあるようなもんでしょ。
違うの?
0689デフォルトの名無しさんNGNG
>>688
もともとSTLのstring使わせるつもりだったんだよな。
Windowsプログラマには人気高いのかねぇ>CString(MFC)
0690デフォルトの名無しさんNGNG
有名どころのMFC拡張ライブラリがCStringを使いまくっていることが原因かな。
Format()に相当するメソッドがstd::stringに無いのも大きい。
0691デフォルトの名無しさんNGNG
たぶんstd::stringにFormatにあたるのが無いのは文字数を数える_scprintfが標準では無いのも大きい。
0692691NGNG
と思ったけどよくよく考えればstringstreamがあるからか。
0693デフォルトの名無しさんNGNG
boost:Formatが次期標準になるに違いないので問題無い。
0694デフォルトの名無しさんNGNG
C++0x は 200x のうちに出るんだろうか……。
あと、CStringA はマルチバイト対応だけど、
std::string はシングルバイトのみってのもあるかな。
(char_traits でどうにかなるかもしれないけど。)
0695デフォルトの名無しさんNGNG
もともとATLの設計としてなるべくCRTを使わないという前提があったため、
std:stringではなく独自の文字列クラスを作ったんだよ。
0696デフォルトの名無しさんNGNG
#ifdef _UNICODE
#define std:tstring std::string
#else
#define std:tstring std::wstring
#endif

でええやん
0697デフォルトの名無しさんNGNG
>>696
逆だし、それだったら
namespace std
{
typedef std::basic_string<TCHAR> tstring;
}
の方がいいじゃん。
0698デフォルトの名無しさんNGNG
boost:Formatはさらに大きくなるからな
0699デフォルトの名無しさんNGNG
>>679
こいつは普段から人の話を全く聞かない人間なんだろうな。
0700デフォルトの名無しさんNGNG
>>699
どうした。亀レスしてでも言い返したいほど悔しかったのか。
0701デフォルトの名無しさんNGNG
boostを使うと一気に実行ファイルサイズが10倍に?!
0702デフォルトの名無しさんNGNG
>>697
それだとコンストラクタでのXCHAR/YCHAR変換ができないし
Formatもないし、やっぱCStringのが便利だな。
operator PCXCHAR() の存在も、悪いスタイルといいつつ
便利は便利。
Win環境だとSTLは使ってもstd::stringじゃなくCStringT
使ってる人が多いよやっぱ。
0703デフォルトの名無しさんNGNG
>>702
>operator PCXCHAR() の存在も、悪いスタイル

どの辺が悪いスタイルなのよ?よくわからん。
0704デフォルトの名無しさんNGNG
>>703
コンストラクタやキャスト演算子によって、暗黙の型の広がりをあまり
広くするのは、便利ではあるけれど良くないとされる。
プログラマが意図しない変換が発生することもあるから。
std::stringだとそのために、キャスト演算子は用意してないワケでしょ。

ただし、MSのライブラリでは多用されてますね。正直、c_str()は
かなり多用することになるので、キャスト演算子があったほうが
「分かってる人にとっては便利」だと思う。

それともう一つ。CStringTのGetBuffer()も、「汚いけれども便利」
な機能ですね。
0705デフォルトの名無しさんNGNG
>>704
なるほど、確かに。

CString str1="xxxx";
cout << str1 << endl; // ライブラリ依存??

上のように記述した時、coutがstr1の適用方法をvoid*型と判断して、
インスタンスstr1のアドレス16進を表示してしまうコンパイラがあったね。
ある意味、間違ってないけど、不便だった。

string str1="xxxx";
cout << str1 << endl; // 正常に動く

std::stringはこんな不具合は当然ない。キャストなしでも意図したとおりに動く。
0706デフォルトの名無しさんNGNG
>>705
それはCStringもoperator <<(basic_ostream<TCHAR>&, const CStringT&);を用意すればよさそうな気がする。
0707デフォルトの名無しさんNGNG
>>705は偉そうなこと書こうと必死にがんばってる厨房だな
0708676NGNG
みなさん、貴重な情報ありがとうございます。

ファイルサイズの問題は我慢して、これからは素直にATLのCStringを使って生きたいと思います。

ただ、_ATL_MIN_CRTってのが良く分かりませんでした。
これをつけると
LIBC.lib(crt0dat.obj) : error LNK2005: __osplatform は既に atlmincrt.lib(atlinit.obj) で定義されています。
LIBC.lib(crt0.obj) : error LNK2019: 未解決の外部シンボル _main が関数 _mainCRTStartup で参照されました。
になったんですが・・・
0709デフォルトの名無しさんNGNG
付けなきゃイイじゃん。
0710デフォルトの名無しさんNGNG
std::stringのfind系メソッドが使い物にならんことを理解してない奴がいまだいるのか。
0711デフォルトの名無しさんNGNG
どう使い物にならんのかも書けない香具師さえいるしな。
0712デフォルトの名無しさんNGNG
その話はもう終わったことに気づいてない奴がまだいるのか
0713デフォルトの名無しさんNGNG
ここまでの流れでWTLの話が全く出てこないな
0714デフォルトの名無しさんNGNG
>>710
CStringTのTCHAR用のTraitsだと、_tcs系の(MB対応済みの)関数が
使われるからね。ま、それだけでマルチバイト文字の問題全てが
解決する訳では全くないがな。

そういう意味でもstd::basic_string<TCHAR, ...>じゃ
何の解決のもならないワケだ。
0715デフォルトの名無しさんNGNG
だから全部Unicodeで書けばすぐ解決すんだろ藻前裸帰れよここはWTLスレなんだよ。
0716デフォルトの名無しさんNGNG
>>715
COMは(つかBSTRは)WCSだし
NT系OS仮定していいんなら明示的にW版のAPI使えばいいんだけど、
MFCだのATLだのWTLだののレイヤは、ぜんぶTCHARベースだからねえ
ま、UNICODEをdefineするのが前提なら、そんでも構わないけどさ

今のところは、TCHARベースで、COMとやりとりする場所でBSTRとの
変換が発生するというのが普通のスタイルなんじゃないの。
0717デフォルトの名無しさんNGNG
>>714
MB対応の関数は_mbs系だアホ。
TCHARはwchar_tとcharを切り替えるだけでマルチバイトの問題は放置だし。
0718デフォルトの名無しさんNGNG
std::string 系は標準と思えないくらい使いにくい
・・・と思うのは俺だけ?
.c_str() とかかっこわる

あと UNICODE との置き換えとかな

せっかくだから WTL の話題・・・。

CFile とかの派生に EUC、SJIS、UTF-8、UNICODE を意識しないで
使えるファイルクラスがあるといいのに。
LineRead とかあれば文句ないんだが・・・。

自分で書くか・・・
つか誰か作ってるっしょ?
0719デフォルトの名無しさんNGNG
>>718
> あと UNICODE との置き換えとかな
std::wstring 使う、って話じゃなくて?
0720デフォルトの名無しさんNGNG
>>718
文字列をstd::stringではなく、char*だと思っているから使いづらいだけだろ?
0721デフォルトの名無しさんNGNG
>>717
tchar.hは#ifdef _MBCSでも切り替えていますが何か。
0722デフォルトの名無しさんNGNG
stringに置き換えくらい標準で付けてくれればいいのにな。
全て置き換えとかしたかったら面倒なコード書かなきゃ逝けないし。
0723デフォルトの名無しさんNGNG
相変わらずWTLについては誰も話してないな。
まあ誰もまともには使ってないんだろうな。
結局すげえ面倒だし、サイズが小さくなる分
windowsx.h自分でラップして使った方がマシだし。
0724デフォルトの名無しさんNGNG
WTLの話題と言いつつATLの話してる>>718とかな
0725デフォルトの名無しさんNGNG
>>723
( ´∀`) <○○○○ー
0726デフォルトの名無しさんNGNG
>>723
オレオレ、WTL使ったやつ納品してるぞ。
0727デフォルトの名無しさんNGNG
WTLにCFileなんて無いよね?
>>718って頭おかしいの?
0728デフォルトの名無しさんNGNG
二度も言わないで良いよ
0729デフォルトの名無しさんNGNG
そういえば最近はMFCで組むときでも
CFileよりもCAtlFileを使うようになってきたなぁ。
0730デフォルトの名無しさんNGNG
WTLにCAtlFileなんて無いよ
0731デフォルトの名無しさんNGNG
>>723
そんな事もないんじゃないか?
いったんMFCで大ざっぱに作ってから、
WTLにコンバートするってのもアリだと思うけど。
0732デフォルトの名無しさんNGNG
>>730
だれもWTLにあるなんていってないよ
0733デフォルトの名無しさんNGNG
ならスレ違いだよ
ATL 相談室
http://pc5.2ch.net/test/read.cgi/tech/1029029882/
0734デフォルトの名無しさんNGNG
ATLスレって次スレ作るんだろうか。
0735デフォルトの名無しさんNGNG
WTLってヘッダファイル見れば構造丸分かりジャン
必要なものだけ自分のプログラムにぱくればウマーなんじゃないの?

例えばウインドウの出し方とか
0736デフォルトの名無しさんNGNG
ATLとWTLの違いはなに?
0737デフォルトの名無しさんNGNG
一文字目
0738デフォルトの名無しさんNGNG
>>735
Window出す所はATL使ってる
0739デフォルトの名無しさんNGNG
>>737
天才
0740デフォルトの名無しさんNGNG
>>735
そのまま使えるものを、わざわざ手間暇かけて劣化コピーを作ることも
ないっしょ。
0741676NGNG
調べてみてもいまいち良く分からなかったのですが、
_ATL_MIN_CRT を付ける目的、メリット、デメリットは何ですか?
なんとなく _WTL_NO_CSTRINGと相性がよくない気がします・・・

質問の流れで直接WTLとは関係ない話になってしまって申し訳ないです。
0742デフォルトの名無しさんNGNG
名前のとおりじゃん。CRTをできるだけ使わないようにする。
0743デフォルトの名無しさんNGNG
つまり液晶を使うってことだな。
0744デフォルトの名無しさんNGNG
おじさんつまんなーい。
0745デフォルトの名無しさんNGNG
以下WTLの話題でよろしく
0746デフォルトの名無しさんNGNG
ところでおまいらどのバージョンのWTL使ってるよ。
最新のか?
0747デフォルトの名無しさんNGNG
うん
0748デフォルトの名無しさんNGNG
最新のだとVC6用のインストーラがついてこないんだよね
0749デフォルトの名無しさんNGNG
AppWizardね
0750デフォルトの名無しさんNGNG
ところでおまいらWTLってどこで知ったよ?
0751デフォルトの名無しさんNGNG
Donut
0752デフォルトの名無しさんNGNG
インターネット
0753デフォルトの名無しさんNGNG
モニタの前
0754デフォルトの名無しさんNGNG
紙メディアではまったく紹介されていないということがわかった。
0755デフォルトの名無しさんNGNG
俺は2chのどこかのスレでWTLという単語を見て自分で検索した気がする。
0756デフォルトの名無しさんNGNG
DONUT
0757デフォルトの名無しさんNGNG
ミスド
0758デフォルトの名無しさんNGNG
ReBarくらいは参考になるね
0759デフォルトの名無しさんNGNG
暇な方、ちょっとこれ落として試して頂けないでしょうか。
ttp://49uper.com:8080/img-s/6011.zip

ダイアログベースで、ラジオボタンが2つあるだけの物なのですが、
ボタンを押してないのに、いきなりOnHoge()が呼ばれてしまいます。

ここまで分からないのは初めてです…。たぶんつまらない事だとは思いますが。
環境はVC6とWTL7.1です。
0760デフォルトの名無しさんNGNG
すいません、アップローダが流れるかもなのでageます
0761デフォルトの名無しさんNGNG
ウィルス
0762デフォルトの名無しさんNGNG
>>759
ウィルスをアップしないでください
0763718NGNG
>>724 >>727
ごめんなさい
0764デフォルトの名無しさんNGNG
>>765
ウィルスちゃうやん。ぼけ
0765デフォルトの名無しさんNGNG
puts("Hello, world!");
0766デフォルトの名無しさんNGNG
>>759
なんだろう、不思議だね
WTLのバグ?
0767718NGNG
>>759

二つとも BS_AUTO3STATE つけてるから、初期表示状態でどちらかが
押された状態にならないといけないから、windows が勝手に値をセット
したために、イベントが呼ばれているんじゃないかな?
0768718NGNG
と思ったら違うかも、ごめん。
ボタンもう一個追加したのに HOGE2 が呼ばれるなぁ・・・
0769759NGNG
ぐぁ、すいません、プロセスが残っちゃってますね。
MessageBoxをコメントアウトして、代わりにブレイクでもかけてもらえれば…

>>766-768
お二人ともレスありがとうございます、なんとも不思議で…

BS_AUTO3STATEは大正解かも!
それを伺ってBS_AUTORADIOBUTTON辺りかなと、
今試しにWTLのWizardがはいたコードに、似たようなラジオボタンを配置したら
しかしBS_AUTORADIOBUTTON付いてても問題も無く動きますねぇ…

ちなみに>>759は、かなり大きなプロジェクトから削っていった物なんです
BS_AUTO3STATEのヒントのおかげで、何となく分かってきたなぁ…やっぱりリソースですね
0770759NGNG
759のリソースだとBS_AUTORADIOBUTTONを削れば、最初にメッセージは来ない
普通のリソースなら、BS_AUTORADIOBUTTONが付いていても、メッセージは来ない

ラジオボタンのリソースがCONTROL "",ID,"Button"型ではなく、
RADIOBUTTON型だと、BS_AUTORADIOBUTTONを削ってもメッセージが来てしまう?

分かったような分からないような…しかしとりあえず動いてホッとしてます
改めてレス感謝、ありがとうございました
0771718NGNG
>>759

LRESULT OnHoge2(WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL& /*bHandled*/){
ATLTRACE(_T("%d %d %d\n"), wNotifyCode, wID, hWndCtl);
//MessageBox( "何故かこれがいきなり 呼ばれてしまう", "???", MB_OK );
return 0;
}

こういう風に変えてトレースを見るようにすると一回しか来ない。
値は 0 1002 460106 だったんだけど、

ダイアログって最初にフォーカス当てるようになってるから
そのイベントが来てるんじゃないかな。

と思って検証
検証1:
ボタンを追加してみた。
結果1:
ボタンにフォーカスが移りメッセージボックスは出ない
このときフォーカスはボタンにある<ここがミソ?

検証2:
OnInitDialog で FALSE を返してみる
結果2:
だめぽ
0772デフォルトの名無しさんNGNG
>>771
そ、そうかなるほど!フォーカス分でしたか
本当だ、タブオーダー変えたら今度はOnHoge1になりました

仰るとおりでFALSE返してもアクティブになっちゃいますねぇ
今後は大人しくBN_PUSHEDとかで捕まえておきます

いやおかげでぐっすり眠れそうです、ありがとうございました!
0773718NGNG
いや、僕もちゃんとわかっているわけではないので、
本当の理由というかダイアログの仕組みを詳しく知っている人が
いたらフォローしていただけると幸いです。


ちなみに、CDialogImplBaseT< TBase >::DialogProc で
送られてくるメッセージを観察してみると

WM_SETFONT
WM_INITDIALOG
WM_SHOWWINDOW
WM_WINDOWPOSCHANGING
WM_ACTIVATEAPP
WM_NCACTIVATE
WM_GETTEXT
WM_GETICON
WM_GETICON
WM_GETICON
WM_GETTEXT
WM_ACTIVATE
WM_IME_SETCONTEXT
WM_IME_NOTIFY
WM_SETFOCUS
WM_KILLFOCUS
WM_IME_SETCONTEXT
WM_COMMAND     <これが該当のコマンド

ってなってました。

0774デフォルトの名無しさんNGNG
WTLの話じゃないかもしれんが質問。
リストビューにシステムのイメージリストを関連付けるとCFolderDialogで表示されるファイルアイコンの背景色が黒になるんよ。
リストビューでの関連付けをしないようにすると普通に表示されるんだけど。
誰か原因を教えておくれ。
0775774NGNG
ttp://up.isp.2ch.net/up/5c440a70c844.jpg
こんな感じ。
0776デフォルトの名無しさんNGNG
>>774
該当部分のソースを書いてみろよ
0777676NGNG
余計なメッセージは反射しちゃいけない。
0778774NGNG
void Init()
{
  T* pT = static_cast<T*>(this);
  SHFILEINFO sfi;
  HIMAGELIST himl = (HIMAGELIST)::SHGetFileInfo(_T(""), 0, &sfi, sizeof(SHFILEINFO), SHGFI_SYSICONINDEX | SHGFI_SMALLICON);
  SetImageList(himl, LVSIL_SMALL);

  pT->AddColmuns();
}
リストビューの初期化部分。
SHGFI_SMALLICONをSHGFI_LARGEICONにすると大丈夫なんだけどねぇ。
0779デフォルトの名無しさんNGNG
そのとおりにイメージリストをセットしてみたけどちゃんと透明になってる。
原因は他の部分だ。
0780デフォルトの名無しさんNGNG
78.0%憶測で言うけど、リストビューのスタイルにLVS_SHAREIMAGELISTSがないとかは?
0781デフォルトの名無しさんNGNG
PC再起動したら直ったりして。
ディスプレイの解像度を何度か切り換えたらエクスプローラのフォルダツリーのアイコン背景が黒くなったことがある。
そのとき再起動したら直った。
0782デフォルトの名無しさんNGNG
>>780
その78.0%ってのは、スレ番が780だからなのかな。
0783774NGNG
>>779
メインフレームに直置きしたら大丈夫っぽいんでどうやら親ウィンドウが原因みたい。

>>780
22.0%の確率でLVS_SHAREIMAGELISTSは付いてます。

>>781
何度再起動してもいかんのですよ。再起動しなくても他のプロジェクトのは普通に動いてるし。

どうもリストビューを置いてる親ウィンドウが悪さしてるみたいなんでいろいろ弄ってみます。
0784774NGNG
自己解決。
どうやら自作リストビューのOnCreate内でInitを呼び出したのが原因のようで。
作り終わってからInitを呼び出すと大丈夫みたい。

LRESULT OnCreate(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
{
  Init();
  return DefWindowProc(uMsg, wParam, lParam);
}
Init();をコメントアウトしたらOKでした。

アドバイスしてくれた皆様ありがとう。
0785デフォルトの名無しさんNGNG
OnCreateではDefWindowProc();を呼び出してから処理をするのが定石じゃんか・・・
0786774NGNG
>>785
そうなんか…知らんかった…
0787デフォルトの名無しさんNGNG
WTL付属サンプルのMTPadのview.h見てみ。
OnCreateの最初で読んでるから。
ドキュメントの少ないWTLはサンプルも貴重なドキュメントだ。
0788774NGNG
>>787
ははあ、スーパークラス化したウィンドウは先にDefWindowProc呼び出すんか。
サンクス。
0789デフォルトの名無しさんNGNG
stdafx.h内で
#define _RICHEDIT_VER 0x0200
としてRichEdit2.0を使用しています。

WinXP/2000環境では何ら問題ないのですが、
Win98環境ではCRichEditCtrlのCreate()でクラッシュしていまいます。

WTLはWin98のサポートはしてないんでしょうか?

WTL 7.5を使用してます。
0790デフォルトの名無しさんNGNG
>>789
そこまで、クラッシュ発生条件が絞り込めているなら、
解決策は自力のソースの解析で出すべきでしょう。
とはいえ、Win9xでIDEデバッグする行為自体が大変でしょうけど・・・。
0791789NGNG
>>790
>とはいえ、Win9xでIDEデバッグする行為自体が大変でしょうけど・・・。
そうなんですよ。
Win98にDebug環境を入れりゃいいんだけど同じ経験した人いるかなーと
思って質問したわけです。

だってソースは #define _RICHEDIT_VER 0x0200 この部分しか修正してないのに、
Win98で動かないなんて士気下がりまくり(;´Д`)
0792デフォルトの名無しさんNGNG
今時Win9xをサポートする意味がわからんが
0793デフォルトの名無しさんNGNG
>>792
それを言っても仕方ないでしょ。仕事でどうしても既存のマシン使うことが
要求されてるのかもしれんし。
0794デフォルトの名無しさんNGNG
>>790
そこでリモートデバッガの登場ですよ。
0795デフォルトの名無しさんNGNG
>>789
RICHED20.DLLは?
0796デフォルトの名無しさんNGNG
リビルドしる
0797789NGNG
>今時Win9xをサポートする意味がわからんが
そんな時代になっちまったか(´・ω・`)
でもまだWin98はギリギリサポートするのが普通じゃないの?

>>795
Win98にはRICHED32.dllしか入ってなかったよ。
…てなオチならいいんだけど、ちゃんと入ってる。バージョンはXPの物より低いけど。
XP付属のDLLなら問題なく動くんだよなぁ。最悪のケースはXP付属のDLLを同梱か…。

もうちょっと調べてみますわ。
0798デフォルトの名無しさんNGNG
98使うくらいなら普通にNT4.0入れるだろ
あくまでも業務なんだし
0799デフォルトの名無しさんNGNG
そんなWTLに関係無い話どうでもいい。
0800デフォルトの名無しさんNGNG
>>797
Createの引数は具体的に何を渡してる?
0801デフォルトの名無しさんNGNG
IEのバージョンが古いというオチでは?
0802デフォルトの名無しさんNGNG
>>797
Win98と2k以降のRICHED32.dllってかなり仕様が違ってた気がするが。
同じ動作はあまり期待できなかったと思う。
0803デフォルトの名無しさんNGNG
>>802
だから2.0だって・・・
0804789NGNG
>>800
Create( m_hWnd, rcDefault, NULL,
     WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | WS_HSCROLL |
     WS_VSCROLL | ES_AUTOHSCROLL | ES_AUTOVSCROLL | ES_MULTILINE | ES_NOHIDESEL | ES_SAVESEL,
     WS_EX_CLIENTEDGE);
こんな感じです。特に変わった事はしてません。

ウィザードでview windowにRichEditを選択し、、
#define _RICHEDIT_VER 0x0200 ここを修正しただけのプロジェクトをビルドした物でも
不具合が出るEXEが再現出来ますね。
0805789NGNG
>>801
ええ、いろいろ疑ってWindowsUpdateしたんですが変わらないですね。

>>802
RichEdit1.0(RICHED32.dll)ならWin98/Me/2000/XPで動く事は確認しました。
仕様が違っても最低限動作する互換性くらいはあるんじゃないの?わかんないけど。

後はCreateWindowEx()呼んで自前でRichEdit作るって手もあるんだが。
ソース見ればCrichEditCtrl自体はそんな複雑な事してないようだし。
0806718NGNG
>>789
Create でちゃんと作れてるの?
ウィンドウ(リッチエディット)が作成されてないのに
メンバよんでるだけとか?

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/platform/commctls/richedit/richeditcontrols/aboutricheditcontrols.asp

ここみると、

Creating a Rich Edit Control
To create a rich edit control, call the CreateWindowEx function,
specifying the rich edit window class. If you are using
Rich Edit 1.0 (Riched32.dll), specify RichEdit for the window
class parameter. If you are using Rich Edit 2.0 or later
(Riched20.dll), specify RICHEDIT_CLASS for the window class
parameter.

って書いてるけど、

#define _RICHEDIT_VER 0x0200

じゃなくて、RICHEDIT_CLASS を WNDCLASS に指定しないと
いけないんじゃないの?

試してないので sage


0807デフォルトの名無しさんNGNG
>>806
>>789にCreateでクラッシュと書いてるからウィンドウを作ること自体ができてないと思うが
0808789NGNG
>>806
Create()内で落ちるのでメンバ呼ぶ以前の問題ですね。
ええと #define _RICHEDIT_VER 0x0200 が定義されると
ウィンドウクラスにRICHEDIT_CLASSが登録されるようになるみたいです。
現にXPでは上記の方法で2.0のRichEditが使用可能になります。

憶測ですがCRichEditCtrlは問題ないと思います。
CRichEditCtrlが呼び出すベースクラス(CFrameWindowImpl辺り)かもっと深い所にある
ATLで問題が発生していると思ってます。
今、リモートデバッガを入れてる途中なので終わったらデバッグプロセスを走らせてみます。
0809789NGNG
リモートデバッガ入れたらRICHED20.DLLが置き換わったらしく、
問題のEXEが問題なく起動してしまいました。事実は闇の中状態です。
RICHED20.DLL(ver5.0) N.G.
RICHED20.DLL(ver5.3) O.K.
もう面倒だから後者のDLLを同梱するかな…。
0810デフォルトの名無しさんNGNG
ぽかーん・・・・
0811718NGNG
>>807,808

あら、よく読んでなくてごめん。

直接の解決策ではないとおもうけど、こんなの見つけた

http://support.microsoft.com/default.aspx?scid=kb;ja;290234

Office でも同様の問題が起こっているみたいで、こっちは
Windows Installer と一緒に? Riched20.dll(Ver5.3)を
配布しているみたいだなぁ。

5.0 環境は 5.3 にあげざるを得ないってことか?
0812718NGNG
おまけ

XP SP2 でさらにバージョンがあがる模様

http://support.microsoft.com/default.aspx?scid=kb;en-us;841383
0813デフォルトの名無しさんNGNG
WTLの問題なのかどうかも怪しくなってきたな
0814789NGNG
>>718
情報ありがとう。
そう言えばWindows Installer 2.0もインストールしたなぁ。
こいつが新しいDLL入れるみたいですね。

>>813
いやそれがRichEdit2.0を利用してると思われる他のソフト(多分MFC)は古いDLLでも動いてたんで、
WTL(ATL)が何か特別な事してて落ちてるのかなーと思ったんです。
実際、CreateWindow()でコントロール作ると問題ない訳ですから。

腑に落ちないがインストールする時にDLLのバージョンを確認して古いバージョンの場合は
新しいDLLをインストールする様な方向で何とかしようと思ってます。
0815デフォルトの名無しさんNGNG
勝手に配布しても問題のないDLLなのか?
ちゃんと確認した?
0816718NGNG
Windows Installer は配布可能だから、単体で Riched20.dl を
配るのではなくて、Installer を使おうようにすればいいんじゃないかな
0817デフォルトの名無しさんNGNG
なぁ、話の流れと関係無いなら名前にレス番書くのやめないか。
読んでて話の流れがわかりにくい。
0818デフォルトの名無しさんNGNG
VS2005ベータでWTL使ってみた奴いる?
0819デフォルトの名無しさんNGNG
あげておこう
0820デフォルトの名無しさんNGNG
>>819
お前がageるたびに俺がsageてやる!
0821デフォルトの名無しさんNGNG
sageって書いても上がらないだけで下がるわけではないのだが
頭悪すぎ
0822デフォルトの名無しさんNGNG
とネタにマジレスする頭悪すぎの奴
0823デフォルトの名無しさんNGNG
保守派!
0824デフォルトの名無しさんNGNG
FileVisor6がWTLベースだって
http://www.lightship.co.jp/FileVisor6/help/overview/newfeature.htm
0825デフォルトの名無しさんNGNG
WTL製アプリを納品してるとか言ってた奴の宣伝か。
0826デフォルトの名無しさんNGNG
>>825 ( ゚д゚)ポカーン
0827デフォルトの名無しさんNGNG
WTLなんか使わないけど
ヘッダファイル読めば構造丸分かりだから
OfficeXP風メニューの作り方とかぱくれてウマー
0828デフォルトの名無しさんNGNG
>>735と同じ奴だな。
0829デフォルトの名無しさんNGNG
そらか・・・
0830デフォルトの名無しさんNGNG
>>828
要するにこのスレには昔から同じ数人しかいない
0831デフォルトの名無しさんNGNG
>>825

どうしてそういう発想しかできないんだ?
字汚いくせに
0832デフォルトの名無しさんNGNG
まったりしようや

>>827

じゃあ、Office2003 風の Look&Feel もおながいします。

漏れ的には、OfficeXP(現 .NET 2003 風)のほうが好きなんだが、
.NET 2005 は Office 2003 風になるよね・・・
0833デフォルトの名無しさんNGNG
>>828
>>813と同じやつだな
0834デフォルトの名無しさんNGNG
>>824
それたまたまYahooのニュースで見つけたけど
http://headlines.yahoo.co.jp/hl?a=20040901-00000029-imp-sci

「Longhornにも対応するというシェアウェアで」って・・・
まるでWTLがWinFXを使ってるような書き方というか、
そもそもいくらLonghornでWin32アプリが動くというニュースが流れてるからといって、
動作確認もやってないはずの現時点でLonghorn対応とするのはどうなんだろうか。
0835デフォルトの名無しさんNGNG
「対応している」ではなくて、「対応する」なんだから
Longhornが出たらメジャーバージョンアップを要求せずに
きっちり対応してくれるって事じゃないの?
0836デフォルトの名無しさんNGNG
「Windows 2000/XP/Server 2003のほかLonghornにも対応するというシェアウェア」
という文脈で、Win2000やXPと同列に書いてるから今現在対応してるという意味にとるのが普通だと思う。
0837デフォルトの名無しさんNGNG
http://www.lightship.co.jp/FileVisor6/index.html
の動作環境にもLonghornが入ってるよ・・・
0838デフォルトの名無しさんNGNG
今出てるLonghornのβ版で動作確認したって意味じゃないのかな
0839デフォルトの名無しさんNGNG
>>838
普通に考えてそうだよね。
0840デフォルトの名無しさんNGNG
ベータはまだ出てなかったような。
0841デフォルトの名無しさんNGNG
そういえば、WTL に XP SP2 のセキュリティの影響とか
ありましたか?体験した人教えてほしいです。
(サンクとか)
0842デフォルトの名無しさんNGNG
WTLって単なるHファイルの集合体なわけでしょ?
しかも、平文テキストで暗号化なんかもされて無いし
ヘッダファイル読めばクラスの構造とか丸分かりだから
ウインドウ出したりボタンの作り方とかぱくれてウマー
0843デフォルトの名無しさんNGNG
>>842
おまえはもういいよハゲ
0844デフォルトの名無しさんNGNG
>>841
ここで聞いても該当者はいないっぽいなぁ。
CPUがNXに対応してて、かつXP SP2を入れてて、かつATL3.1製アプリを動かした場合の話だから。
0845デフォルトの名無しさんNGNG
仮にSP2で問題が起こったとしても、WTLのせいじゃないだろう。
薄いラッパにすぎないWTLには一切の責任がないと思うし、
問題が起きるようであればATL・MFCでもWTL以上の深刻さで大量発生しているはず。
0846デフォルトの名無しさんNGNG
そうだよ。ATLの話だよ。
聞いた話ではATL3.1では問題があるが、最新の7.1では修正されてるらしいんだけど実際どうなのかな。
NX対応CPU(または64bitCPU)ユーザのスレとかあるんだろうか。
まぁあったとして「このATL3.1製HelloWorldを実行してみてくれ」と頼んでも怪しんで試してくれないか。
0847デフォルトの名無しさんNGNG
ATL3.0のサンクがSP2のDEP機能で引っかかるという疑惑について、下のスレの住人にテストしてもらった。

Athlon64買いました。とってもキビキビですpart11
http://pc5.2ch.net/test/read.cgi/jisaku/1094220209/

結果は全然問題無いみたい。ATL3.0プログラムでも普通に動いたって。

参考:DEP機能について↓
http://www.atmarkit.co.jp/fsys/kaisetsu/045dep/dep.html
0848デフォルトの名無しさんNGNG
一応↑のまとめページ。
http://www.geocities.co.jp/Beautycare/4965/public/deptest/
0849デフォルトの名無しさんNGNG
ってゆーか
APIの勉強くらいMFCのソースコードでも出来るだろ
0850デフォルトの名無しさんNGNG
>>849 ( ゚д゚)ポカーン
0851デフォルトの名無しさんNGNG
☠
0852デフォルトの名無しさんNGNG
久々に電波発言を見た。
0853デフォルトの名無しさんNGNG
>>852
え?

あながち間違ってないでしょ、>>849は。
MFCのソース解析さえできない無能な方でつか?
MFCの問題は、ソース解析できるが安易に手がつけられないことであり、
ソース解析ができないことなどではない。
その点が理解できてない初心者が多いようだね。
0854デフォルトの名無しさんNGNG
ネタにマジレス、それを窘められて逆ギレ……
0855デフォルトの名無しさんNGNG
まぁなんというか、MFCは ス レ 違 い
0856デフォルトの名無しさんNGNG
>>854=>>852
無能PG、乙。
恥をかきそうになったらネタ扱いして「逃げ」ですか。
0857デフォルトの名無しさんNGNG
ATL/WTLじゃなくてもソースは付いてるって事でしょ。
で、読めばAPIの使い方くらいは勉強になると
0858デフォルトの名無しさんNGNG
だれもAPIを勉強するなんて話はしてないし、
MFCはスレ違いなのに、
何の脈略もなく>>849みたいなこと言ってるから電波だと言われるんだ。
0859デフォルトの名無しさんNGNG
>>849
誤爆かと思ってたんだけど違うのか?
0860デフォルトの名無しさんNGNG
引き続きレスしてるから誤爆ではないと思われるが・・・
0861デフォルトの名無しさんNGNG
>>856なんかもう見てらんないな。己を恥じて欲しいよ。
0862デフォルトの名無しさんNGNG





                釣 り で し た 
0863841NGNG
>>844-847

おお、別板で聞き込みまで、ありがとうございました。
安心して使えます。
0864デフォルトの名無しさんNGNG
あげてみるか
0865デフォルトの名無しさんNGNG
WTL本マダー?
0866デフォルトの名無しさんNGNG
WTL の何をしりたいのさ
0867デフォルトの名無しさんNGNG
俺が知らないこと
0868デフォルトの名無しさんNGNG
「無知の知」って奴ですな。
0869デフォルトの名無しさんNGNG
微妙に違う気がする
0870デフォルトの名無しさんNGNG
ATLインターナルは改訂版出ないのかな。
0871デフォルトの名無しさんNGNG
コマンドバーのボタンを押し下げた状態にしたいんですが、
どうすればいいのでしょうか?
0872デフォルトの名無しさんNGNG
マウスでボタンを押しつづける
0873デフォルトの名無しさんNGNG
>>871
そんなアプリ見たこと無い。どんな時にやるのよ?
0874デフォルトの名無しさんNGNG
DEPに引っかかるのは、そのソフトがillegalな処理してるだけじゃん
昔あったNTで動かないソフトと同じで、非推薦のAPI使ったり。
勝手にハード叩いたり
0875デフォルトの名無しさんNGNG
>>874
illegalとlegalはどうやって見分けるんだ?
thunkの疑惑は、そのままでは実行禁止とされているスタックやヒープ領域に
thunk codeを生成しているATLはどうなるんだと言うところから始まっているだけだが。
0876871NGNG
すんません。説明がわかりにくかったみたいですね。
押し下げた状態ってのはBSTATE_PRESSED??の状態で、
OpenJaneのオンライン/オフラインを切り替えるボタンみたいなスタイルです。

こういうデフォルト以外の動作をさせたい場合などは、
自前でCreateWindoew()したものをAddSimpleReBarBand()で突っ込むんでしょうか?
0877デフォルトの名無しさんNGNG
>>876
ツールバーの使い方調べてみろ
0878デフォルトの名無しさんNGNG
>>876
それならOpenJaneと同じくツールバーでやるべきだと思うが。
0879871NGNG
HWND hWndToolBar = CreateSimpleToolBarCtrl(m_hWnd, IDR_MAINFRAME, FALSE, ATL_SIMPLE_TOOLBAR_PANE_STYLE);
AddSimpleReBarBand(hWndToolBar, NULL, TRUE);
こんな感じで追加したツールバー上のボタンをTBSTATE_PRESSED状態にしたいのですが、
TBBUTTON構造体って直接は取得出来ませんよね?

あーなんだか自己解決したみたいです。
CToolBarCtrl bar = m_hWndToolBar;
これでbar.GetButtonInfo()/bar.SetButtonInfo()すればいいんですね。
0880デフォルトの名無しさんNGNG
>>653と同じ質問だったのか
0881デフォルトの名無しさんNGNG
最初はコマンドバーと言ってたのに本当はツールバーか・・・
0882871NGNG
>>880
そのようで…。

>>881
いやーコマンドバーってのをIEスタイルのメニューバー+ツールバーの総称だと思ってたんで、
コマンドバーのボタン=ツールバー上のボタンと認識してました。
これが混乱を招いてたのですね。

何にせよWTLらヴですよ。
0883デフォルトの名無しさんNGNG
普通はUISetCheckとか使うと思うけど解決したならそれでいいや。
0884882NGNG
>>883
BEGIN_UPDATE_UI_MAP(CMainFrame)
 UPDATE_ELEMENT(ID_MENU1, UPDUI_MENUPOPUP | UPDUI_TOOLBAR
END_UPDATE_UI_MAP()

UISetCheck(ID_MENU, 1);
あーこっちのが全然楽っすねー。

ボタンに対してTBSTYLE_CHECKスタイルを設定しないとダメなんかと思ってたら、
設定しなくても大丈夫なんですね。
助言ありがとうです。
0885デフォルトの名無しさんNGNG
ツールバーを解決できなかったのは>>653だけか・・・
いったいどんなコード書いてるんだ・・・
0886デフォルトの名無しさんNGNG
>>664
もっと楽な方法があるぞ。
toolBar.Buttons[0].Checked = true;
0887デフォルトの名無しさんNGNG
それは何の話だ?
0888デフォルトの名無しさんNGNG
>>886
それはボタンの見た目を自動的に更新してくれないんじゃないか?
0889884NGNG
ツールバー絡みでまた質問させてください。

CreateSimpleToolBarCtrlで作成したツールバーにコンボボックスを追加したいと思ってます。
ですがCToolBarCtrlではTBBUTTONで設定したボタンの形状しか受け付けませんよね?
ReBarのバントに子ウィンドウとしてコンボボックスを追加する事は出来ますが、
そうするとボタンが乗ったツールバーを置く事ができません。
(REBARBANDINFO::hwndChild)

ツールバーとコンボボックスを載せたウィンドウをReBarのhwndChildに設定したりしなければ、
混在は不可能なんでしょうか?
通常はどのような形態でツールバーとコンボボックスを一つのReBarのバンドに収めるんでしょうか?
0890デフォルトの名無しさんNGNG
普通は独自のツールバーを作ってその中でコンボボックスをCreateすると思う。
0891デフォルトの名無しさんNGNG
>>889
まずは厨房>>890を無視することから始める。
次に、乗せたいコンボボックスの幅と等しい幅を持ったセパレータをツールバーに追加する。
そして、追加したセパレータの外形に重なる位置にコンボボックスを作成すれば出来上がり。

注意点としては、
コンボボックスの高さだけはセパレータに合わせずにドロップダウンを考慮すること、
ツールバーの折り返し(TBSTYLE_WRAPABLE)は禁止しておくこと。

検索すればすぐ見つかるが、必要最低限のコードの例。
この例ではSDKだが、WTLでも.NETでも手順は全く一緒。
ttp://www.alpha-net.ne.jp/users2/junchoon/tips016.html
0892889NGNG
>>890
同じような事を考えてました。これだと結構面倒ですよねぇ。

>>891
ダミーのセパレータを置くんですね。
でもこれってバンドを動かされたらコンボボックスは自前で
MoveWindow()させないとますいんですかね。
今からちょっと出かけるんで帰ってきたらコーディングしてみます。
ありがとうございました。
0893デフォルトの名無しさんNGNG
>>891
それ>>890と同じこと言ってるぞ。
0894デフォルトの名無しさんNGNG
じゃあ891も厨房か・・・
0895デフォルトの名無しさんNGNG
>>892
ツールバーの子として作るんだから、ツールバーの動きに追従するよ。
ただ、コンボボックスのnotifyメッセージとかが全部ツールバーに行くから、
それを補足したければツールバーをサブクラス化するしかない。
0896デフォルトの名無しさんNGNG
>>893
>>891のやり方は、独自ではなく標準のツールバーを作っている。
0897デフォルトの名無しさんNGNG
>>896
・・・は?
>>889で言ってるCreateSimpleToolBarCtrlで作ったツールバーじゃなくて、
自分でCToolBarCtrlの派生クラス作れって意味だろ。<独自のツールバー
そもそも標準のツールバーって何よ。
コモンコントロールのツールバーを元にするのは当たり前だ。
0898デフォルトの名無しさんNGNG
>>897
そうか?
俺は>>891がコモンコントロールのツールバーみたいな動作をする
ウィンドウを自作しろと言っているように受け取ったがな。
0899デフォルトの名無しさんNGNG
>まずは厨房>>890を無視することから始める。

みたいな事平気で書く奴こそ厨房だと思うが
技術の話とも関係ないし
0900デフォルトの名無しさんNGNG
>>890にはっきり「ツールバーを作って」と書いてるのに、
なんでツールバーみたいな動作をするウィンドウを連想するんだ。
0901デフォルトの名無しさんNGNG
「独自のツールバーを作って」と言ってる。
ToolbarWindow32のインスタンスとは一言も言っていない。
都合のいいように編集して自己弁護しなくてよろし。
0902デフォルトの名無しさんNGNG
だから「独自のウィンドウ」じゃなくて「独自のツールバー」なんだから、
ツールバーに決まってるだろ、っつーかSDKならまだしもWTLスレだぞ。
常識で考えてCToolBarCtrlの派生だろーが。
0903デフォルトの名無しさんNGNG
全部ウインドウでしょ
0904デフォルトの名無しさんNGNG
どっちもどっちって感じだな。
0905デフォルトの名無しさんNGNG
>>902
なんで決まってるんですか?
ボタンを並べただけのオリジナルのバーをツールバーと呼んではいけないんですか?
0906デフォルトの名無しさんNGNG
>>898の言ってることも好意的に解釈すると同じことだな。

class CMyToolbar : public CWindowImpl<CMyToolbar, CToolBarCtrl>
{
public:
DECLARE_WND_SUPERCLASS(_T("MyToolbar"), CToolBarCtrl::GetWndClassName())

コモンコントロールのツールバーみたいな動作をするウィンドウ"MyToolbar"を自作。
0907デフォルトの名無しさんNGNG
>>905
いけません。それを言うとボタンを並べただけのReBarもToolBarになっちゃいます。
0908デフォルトの名無しさんNGNG
>>907
なるほど、ツールバーとは特定の実装(ToolbarWindow32)を指すものだったのですね。
OfficeとかのMsoCommandBarや、QTやGTKのツールバー、
もっと拡大するとUI一般で言うところのツールバーと呼ばれているものはほぼ例外なくまがい物ですか。
0909デフォルトの名無しさんNGNG
>>908
はいはいそういうしょーもないこと言うと思った。
UI一般の話をしてるなら混同してもいいが、今の話の流れ(>>889の質問から)だと区別する必要がある。
0910デフォルトの名無しさんNGNG
>>908
おまえの脳内はたぶんスレ違いだ。
0911デフォルトの名無しさんNGNG
911!
0912デフォルトの名無しさんNGNG
>>911はテロだな
0913デフォルトの名無しさんNGNG
いつのまにか900越えか・・・
0914デフォルトの名無しさんNGNG
ちょっと早いけど、次スレはATLと統合しない?
あっちのスレほとんど使われてないし。
0915デフォルトの名無しさんNGNG
ATL/WTL
http://pc5.2ch.net/test/read.cgi/tech/978029639/
ていうか昔は一緒だったのにも関わらず落ちたのに何故か分割したよね
0916デフォルトの名無しさんNGNG
class ATL/WTL : public 2chImpl<ATL/WTL, Part3>

過去スレ
ATL/WTL
http://pc5.2ch.net/test/read.cgi/tech/978029639/

ATL 相談室
http://pc5.2ch.net/test/read.cgi/tech/1029029882/

WTLお勉強スレッド
http://pc5.2ch.net/test/read.cgi/tech/1078150663/
0917デフォルトの名無しさんNGNG
>>915
そのスレの後、ATL相談室でATLとWTLを扱ってたけど、それをこのスレの>>1が調べもせずにここ立てちゃったんだよ。
0918デフォルトの名無しさんNGNG
WTLお勉強スレッド
http://pc.2ch.net/test/read.cgi/tech/1014932657/
コレもたったよね
0919デフォルトの名無しさんNGNG
見れないや。こっちだ。
http://piza.2ch.net/test/read.cgi?bbs=tech&key=978029639
0920デフォルトの名無しさんNGNG
>>918
うわっ、そこ完全に記憶から無くなってた。
すごいの引っ張り出してきたな。
0921デフォルトの名無しさんNGNG
>>918
そこはもう無かったことにしてもいいかもな…
0922テンプレNGNG
class ATL/WTL : public 2chImpl< ATL/WTL, Part3 >

>>1
ATLまたはWTLの相談室です。

>>2
過去スレ
(Part1)ATL/WTL
http://pc5.2ch.net/test/read.cgi/tech/978029639/

(Part2-1)ATL 相談室
http://pc5.2ch.net/test/read.cgi/tech/1029029882/

(Part2-2)WTLお勉強スレッド
http://pc5.2ch.net/test/read.cgi/tech/1078150663/
0923デフォルトの名無しさんNGNG
Part1のURLはhttp://piza.2ch.net/test/read.cgi/tech/978029639/だね
0924889NGNG
HWND hWndToolBar = CreateSimpleToolBarCtrl(m_hWnd, IDR_MAINFRAME, FALSE, ATL_SIMPLE_TOOLBAR_PANE_STYLE);

TBBUTTON btn = {0};
btn.iBitmap = 120; // width
btn.idCommand = ID_MY_COMBOBOX;
btn.fsStyle = TBSTYLE_SEP;

CToolBarCtrl bar = hWndToolBar;
bar.InsertButton(0, &btn);

CRect rc;
bar.GetItemRect(0, &rc); // fix me.
m_comboBox.Create(hWndToolBar, rc, NULL, WS_CHILD | WS_VISIBLE | CBS_DROPDOWNLIST, 0, ID_MY_COMBOBOX);
0925889NGNG
こんなに簡単に出来るとは思いませんでした。みなさんありがとうございました。
ここでコンボボックスのメッセージに疑問があります。
m_comboBoxの直接の親はhWndToolBarでありその親としてm_hWndが存在するのですが、
コンボボックスのメッセージはm_hWndのウィンドウに飛んでくるみたいです。
btn.idCommand = ID_MY_COMBOBOX; こいつが設定されていると、
ツールバーが親にメッセージを投げるのかと思いましたが btn.idCommand = 0;
でもメッセージが飛んでくるようです。
ちなみにm_hWndのメッセージマップは
COMMAND_HANDLER_EX(ID_MY_COMBOBOX, CBN_SELCHANGE, OnComboBoxSelchange)
こんな感じになってます。
0926デフォルトの名無しさんNGNG
m_comboBox.Create(hWndToolBar, rc, NULL, WS_CHILD | WS_VISIBLE | CBS_DROPDOWNLIST, 0, ID_MY_COMBOBOX);

↑こうしてるんだからID_MY_COMBOBOXのメッセージが飛んできて当然だと思うが
0927889NGNG
>>926
メッセージは親ウィンドウに届きますよね?
だとしたら >>895氏の言うようにhWndToolBar(ツールバー)に送られると思うのですが、
ツールバーの親であるm_hWndに飛んで来るんです。
0928デフォルトの名無しさんNGNG
ツールバーがメッセージをフレームにフォワードしてるだけなんじゃないのか?
0929デフォルトの名無しさんNGNG
すでにWTLの質問じゃないような気がするのは俺だけだろうか・・・
0930889NGNG
>>928
まあそんな感じなんでしょうね。
とりあえずよしとしときます。

>>929
発端はWTLって事で…。
0931デフォルトの名無しさんNGNG
>>1の立てたwikiがいつの間にか無くなってた。
0932デフォルトの名無しさんNGNG
ま、予想通りの結果だな。
0933デフォルトの名無しさんNGNG
yahooもいつまで放置するやら・・・
0934デフォルトの名無しさんNGNG
結局誰も使ってないしね
0935デフォルトの名無しさんNGNG
無能な奴がはりきったところで、誰もついて行かないってこったな。
0936デフォルトの名無しさんNGNG
ということで、有能な935が何か話題を提供してみないか?
0937デフォルトの名無しさんNGNG
>>936
>>1さんこんばんは。あなたの出番はもうありませんよ。
0938デフォルトの名無しさんNGNG
>>936
1よ、これ以上醜態を晒すな。
このスレやwiki、Yahooを見てわかるように、おまえの居場所は無い。
0939936NGNG
あれ、1にされちゃった
1はさすがにもういないんじゃ?
0940デフォルトの名無しさんNGNG
Yahooは放置したままとんずらかよ・・・
あそこに登録してる13人っていったい・・・
0941デフォルトの名無しさんNGNG
次スレ

class ATL/WTL : public 2ch<ATL/WTL, Part3>
http://pc5.2ch.net/test/read.cgi/tech/1095185498/
0942デフォルトの名無しさんNGNG
CUpdateUIっ設計理念がすばらしいね。
つくづく感心させられます。
0943デフォルトの名無しさんNGNG
Mixinですか
0944デフォルトの名無しさんNGNG
WTL でマウスでドラッグ中にカーソルの座標をステータスバーに
表示したい。今 OnIdle で書いているんだけど、ドラッグ中は
イベントが来ないため困っているんだけど、どうするのが
スマート(WTL的)かな?
0945デフォルトの名無しさんNGNG
埋めますか
0946デフォルトの名無しさんNGNG
>>944
スマートかどうか知らんが
http://home.att.ne.jp/banana/akatsuki/doc/atlwtl/atlwtl13-03/index.html
の下の方にあるマルチペインステータスバーなんかWTL的なんじゃね?
0947デフォルトの名無しさんNGNG
埋めようとしたとたんに質問かよ・・・
0948デフォルトの名無しさんNGNG
なんでOnIdleの中なんかににかくの?
普通にwm_mousemoveでできない理由があるのか?

つうかWinプログラミングも2chも初心者の厨房が
WTLなんかに手を出すんじゃねーよ
0949デフォルトの名無しさんNGNG
>>948
なんだよ、偉そうに。
「2chのベテラン」が格好いいと思ってるの?
0950デフォルトの名無しさんNGNG
>>949
格好いい訳ないだろう。

俺はWTLに関しては少なくとも初心者ではないが、
2chに関しては少なくともベテランではない。

よって、
例え俺が950ゲットしようとも、
既に存在する次スレのスレタイが如何に腐っていようとも、
俺は次スレを立てない。
0951デフォルトの名無しさんNGNG
>>948
このスレの住人として言わせてもらうがWTLが高度なライブラリかなにかと勘違いさせるような痛い発言はしないでくれ。
0952デフォルトの名無しさんNGNG
>>951
ある意味高度でしょ。MFCの将来的な姿を映していると思う。
「MFC開発者が過去の反省にたって一から作り直しますた。」って感じがする。
0953デフォルトの名無しさんNGNG
>>952
それと初心者を排斥するのと何の関係があるんだ。
0954デフォルトの名無しさんNGNG
>>951
高度なライブラリじゃないとは思うけど
Winの流儀も知らないやつが手を出すなとは思う。
IDEの支援もあるし、まずはMFCで慣れてからにしろって言いたい。
0955デフォルトの名無しさんNGNG
C++(特にテンプレートや多重継承)について慣れる必要はあるが、
MFCに慣れる必要は無いだろ。
0956デフォルトの名無しさんNGNG
別にMFCじゃなくてAPI自家でもいいけど
IDEの支援が無くなるから余計なところにも多大な労力裂く事になるし。
まあ、他の処理系でも良いならいくらでも選択肢は増えるけどな。HSPとか。

今回のケースはイベントドリブンの基礎が分かってないから
そんな変なコーディングしてたんだろし。
0957デフォルトの名無しさんNGNG
え?今回のケースはWTLのアイドル処理がWM_MOUSEMOVEを無視する仕様だから、
OnIdleでは拾えないってだけの話だろ。
なんでイベントドリブンの基礎まで話が広がるのよ。
0958デフォルトの名無しさんNGNG
OnIldeはMFCとWTLで該当するメッセージが違うでしょ。
0959デフォルトの名無しさんNGNG
ただでさえユーザーの少ないWTLなのに、初心者だからという理由で締め出そうとする意味がわからん。
WTL使ってる奴は使ってること自体に優越感を持ってるのかと勘違いされかねないから
>>948の「初心者は手を出すな」みたいな発言はマジでやめてほしいわ。
0960デフォルトの名無しさんNGNG
>>958
誰がMFCの話をしてるんだ。
0961デフォルトの名無しさんNGNG
>>957
すっごくいみふめ。
0962デフォルトの名無しさんNGNG
WTLのOnIdleがWM_MOUSEMOVEを無視することを、>>944が知らず、ソースを調べもしなかったことに問題があるんだよ。
MFCからやれとかイベントドリブンの基礎がどうのとかは的外れ。
0963デフォルトの名無しさんNGNG
>>952
偉そうな割にこの発言は恥ずかしいな…
全然状況を分かってない
0964デフォルトの名無しさんNGNG
無視以前にドラッグ中はWM_MOUSEMOVEがメッセージキューに来ない。

>>944
カーソルを監視するコントロールが一つなら、
そのコントロールでWM_MOUSEMOVEを処理する。
そうでないなら、WTLの枠組みで処理するのは諦めて、フックでも使うのが良いかと。
0965デフォルトの名無しさんNGNG
初心者>>949,>>959,>>963が吠えてるようだな。
どうせ同一人物だろ。アフォ丸出しだな。
0966デフォルトの名無しさんNGNG
>>944
簡単にやるならタイマーで監視して、変化があれば表示を更新。
難しくやるのが好きなら、フックを登録して WM_MOUSEMOVE で表示を更新。

0967デフォルトの名無しさんNGNG
>>965
オマエハナー
0968デフォルトの名無しさんNGNG
本当に初心者じゃなくて、WTLの現在の立場や、生い立ちをちゃんと知っていれば
「MFCの将来」とか「MFC開発者が」とか言う発言は出ないはず。

個人的に一番恥ずかしいのは>>948 >>950だがな。
全角英数字で2chだのOnIdleなんて書きながら、
ここまで自信満々に言われるとこっちが恥ずかしい。
0969デフォルトの名無しさんNGNG
>>966の補足。
「ドラッグ処理」を書いてると SetCapture したくなるケースがあるし、
外からのドラッグだと Capture されてるケースもあるので、
WM_MOUSEMOVE のハンドラはお勧めしないわけ。
0970デフォルトの名無しさんNGNG
このスレには以前から「SDKやMFC経験者っぽいけど、WTLは使ったこと無いんじゃないの?」と思わせるようなちょっと変な奴が紛れてる。
0971デフォルトの名無しさんNGNG
【Whidbey】Visual Studio 2005スレ【.NET 2.0】
http://pc5.2ch.net/test/read.cgi/tech/1080916113/648

↑にも知ったかが出没してるにゃ・・・
0972デフォルトの名無しさんNGNG
WTLはMFCに結構似てるよ。
WTLはまともなリファレンスが無いからMFC知ってると便利。
0973デフォルトの名無しさんNGNG
似てるのはクラスやメンバ関数の名前なのでMFCのリファレンスは便利だが、
だからといってMFCを初めから勉強する必要は無い。
0974デフォルトの名無しさんNGNG
>>971
にゃじゃねーよ。キモイ。
おまえがかわいい女の子なら許す。
0975デフォルトの名無しさんNGNG
>>971はおんなにょこだにょ。
0976デフォルトの名無しさんNGNG
WTLを操る可愛い女の子?!

付き合ってください。
0977デフォルトの名無しさんNGNG
皆さんも女の子もこちらに移動してください。

class ATL/WTL : public 2chlt;ATL/WTL, Part3gt;
http://pc5.2ch.net/test/read.cgi/tech/1095185498/

スレタイが失敗してるのは反省して次回は無難にATL/WTL相談室とでもするとして、
このスレは1000取り合戦に移行します。

977!
0978デフォルトの名無しさんNGNG
978!
0979デフォルトの名無しさんNGNG
979!
0980デフォルトの名無しさんNGNG
1000!
0981デフォルトの名無しさんNGNG
980!
0982デフォルトの名無しさんNGNG
>>977
スレ、作り直そうよ
0983デフォルトの名無しさんNGNG
スレタイごときでそれはないだろ
0984デフォルトの名無しさんNGNG
ただでさえ過疎スレだしな
0985944NGNG
埋まりそうで埋まらないのでこっちに。
えっと予想よりいっぱい返事をいただいてありがとうございました。

WTL の Sample にある MTPad と CodeProject の kPad あたりを
いじっててマウスカーソルの表示部の処理について気になったので
聞いてみました(どちらもドラッグ中は座標が表示されないみたい
だったので)

>>944
そうですね、マルチステータスバーは使ってます。

>>948
なんでOnIdleの中なんかににかくの?

UIUpdateStatusBar とかは OnIdle() でコールするのが普通に思えたし、
CodeProject の kPad とかもそうやってるので。

>>普通にwm_mousemoveでできない理由があるのか?

SetCapture する必要があるからっていうのと、メッセージの出力先は
ステータスバーだけにしたくないかなと思ったからです。

View の部分では現在の座標だけを公開して、OnIdle なりでビューから
座標を取得して出力したほうがいいと思ったからです。
つまりもしステータスバー以外に表示したいと思ったときに Frame の
方で簡単に切り替えられるから・・・
0986944NGNG
つづきを

>>956
どの辺がイベントドリブンと関係あるのかわからなかったので教えてく
ださい。kPad とかがそういうコーディングしてて、自分的にはちょっと
へぇと思ったものですから

>>957,958
IDE ではドラッグ中でも行数がでるからやり方はいくつかあると
思うんだけど表示データは内部にもって、表示部(この場合 Status Bar)
を管理する Frame が適切なタイミングで View のデータを取得して書いて
くれるといいかなと思ったのです。

>>962
いえ、OnIdle の実装はソース見ました。
問題は OnIdle が来ないのだけど、この場合どういう方法で表示させる
のが WTL 的なのかな?と思いまして。

>>964,966,969
MTPad のほうは Window メッセージ(WM_USER+?) を使っているんですが、
ドラッグ中に大量にポストするのは、ちょっと微妙かなと思いました。

また、まさに上下にドラッグしながらスクロールするときに SetCapture()
する必要がありますよね。フックも試してみます。

最初質問するときここまで反応がもらえると思わなかったので、具体例を
出さず、返事も遅れたのでアレですが、もし、上記以外で俺だったらこうする
見たいなのがあったら教えていただければ幸いです。

連休中にいろいろ試してみます。
0987デフォルトの名無しさんNGNG
>>982
賛成
ちょっと変なスレだしな。オタくさいし
0988デフォルトの名無しさんNGNG
変なAA貼られたくらいで新スレ立ててたらきりないわ
0989デフォルトの名無しさんNGNG
>>988
ざっとスレを1から見直してみたけど変なAAがない。顔文字ぐらい。
にも関わらず、この中身のなさはなんなのだろうか・・・。
次スレ要らないんじゃないの?
0990デフォルトの名無しさんNGNG
>>988
というより、スレタイがダメダメ
0991デフォルトの名無しさんNGNG
>>989
どこの話してるのよ。
新スレの話をしてるんだが。<AA
0992デフォルトの名無しさんNGNG
>>990
>>982-983
0993デフォルトの名無しさんNGNG
これでスカッと

ATL/WTL Part3
http://pc5.2ch.net/test/read.cgi/tech/1095442366/
0994989NGNG
>>991
なるほど。赤っ恥かいた・・・。
0995デフォルトの名無しさんNGNG
1000!
0996デフォルトの名無しさんNGNG
>>993

乙。すっきりした
0997デフォルトの名無しさんNGNG
997
0998デフォルトの名無しさんNGNG
WTL7.1落として入れてみたが
プロジェクト作ってソース見た時点で寒気がして
速攻アンインストールした

CWindowImplって...(気持ち悪すぎ
普通にCWindowImplementだろ
0999デフォルトの名無しさんNGNG
どっかで見たレスだな
1000デフォルトの名無しさんNGNG
1000?
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。