[表示 : 全て 最新50 1-99 101- 201- 301- 401- 2chのread.cgiへ]
Update time : 09/12 19:35 / Filesize : 114 KB / Number-of Response : 423
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

■MFC相談室 mfc18d.dll■



1 名前:デフォルトの名無しさん [2007/08/01(水) 06:23:28 ]
Microsoft Foundation Classライブラリ専用スレです。

348 名前:デフォルトの名無しさん [2007/10/31(水) 09:32:39 ]
tserve01.aid.design.kyushu-u.ac.jp/~fujiki/vc_lecture/c_5.htm
のページを見てキャラクターを表示しようとしてるんですが
キャラクターの白い部分が残って
うまく表示がされません、どうすれば良いか教えて頂けないでしょうか。
お願いします。

349 名前:291 mailto:sage [2007/10/31(水) 10:37:25 ]
そのページを見てわからんのなら
君にはむりだ


350 名前:デフォルトの名無しさん mailto:sage [2007/10/31(水) 10:49:25 ]
>>348
謎は解けた!
マスク描画のROPを、SRCPAINTからMERGEPAINTに変えれば正しく描画される。

普通はキャラ画像の背景は黒にして、
SRCANDで抜いてSRCORで重ねるってのが定番だと思うのだけどな。
CImageListならカラーキーを使った描画ができるから、
こっちを使った方が手っ取り早いかも。

351 名前:デフォルトの名無しさん mailto:sage [2007/10/31(水) 12:36:21 ]
>>350さん
ありがとうございました。
感謝感謝です。

352 名前:デフォルトの名無しさん [2007/11/01(木) 07:21:07 ]
どうも、他スレから流されてきました。

Win32環境+VS2005で開発を行っています。
ダブルクリックでファイルを開く処理に対応させようと頑張っていた所
Debugビルドでは成功したのですが、Releaseビルドにするとファイルを開かなくなりました。
(でもショートカットに開きたいファイル名を指定するとReleaseビルドでもきちんと開く)

そこで処理を追っていくと、どうもInitInstanceメソッドが呼び出されていないようなのですが、似たような経験をされた方はいらっしゃらないでしょうか?




353 名前:デフォルトの名無しさん mailto:sage [2007/11/01(木) 10:16:22 ]
そこまで分かってんなら呼び出せばいいじゃん

354 名前:デフォルトの名無しさん mailto:sage [2007/11/01(木) 14:28:25 ]
CTreeCtrlを使ってエクスプローラライクなダイアログを作っています。
メーラーの未読数表示のように、フォルダ内のファイル数を表示する
方法はあるのでしょうか?

ラベル編集も可能にしたいので、"フォルダ名(n)"のように直書きでは
問題が出てしまいます。
やっぱり無理矢理作るしかないのでしょうか?

355 名前:デフォルトの名無しさん mailto:sage [2007/11/01(木) 14:57:38 ]
>>354
楽な方法は無いな。
NM_CUSTOMDRAWを始め、
いくつかの通知メッセージを処理しないと実現できないと思う。

356 名前:352 [2007/11/01(木) 15:25:21 ]
>>353
すいません、関連付け関係のレジストリをすべて掃除したら直りました。
プログラムのミスではなかったようです。orz




357 名前:デフォルトの名無しさん mailto:sage [2007/11/01(木) 15:33:26 ]
ダブルクリックってそういう意味か
仕様を満足に説明できないやつは1人でやってればいいと思う

358 名前:デフォルトの名無しさん mailto:sage [2007/11/01(木) 21:04:18 ]
MFCを使った有名なソフトはどんなものがあるんですか?

359 名前:デフォルトの名無しさん mailto:sage [2007/11/01(木) 23:51:16 ]
秀丸


360 名前:デフォルトの名無しさん mailto:sage [2007/11/02(金) 00:07:13 ]
ペイント

361 名前:デフォルトの名無しさん mailto:sage [2007/11/02(金) 15:55:16 ]
>>358
有名になる予感
www.cute.or.jp/~makuchan/wore.html
10/31


362 名前:デフォルトの名無しさん mailto:sage [2007/11/03(土) 21:48:38 ]
Internet Explorer

363 名前:デフォルトの名無しさん mailto:sage [2007/11/04(日) 10:19:39 ]
>>361
いいねえ。
これは期待できる。

364 名前:デフォルトの名無しさん mailto:sage [2007/11/04(日) 10:58:22 ]
得体の知れないリンクは踏まないようにしてる

365 名前:デフォルトの名無しさん [2007/11/05(月) 22:00:13 ]
マルチです。すいません。
tserve01.aid.design.kyushu-u.ac.jp/~fujiki/vc_lecture/c_6.htm
のお絵かきソフトを作るページを参考にしてるんですが
「ToolBar」の「IDR_MAINFRAME」のボタンとIDを書き換えても
ページに書かれているようなIDに対応するような関数が作られず
ボタンも描いたように表示されず灰色の使用不可のような状態
になってしまいます。
VS2005stdです。
どなたか、わかるかた、VS2005ではどうしたらよいか教えていただけないでしょうか。
お願いします。

366 名前:デフォルトの名無しさん mailto:sage [2007/11/05(月) 22:06:23 ]
>365
教えてやったのに無視してこっちに引越しか?
とんでもないやつだな



367 名前:デフォルトの名無しさん mailto:sage [2007/11/05(月) 23:28:00 ]
VC++2005スタンダードを使ってMFCを勉強しているのですが、
onNewDocumentやonOpenDocument、Serializeなどファイル操作や
イベント処理などがどういう流れで行われているのかがいまいち把握できないので、
詳しく解説してある良い書籍とかないでしょうか?

ちなみに今頃MFCかよとかなしでおねがいします。

368 名前:デフォルトの名無しさん mailto:sage [2007/11/06(火) 02:40:56 ]
いや、本当にいまさらMFC勉強しても意味がない
>>367
みたいな質問してるようだと、人に見せれるようなアプリがかけるまで、2年以上はかかる
2年後にはMFCはVSからなくなってるぞ

369 名前:デフォルトの名無しさん mailto:sage [2007/11/06(火) 11:34:51 ]
なくなるわけねーだろ
お前みたいな、おこちゃまアプリしか作らんやつには
MFC は必要ないだけだ


370 名前:デフォルトの名無しさん mailto:sage [2007/11/06(火) 12:46:27 ]
2年後が楽しみになってきました

371 名前:デフォルトの名無しさん mailto:sage [2007/11/06(火) 13:17:56 ]
2年後にMFCが無くなってたら怖いな。
M$がwin32apiを無理矢理クラス化し、永続させてきたMFCを
ばっさり切るなんて、今までの努力を捨てちまうようなもんだもんな。
それにVBを.net化したりしてるのを見れば「まだまだ、へこたれへんでー」
ってな感じに受け止めれる。
まぁ、主流はVC#VB.netの方針で発展していくんだろうね。

372 名前:デフォルトの名無しさん mailto:sage [2007/11/06(火) 14:37:15 ]
>>371
いいえ。C++の財産はとてつもなく大きいものです。

C++/CLI について語ろうぜ Part2
pc11.2ch.net/test/read.cgi/tech/1142147319/
これ最強

373 名前:デフォルトの名無しさん mailto:sage [2007/11/06(火) 15:45:45 ]
Picture ControlのBorderをプログラム実行中に変更する方法を教えてください

374 名前:デフォルトの名無しさん mailto:sage [2007/11/06(火) 16:16:42 ]
変らない?

375 名前:373 mailto:sage [2007/11/06(火) 16:17:49 ]
>>374
やり方がよく分からないんです。

376 名前:デフォルトの名無しさん mailto:sage [2007/11/07(水) 10:43:29 ]
パスがファイルかフォルダかを判定する方法があれば教えていただけないでしょうか?
そのパスは存在することが前程でよいのですが。。。

よろしくお願いいたします。



377 名前:デフォルトの名無しさん mailto:sage [2007/11/07(水) 10:53:11 ]
ファイルの属性を見る
MFCにそういうのを扱うクラスはなかったと思う

378 名前:デフォルトの名無しさん mailto:sage [2007/11/07(水) 10:58:57 ]
>>377
CFileにGetStatus()があるのだが。static版の方は引き数にフルパスを取るから一応使えると思う。

379 名前:デフォルトの名無しさん mailto:sage [2007/11/07(水) 11:25:51 ]
CFileでディレクトリも扱えるの?

380 名前:デフォルトの名無しさん mailto:sage [2007/11/07(水) 11:32:05 ]
>>379
CFile::GetStatus()のstatic版は、実体を必要としないので普通の関数のように使える。
つまり、その対象を予め開いておく必要はない。詳しくは、MSDNでも読め。

381 名前:367 mailto:sage [2007/11/07(水) 18:08:26 ]
>>368
何を根拠に2年なのかkwsk、というかカチンときた。

まぁ、ATLとか.NETとか出てる中、いまどきMFCやるのもあれかもしらんが・・・

で、MSDN以外に参考になるものはないってことかい?


382 名前:デフォルトの名無しさん mailto:sage [2007/11/07(水) 18:13:41 ]
カチンと来るのは勝手だけれど、MFCが斜陽なのは事実。
一頃本はたくさんあったようだしWebSiteもそれなりにあると思う。
それを探せないようでは先が思いやられるのも同感。

383 名前:デフォルトの名無しさん mailto:sage [2007/11/07(水) 18:15:08 ]
ATLとMFCって同じレベルのものなの?
全然知らなくてすまそ

384 名前:デフォルトの名無しさん mailto:sage [2007/11/07(水) 20:48:24 ]
無駄に複雑で使えないっていう点では同じレベル

385 名前:デフォルトの名無しさん mailto:sage [2007/11/07(水) 21:13:42 ]
簡単なツールならVB感覚でさくっと作れるじゃない。MFCは。

386 名前:デフォルトの名無しさん mailto:sage [2007/11/08(木) 13:05:34 ]
やっぱり.NET



387 名前:デフォルトの名無しさん mailto:sage [2007/11/09(金) 15:15:14 ]
View画面でのサイズ指定で
SDIのCMainFrameウィンドウサイズを変更する関数ってありますか?

やっぱり、指定のサイズ+枠のサイズとかメニューのサイズとかを計算しないとだめですか?


388 名前:デフォルトの名無しさん [2007/11/09(金) 16:37:49 ]
CHTMLViewクラスを使って表示したHTML文書のテキストの
色などをプログラム中から変更することはできるでしょうか?

PutPorpertyというメソッドを使えばできそうな気がするの
ですが使い方がよく分かりません。

<P class='test'>Hello, World</P>
というテキストの色を赤にする方法を教えてください。

389 名前:デフォルトの名無しさん mailto:sage [2007/11/09(金) 21:49:22 ]
>>388
CHTMLViewのGet/SetPropertyは、単にIWebBrowser2の同メソッドが呼ばれるだけ。
GetHtmlDocument()から始めるしかないと思う。という訳で、試しに書いてみた。
ちなみに、MFCでなくてATLだが全く問題無い。

// 1. CSSを追加してみる方法

CComPtr<IDispatch> spIDisp;
spIDisp.Attach(GetHtmlDocument());
CComQIPtr<IHTMLDocument2> spIDom(spIDisp);
CComPtr<IHTMLStyleSheet> spCSS;
spIDom->createStyleSheet(NULL, -1, &spCSS);
long idx;
spCSS->addRule(CComBSTR(_T("P.test")), CComBSTR(_T("color:red")), -1, &idx);

390 名前:デフォルトの名無しさん mailto:sage [2007/11/09(金) 21:53:27 ]
// 2. エレメントに直接スタイルを追加してみる方法

CComPtr<IDispatch> spIDisp;
spIDisp.Attach(GetHtmlDocument());
CComQIPtr<IHTMLDocument2> spIDom(spIDisp);
CComPtr<IHTMLElementCollection> spElemCol;
spIDom->get_all(&spElemCol);
spIDisp.Release();
spElemCol->tags(CComVariant(_T("P")), &spIDisp);
CComQIPtr<IHTMLElementCollection> spElemCol2(spIDisp);
for ( int idx = 0 ; ; idx++ )
{
spIDisp.Release();
spElemCol2->item(CComVariant(idx), CComVariant(), &spIDisp);
if ( !spIDisp ) break;
CComQIPtr<IHTMLElement> spElem(spIDisp);
CComBSTR clsname;
BSTR bstr;
spElem->get_className(&bstr);
clsname.Attach(bstr);
if ( clsname != _T("test") ) continue;
CComPtr<IHTMLStyle> spStyle;
spElem->get_style(&spStyle);
spStyle->put_color(CComVariant(_T("red")));
}


391 名前:388 mailto:sage [2007/11/09(金) 22:57:03 ]
>>389 >>390
ありがとうございます。ATLは全く知らないのでコードは謎ですが、
必要なヘッダを調べてインクルードして何とか両方とも動かすこと
ができました。

if ( clsname != _T("test") ) continue; のところで
エラーが出たので調べてみると CComBSTR::operator==は
定義されていましたが CComBSTR::operator!=は定義されて
いませんでした。if ( clsname == _T("test") ) { /*../*/ }
と直すとコンパイル通りました。これはVisual C++6.0の
不具合かもしれません。

師匠になってほしいです。

392 名前:デフォルトの名無しさん mailto:sage [2007/11/13(火) 02:19:17 ]
blogs.msdn.com/somasegar/archive/2007/11/09/visual-c-libraries-update.aspx
結局捨てないのか
ともかく壮絶なソースコードが見れそうだ

393 名前:デフォルトの名無しさん [2007/11/14(水) 11:34:45 ]
CReBarでレバーコントロールを利用しているのですが、
複数のコントロールを1つのバンドに含めるにはどうすればいいでしょうか。

CReBar cRebar;

cRebar.AddBar(コンボボックス)
cRebar.AddBar(ボタン)

とすると、コンボボックスとボタンが別々のバンドに配置されますが、
目的としては、コンボボックスとボタンを同一バンドに配置したいです。

394 名前:デフォルトの名無しさん mailto:sage [2007/11/14(水) 12:30:31 ]
各バンドには 1 つしか子ウィンドウ (コントロール) を含むことができません。
各バンドに複数の子ウィンドウを含めたい場合は、この点が制約になります。

395 名前:393 mailto:sage [2007/11/14(水) 17:10:33 ]
なるほど、ありがとうございます。
ちょっと微妙ですけど、コンボボックスとボタンをスタティックコントロールの子にして、
そのスタティックコントロールをAddBarすることにしました。

396 名前:デフォルトの名無しさん mailto:sage [2007/11/15(木) 00:22:50 ]
MFCでExcelのセルみたいなぐりっどコントロールってないんですか?



397 名前:デフォルトの名無しさん mailto:sage [2007/11/15(木) 01:22:56 ]
ありません。ListCtrlを自前で拡張するか、CodeGuruでそうしたものを探すか、市販のライブラリを使うか、
ExcelをDDEで使うことになるかと。

398 名前:デフォルトの名無しさん mailto:sage [2007/11/15(木) 18:29:30 ]
拡張DLLでダイアログクラスをエクスポートしようとしているのですが、
ヘッダのクラス宣言の中に
enum { IDD = IDD_… };
という記述があります。
このリソースIDは拡張DLL側のResource.hに書かれているものです。

拡張DLLを使う側がこのヘッダをインクルードすると、
リソースIDが見つからないと言われると思うのですが、
拡張DLLでダイアログクラスをエクスポートする場合
この部分はどのように対応すればよいものなのでしょうか。

399 名前:デフォルトの名無しさん [2007/11/16(金) 16:17:31 ]
保守!

400 名前:デフォルトの名無しさん mailto:sage [2007/11/16(金) 21:52:56 ]
>>398
そのリソースIDが記述されてるヘッダをインクルードしなきゃいんじゃね?
使う側は、拡張DLL側のリソースIDなんて余計なだけじゃね?


401 名前:デフォルトの名無しさん [2007/11/17(土) 18:06:11 ]
MFC VC でセマフォや共有メモリみたいなのって無いの?

402 名前:デフォルトの名無しさん mailto:sage [2007/11/17(土) 19:15:43 ]
>401
自分で調べようとも思わないのか?

403 名前:デフォルトの名無しさん mailto:sage [2007/11/17(土) 19:25:37 ]
ぐぐってみようとも思わなかったんだろうな

404 名前:デフォルトの名無しさん mailto:sage [2007/11/17(土) 19:25:53 ]
VS2005付属MSDNのキーワードに「セマフォ」って入れるだけで
あっさり対応するクラスが見つかった件について。

おまえやる気無いだろ。氏ね。 >>401

405 名前:デフォルトの名無しさん [2007/11/17(土) 22:35:15 ]
>>404
そんな高価なツールもってねえよばーーか

406 名前:デフォルトの名無しさん mailto:sage [2007/11/17(土) 23:04:35 ]
VS2005のどこが高価なんだよw
今までのこと考えたらクソ安いつーの
つーかMSDNのちょっと遅れのイメージなんか完全フリーじゃねえか



407 名前:デフォルトの名無しさん mailto:sage [2007/11/17(土) 23:12:13 ]
MSのサイトでみれるMSDNはVS2005のとは別ものなの?
同じなら、オンラインで検索すれば。

408 名前:デフォルトの名無しさん mailto:sage [2007/11/18(日) 16:15:43 ]
基本的には同じはずだが…

409 名前:デフォルトの名無しさん mailto:sage [2007/11/18(日) 17:58:57 ]
VS2005 MFCです
折れ線グラフを描画する、ツールを作りたいんだけど
MFCのツールボックスには、ピクチャーコントロールというツールと
カスタムコントロールというのがあるけれど、どう違うのでしょうか?
また、グラフを描画させるにはどちらのコントロールを選んだ方がいいのでしょうか?


410 名前:デフォルトの名無しさん mailto:sage [2007/11/18(日) 18:29:12 ]
>>409
つ[TrueWinChart]

411 名前:デフォルトの名無しさん mailto:sage [2007/11/18(日) 18:43:10 ]
>>410
>>409です
True WinChart for .NETですよね、標準価格:102,900円
そんな予算でないです

412 名前:デフォルトの名無しさん mailto:sage [2007/11/18(日) 18:58:09 ]
自分で描画するだけだからコントロールは必要ない

413 名前:409 mailto:sage [2007/11/18(日) 19:11:21 ]
>>412
ダイアログに直接描画するのではなく、ピクチャーコントロールかカスタムコントロールに
描いて、それをサブクラス化したいんだけど、違いがよく分からないんだよね

414 名前:デフォルトの名無しさん mailto:sage [2007/11/18(日) 19:24:32 ]
違いは標準かカスタムか

415 名前:409 mailto:sage [2007/11/18(日) 19:34:14 ]
ということは、カスタムコントロールのほうが、拡張性(自由度)が
高いってことだね?

416 名前:デフォルトの名無しさん mailto:sage [2007/11/18(日) 19:56:50 ]
描画するだけなら、単純にウインドであれば良いだけじゃないの?
ゴテゴテ機能が付いている方がいろいろな横槍がはいって返って上手くいかないかもしれん。




417 名前:409 mailto:sage [2007/11/18(日) 20:34:14 ]
>>416
言われてみればそうかも知れないな、
コントーロールを貼り付けて、描画専用クラスを別に書き、シリアル化したデータを
流し込んで、グラフを描画させようと思ったけど
よく考えたら、描画専用クラスは、ダイアログに描こうがコントロールに描こうが必要なわけで
対象となるオブジェクトがどっちになろうが、使えるクラスを設計する方が賢いかもしれないね

418 名前:デフォルトの名無しさん mailto:sage [2007/11/19(月) 13:17:07 ]
.flvから0.5秒おきのBMPを作りたいんですが
何かヒントだけでもいただけたら

419 名前:デフォルトの名無しさん mailto:sage [2007/11/19(月) 13:24:14 ]
ヒント MFCと関係ない

420 名前:デフォルトの名無しさん mailto:sage [2007/11/19(月) 13:34:30 ]
>>419
とは思ったのですがやはりプログラミングのプロ集団は
MFCスレかと思いまして。

421 名前:デフォルトの名無しさん mailto:sage [2007/11/19(月) 14:26:56 ]
B's Recorderみたいな画面作りたい><

422 名前:デフォルトの名無しさん mailto:sage [2007/11/19(月) 15:29:48 ]
>>420
DirectShowスレがあるぞ






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<114KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef