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


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

■MFC相談室 mfc20d.dll■



1 名前:デフォルトの名無しさん [2008/12/26(金) 00:43:36 ]
Microsoft Foundation Classライブラリ専用スレです。

前スレ
■MFC相談室 mfc19d.dll■
pc11.2ch.net/test/read.cgi/tech/1207301867/

175 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 18:16:00 ]
CRectTrackerを使って画像内にドラッグで大きさ、位置が
変更可能な矩形を描画しようとしてるんですが、
矩形内の色が白になってしまって画像が上書きされた形になります。
枠だけ描画というのはどうやったらできるんでしょうか。

画像はrawで、OpenGLで描画されています。


176 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 18:24:56 ]
>>175
コンストラクタでCRectTracker::hatchInsideを指定するとどうなる?
# OpenGLで描画したものってDCの範疇じゃないのかな?

177 名前:175 mailto:sage [2009/01/14(水) 18:55:08 ]
>>176
斜線が入るだけで、白く塗りつぶされたままです。

178 名前:デフォルトの名無しさん [2009/01/14(水) 19:52:53 ]
エディットボックスでキー入力の入力方法を英語から日本語入力に自動的に切り替える方法を教えてください。


179 名前:178 [2009/01/14(水) 19:53:28 ]
↑winXP+VC2005です。すいません


180 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 21:15:39 ]
MFCにあったかな?
なければスレ違い

181 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 22:07:07 ]
>>175
そもそもなんでOpenGLで描画したところにトラッキングしたいのか判らんが、
MFC側の問題じゃなくてOpenGL側の問題っぽいからOpenGLスレで聞いて味噌。

182 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 23:26:05 ]
質問させてください。
今MFC VC2005を使いプログラムを組んでいるのですが、あるメソッド内でint型配列array[21]の中身をsetwindowtextでタイトルに表示させたいと思っています。
setwindow(_T(""))で、array[i]をどのように記述すれば表示できるようになるでしょうか。下らないかもしれませんがお願いします。

183 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 23:28:17 ]
CString hoge;
hoge.format(_T("%d"), array[i]);
wnd.SetWindowText(hoge);

こんな感じかな



184 名前:182 mailto:sage [2009/01/15(木) 02:24:13 ]
>>183さん
そういう書き方をするんですね、、無事上手くいきました。ありがとうございました!

185 名前:175 mailto:sage [2009/01/15(木) 02:48:28 ]
>>181
今使ってるプログラムはもともと1年半くらい前の演習の時に先生から頂いたrawビューアで、
研究に使えそうだってことでその時のプログラムを改造しようとしてるんですが、
OpenGLは全く扱ったことがなくて(演習の時も処理部分しか触ってない)、
時間もないんで、OpenGLを勉強するより1から作り直した方が早いような気がしてきたんですが、
raw画像(320×320の輝度値のみのデータ)をMFCを使って表示させるには
ビットマップに変換するしかないのでしょうか。

186 名前:名無し募集中。。。 mailto:sage [2009/01/15(木) 03:19:54 ]
輝度データをDIBに変換すれば良い
BMPはLoadImageでDIBのハンドルを得られるが
自分で変換する場合はBITMAPINFOにサイズなどをセットしてCreateDIBSectionを使って
ハンドルと輝度データを入れる領域を得る(ここまでMFCなし

187 名前:175 mailto:sage [2009/01/15(木) 11:33:23 ]
>>186
アドバイスありがとうございます。
それで作ってみたいと思います。

188 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 17:33:57 ]
MFC6.0の参考書見ながらこつこつやってるんだけど別に支障はない?
1999〜2001年に出版されたものなんだが

189 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 19:37:56 ]
int iLength = m_Edit.LineLength(i)+1;
TCHAR *ptBuf = new TCHAR[iLength];
m_Edit.GetLine(i,ptBuf,iLength);
ptBuf[iLength]=0;
ar.WriteString(str);
delete[] ptBuf;
一行一行ファイルの保存させたいのでCEditの内容を取得して保存させるのに
上記の様なソースを書いたところdelete[]の所でエラーをはくのですがなぜでしょうか?

190 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 19:47:37 ]
>>189
ptBuf[iLength]=0;

ptBuf[iLength-1]=0;

191 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 19:57:10 ]
CWnd::GetWindowTextでCStringに纏めて取って、
CString::Tokenizeで分解したほうが手っ取り早くね?

192 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 20:45:37 ]

  int  i, nLineCount;
  CString strText;
  CStringArray bufArray;

  nLineCount=m_Edit.GetLineCount();
  for (i=0;i < nLineCount;i++)
  {
    int len = m_Edit.LineLength(m_Edit.LineIndex(i));
    m_Edit.GetLine(i, strText.GetBuffer(len), len);
    strText.ReleaseBuffer(len);
    bufArray.Add(strText);
  }

  CStdioFile file;

  if(file.Open(..略..))
  {
    for (i=0;i <bufArray.GetSize();i++)
    {
      file.WriteString(bufArray.GetAt(i));
      file.WriteString(_T("\r\n"));
    }
    file.Close();
  }

とかでよくね?

193 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 21:25:28 ]
CEdit::GetLine
戻り値
実際にコピーされたバイト数

戻り値使わないの?



194 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 00:00:50 ]
MFCでデバイスコンテキストで使われているフォントの高さを取得する方法ってありますか?

195 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 00:05:43 ]
GetTextExtent

196 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 03:07:01 ]
>>193
ここの使用例をテキトーに書き直しただけだから、

ttp://msdn.microsoft.com/ja-jp/library/s7zy7cwk(VS.80).aspx

細かい事気にすんな。 ハゲるぞ。(もうハゲてるかもしれんけど)

197 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 04:18:10 ]
GetLineの戻り値、、使わないなあ。 使いどころない。
>>193は、>>192でどう戻り値使うのだろうか?

198 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 09:07:51 ]
>>194
GetTextMetrics

199 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 17:51:17 ]
lineText..GetLine(iLine, strText.GetBuffer(iLength));
っていう風に関数を実行するとstrTextにその行が入る時と入らない時があるんですがなぜなんでしょうか?

200 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 17:57:30 ]
ReleaseBuffer してるか?

201 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 18:01:19 ]
行ってますし、デバッガでとめて一個一個通すと何故か全部入っていくんです。

202 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 18:08:02 ]
>lineText..GetLine(iLine, strText.GetBuffer(iLength));
こんなコード、有り得ないだろ。

203 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 19:07:15 ]
CEdit::GetLine(int nIndex, LPTSTR lpszBuffer)
だろ?EM_GETLINEのベタ実装なんだよな、これ。
昔から思っていたんだが、わざわざメソッドとして用意しておく必要性あるんだろうか。
普通バッファ長を指定できる方しか使わないと思うのだが。
わざわざこっちでバッファの先頭ワードにバッファ長代入とか暇人過ぎだろ。



204 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 21:11:51 ]
2つあるうちの一見楽そうに見える方が実は大変ということか

205 名前:デフォルトの名無しさん [2009/01/18(日) 15:22:20 ]
>>199
>>203 が書いているように、引数が2つしかない CEdit::GetLine()を使う
時は、呼び出す前に、第二引数で渡すバッファの先頭に、バッファ長を
書いておく必要があるのに、それをやっていないからだろ?

  LPTSTR pBuf;

  pBuf=strText.GetBuffer(iLength);
  *((LPWORD)pBuf)=iLength;       // バッファ長をセット
  m_wndEditCtrl.GetLine(iLine,pBuf);
  strText.ReleaseBuffer(iLength);

自分でバッファ先頭にバッファ長をセットするのが面倒なら、引数が3つ
あるCEdit::GetLine()を使うことだ。

206 名前:デフォルトの名無しさん mailto:sage [2009/01/18(日) 16:01:41 ]
日付や時間を取得したいけどエラーがでてしまうんです・・・
内容は
Run-Time Check Failure #3 - The variable 'newtime' is being used without being initialized.

afx_msg void CMainWin::OnTime()
{
char str[80];
CTime Curtime = CTime::GetCurrentTime();
struct tm *newtime;

newtime = Curtime.GetLocalTm(newtime); //ここが問題
wsprintf(str,asctime(newtime));
str[strlen(str) - 1] = '\0';
MessageBox(str,"Time and Date");
}

msdn.microsoft.com/ja-jp/library/fxy17zta(VS.80).aspx
ここ見る限りじゃ間違いないと思うんだけどなあ・・・
指摘と改善お願いします。。。

207 名前:デフォルトの名無しさん [2009/01/18(日) 16:57:35 ]
>>206
突っ込みどころが大杉。釣りか?

C++やMFC以前に、ポインタも理解していないなら、C言語の基礎からやった
方がいいと思う。

MFCのサンプルは間違っているな。

  struct tm newtime;
  Curtime.GetLocalTm(&newtime);

でうまくいくだろう。

また、ワイド文字版のwsprintf()を使うなら「char str[80]」ではなく
「wchar_t str[80]」とすべき。MessageBoxもワイド版を使う。

> str[strlen(str) - 1] = '\0';

これもprintf()/wprintf()によって文字列末尾にNUL文字('\0')は付与され
ているから意味がないし、ワイド文字なら、strlen()ではなくwcslen()を
使うべき。

str[wcslen(str)-1] = L'\0';

第一、str[]がNUL文字で終端されていないと、strlen()/wcslen()は
文字列長さを判定できない。

208 名前:デフォルトの名無しさん mailto:sage [2009/01/18(日) 17:08:05 ]
>>207
MSのサンプル間違ってるとか悲しいわな

これ、一応参考書のサンプルなんですけど捨てたほうがいいでしょうか
まあ2001年に出版されたものなんですけどね

209 名前:デフォルトの名無しさん mailto:sage [2009/01/18(日) 17:14:24 ]
サンプルは間違っているとは言い切れないよ。
宣言と利用の間に、メモリ確保が隠されているかもしれないw

とは言え、2008用のページの方は訂正されているんだからそっちを見ればいい訳で。
ttp://msdn.microsoft.com/ja-jp/library/fxy17zta.aspx

210 名前:デフォルトの名無しさん mailto:sage [2009/01/18(日) 17:22:43 ]
CTime Curtime = CTime::GetCurrentTime();
tm newtime;
Curtime.GetLocalTm(&newtime);
wsprintf(str,asctime(&newtime));

でできました!
参考書って年代で仕様も変わるけど図書館にはこれしかなくて・・・^^;
なんか疑いにくいんですよね、参考書って
どうもありがとうございました

211 名前:デフォルトの名無しさん mailto:sage [2009/01/18(日) 17:28:49 ]
本に誤字脱字があるのは珍しいことじゃない

212 名前:デフォルトの名無しさん mailto:sage [2009/01/18(日) 17:33:05 ]
おかしいと思ったら複数調べるのがいい。

213 名前:デフォルトの名無しさん mailto:sage [2009/01/18(日) 17:33:41 ]
>>210
その参考書が何か知らんが、MSDNのサンプルをコピペしただけの悪書なんじゃないか?
いみじくも参考書を名乗るのなら、ちゃんと検証されたコードを載せるべきだと思うのだが。



214 名前:デフォルトの名無しさん mailto:sage [2009/01/18(日) 17:37:35 ]
>>213
えっと・・・
ハーバート・シルト/フランク・クロケット著 「標準講座 MFC6.0」だそうです
結構分厚いからコピペではないと思います
ver間での使用の違いを疑わなかった自分のミスです

215 名前:デフォルトの名無しさん mailto:sage [2009/01/18(日) 17:40:25 ]
いやこれ仕様の違いじゃなくてもともと間違ってるよ。
でもその本見る限り、コピペじゃなくて同じソースってことみたいね

216 名前:デフォルトの名無しさん mailto:sage [2009/01/18(日) 17:44:41 ]
ってサンプルソースがダウンロードできるから見てみたけど、

struct tm *newtime;
newtime = curtime.GetLocalTm();

これなら旧仕様で合法だな。


217 名前:デフォルトの名無しさん mailto:sage [2009/01/18(日) 17:48:03 ]
>>216を2008でコンパイルするとGetLocalTm()に引数がないことからエラーがでました
昔はよかった

218 名前:デフォルトの名無しさん mailto:sage [2009/01/18(日) 17:50:03 ]
まあそれはMSDNのほうでも、_SECURE_ATLを未定義にすればいいみたいだけどね。

219 名前:デフォルトの名無しさん mailto:sage [2009/01/18(日) 17:50:40 ]
>いいみたい
→いいと書いてるみたい

220 名前:デフォルトの名無しさん mailto:sage [2009/01/18(日) 17:56:33 ]
昔は引数にNULL(省略化)を渡すことで、オブジェクト内部のstruct tmの
ポインタを返す仕様だったけど、NULLポインタを渡すのを許可しなくなった
ってことでは?

オブジェクト内部のstruct tmのポインタを取得できると、直接データを
書き換えて隠蔽化の意味がなくなるから。

221 名前:デフォルトの名無しさん mailto:sage [2009/01/18(日) 18:56:56 ]
元のサンプルと全然違ってるし

222 名前:デフォルトの名無しさん mailto:sage [2009/01/18(日) 19:33:49 ]
サンプルコードなんて使い方の雰囲気を感じ取るだけのもんで
コピペするもんじゃねぇ。
自分のプログラムに組み込むときは、引数・戻り値の意味と動作を理解し
自分の頭でコードを書くべき。

223 名前:デフォルトの名無しさん mailto:sage [2009/01/18(日) 20:41:17 ]
サンプルコードをいじくりながら学ぶもんなんじゃねえの?
いじくる前に1回コピペするだろ



224 名前:デフォルトの名無しさん mailto:sage [2009/01/18(日) 21:26:46 ]
いじくるのは勝手だけど、自分が間違ったのを本のせいにしない。

225 名前:デフォルトの名無しさん mailto:sage [2009/01/18(日) 22:59:29 ]
>>207
wsprintf()ってワイド文字ではなくTCHARだけど。

226 名前:デフォルトの名無しさん mailto:sage [2009/01/18(日) 23:02:26 ]
TCHARは_tsprintfみたいな名前だろ?
wprintfはwcharのはず
プリプロセッサで切り替わるだけだし

227 名前:デフォルトの名無しさん mailto:sage [2009/01/18(日) 23:05:43 ]
wsprintfはWindowsのAPI
wprintfはprintfのワイド文字版

228 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 00:15:16 ]
>>210
手元の2004年初版第6刷発行では>>216のコードになってるな

>>225-227
wsprintf()は環境によってマルチバイトかUNICODEだよね。
>>206のコードだとマルチバイト環境のコードならばcharは間違えというわけではない。

それと
str[strlen(str) - 1] = '\0';
ってのはasctime()が改行文字を付加するからそいつを取っ払うため。

まぁ、あんまりよろしくないコードとは思うけどね。

229 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 00:41:37 ]
wsprintfとwprintfとswprintfは紛らわしすぎる

230 名前:デフォルトの名無しさん [2009/01/19(月) 05:48:07 ]
処理をCPU使用率30%を上限に制限して実行させるにはどうすればいいんでしょうか?
そんなことは可能なんですか?

231 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 08:47:51 ]
なんでそんなことする必要があるのか疑問。
他のアプリの邪魔をしたくなければ、スレッドの優先順位を低くしとけばいいだけ。

232 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 08:53:15 ]
>>230
25%上限でよければ、簡単だよw

233 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 09:23:00 ]
>>232
Core2Duoですが簡単ですか?



234 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 09:25:08 ]
惜しいな、Core2Duo単体なら上限は50%だ。

235 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 09:31:19 ]
Core2Duo限定のソフトか!

236 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 10:31:14 ]
いえ、Qのほうで

237 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 12:33:52 ]
MFCと関係あるか?

238 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 14:54:00 ]
誰ですか。勝手に話を進めないでくださいw
アプリに重い処理を乗せたくて起動者全員CPU30%とか10%づつシェアするプログラムを組み込みたいんです
制限かけないとずっと自分が使ってなくてもずっと100%で熱暴走が心配なのでCPU10%を提供に制限したいんです。
どうすればいいと思いますか?

239 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 15:36:17 ]
MFCにそういうライブラリが存在しなければスレ違い

240 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 17:17:46 ]
>>238
熱暴走が心配ってどんな環境だよ。
「起動者全員」とか「シェアする」とかサーバーアプリなの?
どうしても心配ならユーザー数に応じてSleepでもさせたら?

241 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 19:23:57 ]
CPU使用率を求める処理でCPUを食うから無意味

242 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 20:09:19 ]
>>241
えっ?

243 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 20:29:40 ]
お前ら >>237 も >>239 も見えないフリか。



244 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 20:50:46 ]
熱暴走については、昔の焼き鳥こさえてたAthlonの時代ならともかく、
今のCPUは温度が上がりすぎると勝手にクロックとか落とすので、特に問題ないな。
CPU利用率については、WindowsServerならプロセスがどれだけフル回転していようと、
一定時間毎に容赦なく他のプロセスに明け渡すから、無難なレスポンスが確保できそうかな、と。

245 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 06:57:04 ]
優先度でいつでも明け渡せるとしても、気分的に窮屈な感じしませんか?
自分の作ったプログラムはいつも全力で走るんですが、CPU見てると常に20%ぐらいでなんかまわってたりするんですが
、タスクマネージャで確認してるだけなんですが、この%って一定時間内のCPU100%使用率ってことなんですか?
そうでないとしたら%制限の方法を教えてください!

246 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 07:08:05 ]
>>240
thx!
今ってCPUというかハードの性能がすごくてほとんどの処理がすぐ終わって待機時間がすごくもったいない気がしたので
そういう部分だけの汎用的なCOMとかで自由に独自のソフトに組み込めたらよくないですか?
10%シェアでも100人いればパソコン10台分ですよね。フリーでそういうのあれば教えてください。
Sleepでどうやるかじっくり考えます。
どうもです

247 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 07:56:11 ]
無駄。つーか、スレ違いだと。
そもそも>234辺りの理屈は判っているのだろうか。

248 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 10:08:04 ]
スレ違いだと何度指摘されても話を続ける奴って何なの?
知的障害者なの?死ぬの?

249 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 18:56:45 ]
ム板は初心者にとってスレチが紛らわしいと思うけどこれはわかるだろ、な?

250 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 08:26:16 ]
どこで聞けばいいんでしょうか?
どうやって実現するかわからないのでターゲットのスレもわからないです。

251 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 09:10:06 ]
>>250
>この板はプログラムを作る人のための板です。
>あらゆる質問はまずすれ立てるまでもない質問はここでスレにしてください。


252 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 09:38:27 ]
thx

253 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 08:41:42 ]
MDIで一つのDocに複数のViewというのはなんとか判る。今回、
そのViewが一つ1枚とその他10枚が別のViewになる構成ってどうやるのがいいのだろう。
CMultiDocTemplateを11個AddDocTemplateすることになるのだろうか。
その場合、クラスを派生して10個にしておかないと10枚の区別がつかない気がするのだが。

ってことで、これから移動するからレスは夜になるが、誰かヒント頼む。



254 名前:デフォルトの名無しさん [2009/01/22(木) 09:50:02 ]
Viewクラスだけ異なるDocTemplate作ればよいのではないか?
たしか複数のAddDocTemplateをすると新規作成時にテンプレ選択ダイアログが出るようになるな

255 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 14:10:59 ]
ドキュメントテンプレートはアイコン、メニュー、ツールバーみたいなリソース関係で
ドキュメントごとじゃなくてドキュメントタイプごとに違うリソース使えるようにする

256 名前:253 mailto:sage [2009/01/23(金) 00:42:41 ]
今(帰って)きた。レスTHX。つーか、>253は出掛けとは言え酷いなぁw
結局、一つの必ず必要なViewだけドキュメントテンプレートにして、
他の10枚分は全部そのViewから必要に応じて開くようにしてしまった。
考えてみたら、新規作成ならテンプレート選択ダイアログが開くけど
ファイルオープンだとどうせ最初のテンプレートでしか開かないしね。
それとも選択する手段があるのかな?
# うーむ、今更真面目にMFCの勉強し直すのも面倒だなぁ……

257 名前:デフォルトの名無しさん mailto:sage [2009/01/23(金) 10:35:20 ]
同時に開く1個+10個が、常に同じファイル数でセットなのか、10個は
中身は異なるが同じクラスのオブジェクトなのか、そこらへんで全く
違ってくると思う。

開くファイルとビュー(ウィンドウ)を全てMDIのDoc-View構造に登録して
管理しなければならないかといえば、決してそうではない。

SDIだけど、ペイントブラシのように、開くのは1個の画像ファイルで、
一部を拡大表示するウィンドウを複数同時に表示できるなどというインター
フェースだって作れる。

例えばMDIベースでVisual Studio相当のアプリケーションを作成すると
して、独立した1個がプロジェクトファイル、残りのN個がプロジェクト
を構成するソース/ヘッダファイルだったとして、ソース/ヘッダファイル
はプロジェクトの一部としてだけでなく単独でも開ける。

プロジェクトの一部として開いたソース/ヘッダファイルは、プロジェクト
に相当するドキュメントクラスで管理することになると思う。ソース/ヘッダ
ファイルを単独で開いた場合、インターフェースに統一性を持たせるため、
一時的に無名のプロジェクトを作成し、それに管理させているような形に
なるのでは?

258 名前:デフォルトの名無しさん mailto:sage [2009/01/23(金) 11:33:53 ]
CHtmlViewをMDIで使いたいんですが、
このビューを単独でプロジェクトに追加して開くにはどうすればいいですか?
ドキュメントテンプレートでAddにすると、使わないのに.Docも作らなければいけないとおもうんですが。

259 名前:デフォルトの名無しさん mailto:sage [2009/01/23(金) 13:07:32 ]
>>258
クラスの追加もできない馬鹿は、MFCの参考書でも読んで勉強し直せ

260 名前:デフォルトの名無しさん mailto:sage [2009/01/23(金) 13:28:44 ]
もとからあるMDIViewにCHtmlViewを張り付けられなくないですか?
ビューを切り替えるだけのときオープンドキュしなきゃいけないので.Docもセットなのが嫌なんですが


261 名前:デフォルトの名無しさん mailto:sage [2009/01/23(金) 13:50:47 ]
>>260
Viewクラスの使い方ぐらい調べろ、阿呆が

262 名前:名無し募集中。。。 mailto:sage [2009/01/23(金) 14:25:44 ]
使わないDocがあってもいいじゃない
m_pDocTemplate->OpenDocumentFile(NULL) が楽なんじゃないかなぁ

263 名前:デフォルトの名無しさん mailto:sage [2009/01/23(金) 15:35:09 ]
そんな書き方ができるんですね!ありがとうございます。
>>261
死ね



264 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 10:50:59 ]
viewじゃないコントロールもあるよ

265 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 10:53:01 ]
CDCクラスからウィンドウハンドル(hWnd)って取得できますかね?

266 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 11:33:18 ]
つ CDC::GetWindow

267 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 11:34:22 ]
AfxGetMainWnd()->GetSafeHwnd();

268 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 16:11:14 ]
Visual Studio 2008 SP1にてMFCアプリケーションを作るんだけど、
ダイアログにも"視覚スタイルと色"を反映させたいのですが、
無理でしょうか?

"視覚スタイルと色"を反映させたSDIでも、
ダイアログ(CAboutDlg)だけが浮いたデザインの気がするので、
知ってる方が居られればご教授願いたいです。



269 名前:デフォルトの名無しさん [2009/01/31(土) 00:02:52 ]
MFCって今後衰退して、.NETがデファクトスタンダードになるんですか?
今更、MFCをやれなんて上長から言われたんだけど、MFCでガリガリ
かけるようになった頃にはVSから姿を消してたら淋しいな

270 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 00:05:27 ]
少なくともMSは、数年前まではそのつもりだったんだろうな

271 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 02:02:34 ]
MFCが消える頃に、やっとガリガリかける程度なら、
消えて当然のプログラマ。

272 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 02:49:03 ]
>>269
触ってみたけど変わんない
俺、ツリーのドラッグアンドドロップが簡単にできるとか
リストの更新関連がうまくできるようになってるとかそういうの期待したけど
結局、全然改善されてないところがアフォだと思った

今ならノウハウや情報がそろってるMFCのがいいよ
.NETは糞面倒臭い上に情報少ない

んでMFCやってから.NET入っても同じところに気を配らないといけないのは
まったく同じなので情報が豊富なMFCから入ったほうがいいと思う

273 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 05:42:34 ]
.NETの方が情報は豊富



274 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 08:47:27 ]
MFCでやってたらいざとなったら素APIに逃げるからな
って.NETでもP/Invokeに逃げたりするか

275 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 16:12:58 ]
時代はVB






[ 続きを読む ] / [ 携帯版 ]

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

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