★初心者にVisual C++を教えるスレ★

このエントリーをはてなブックマークに追加
952デフォルトの名無しさん:02/09/01 22:23
“C++”って何て読むんですか?
953デフォルトの名無しさん:02/09/01 22:24
しーぷらぷら
しーぷらすぷらす
しーぷら
しーいんくりめんと
ぷらぷら
954しーたすたす:02/09/01 22:30
に一票
>>954
中国人ハケーン
956デフォルトの名無しさん:02/09/01 23:23
MDIで最初から複数の窓を表示させたい場合は
どのへんをどのようにいじればいいですか?
>>956
MFC使ってるならCXXXApp::InitInstance()の中の

// コマンドラインでディスパッチ コマンドを指定します。
if (!ProcessShellCommand(cmdInfo))
    return FALSE;

この部分を好きなだけコピーしる
958#:02/09/01 23:39
>952
シースラスラ
コメントが//で書けるようになって便利になったC言語の意。
959919:02/09/01 23:43
>>958
ワロタ。
俺はやっぱしーぷらぷらだな。
960 :02/09/01 23:51
Cを一つインクリメントしてるんで、”ディー”だろ。
しーぷらぷらだって(w
オヤジはセンスねえなあ。
962デフォルトの名無しさん:02/09/02 00:12
>>957
ありがとうです。できました。

それぞれ大きさ指定したりすることはできますかね・・・
963to:02/09/02 01:15
949>>
debugフォルダ内のファイルは全て削除してリビルドをかけているんですけどエラーがでます。
作業フォルダの指定はあってます。。

951>>
コンパイルは特定のファイルだけじゃなくてリビルドしています。

以前はコンパイルが通っていてある処理をコメントアウトしてから出てくるようになったんです。。
変更前の状態に戻しても出てくるようになりなぜだかわかりません。
何かしてはいけないことをしていると思うのですが、、、
stdafxは手を加えていません。
964961:02/09/02 01:20
大体Z80をズィハチジュウとか言ってるし
もう見て乱内。
965デフォルトの名無しさん:02/09/02 05:22
DirectShowを使ってUSBカメラから連続取り込み+フレーム間の差分をとって
表示ということをしているのですが,1フレームあたりの処理時間を短くしたいの
ですが,1フレームあたり30-35msecあたりまでになると,頻繁に処理が遅くなる
ことがあります(結果として,1フレームあたりの処理時間が長くなる).
対処療法として下記の(a)の部分にsleepを入れて時間を少しかけてやると
処理が遅くなるということがなくなります.
# あと,試しにその上の4行で時間稼ぎもしてみましたが,うまくいきませんでした.

しかし,このsleepの時間分をとると1フレームあたりの処理時間が30msecをきる
ので,なにか原因とかわかりましたら教えてもらえないでしょうか.

ウインドウ関連の処理はスレッドの中で処理しています.
あと描画はSetDIBitsToDeviceを使っています.
966デフォルトの名無しさん:02/09/02 05:22
while(1){
dwStart = timeGetTime();
// 1フレームキャプチャ
hr = pGrab -> GetCurrentBuffer( &bmsize, (long *)buf );
flame++;
CopyMemory(buf2, buf, bmsize);
if(flame==0)CopyMemory(buf3, buffer, bmsize);
// 1時刻まえのフレームと差分をとる.
for( i = 0;i < bmsize ;i++){
buf2[i]= abs( buf[i] - buf3[i] );
}
// 結果をウインドウ1(現フレームの画像)とウインドウ2(差分の結果)に表示
// Img01,Img02はHWNDとビットマップをくっつけた構造体
InvalidateRect( Img01.hwnd, NULL, FALSE);
InvalidateRect( Img02.hwnd, NULL, FALSE);
if( kbhit() ){
getch();
hr = pMC -> Pause();
printf( "終了:q 、再開:その他のキー\n" );
if(getch() == 'q')break;
pMC -> Run();
}
CopyMemory( buf3, buf ,bmsize);
while(1) {
dwEnd = timeGetTime();
if(dwEnd - dwStart > 33)break;
}
Sleep(10); // (a)
}
関係ないけど dwStart と dwEnd の2つも要らないでしょ。
while(1){
dwEnd = timeGetTime() + 33;

処理

while(timeGetTime() <= dwEnd) Sleep(0);
}
とかの方がよくない?
かなり混乱気味です。
VC++を使っているのですが,プログラムを,コンパイル→実行するとdebugライブラリというダイアログが開いて,
BLOCK_TYPE_IS_VALIDという文字が出ています。
なんなんでしょうか?
969968:02/09/02 08:51
ポインタを持ったら,なにか絶対指せということらしいですね?
推測ですが
>>968
マルチごくろうさん
コンボボックスのことについて聞きたいのですが
コンボボックスは、最初何も選ばれていない状態になっていますよね??
コンボボックスのリストの中からデフォルトで何か選ばれている状態にしたいのです。
どうすれば、初期値を設定できますか?
972:02/09/02 12:17
>971
cmbTest.InsertString("内容1");
cmbTest.InsertString("内容2");
cmbTest.InsertString("内容3");

cmbTestSetCurSel(1);//これで内容2が選択される。
すぐわかるメンバなんだから
参考書に載ってないからってすぐ聞かず、
ヘルプ見る癖つけた方がいいよ?
なにより自分の為になるからさ。
973965=966:02/09/02 12:46
>>967
あっ、たしかに2つはいらないですね。

それにしても本題の方が全然解決しないです。。。
974:02/09/02 15:54
タスクトレイに格納したアイコンから
表示されるツールチップに
表示される直前に、システム時刻を取得して、
それをツールチップの文字列にしたいのですが、
表示される直前というのをどうやって取得したらいいのかわかりません。

WindowProc(UINT message,LPARAM lParam,WPARAM wParam)
{
if(message==WM_XXX)//WM_XXXは格納時に設定したWM+APP+???
{
if(lParam==WM_○○○○○)
{//ここに現在時間を取得、ツールチップ変更のコードを書く
}
}
}

○○○○にはなにを入れたらいいでしょうか?
よろしくお願いします。
方法はない。
タスクバー(explorer)をサブクラス化したりフックしたりして
ツールバー関連のメッセージを横取りするとか、
1秒毎に文字をアップデートするとか。
976974:02/09/02 16:24
>975
なるほど、すばやい回答ありがとうございます。
リアルな話し、一秒ごとにタイマーでShell NotifyIconで
設定しなおすのが一番楽に思えるのですが、
ツールチップごときの為に
一秒ごとに処理させるというのもCPUの負担的にどうかと
思います。
これしきの処理は現代のCPUでは
負担など感得なくていいレベルなのでしょうか?
977974:02/09/02 16:44

>負担など感得なくていいレベルなのでしょうか?
訂正です。
考えなくていいレベルなのでしょうか?

でした、すみません。

すみれーの花ー咲くー頃ー
>>978
何月だ? それ
>>976
2000以降でバルーン型ツールチップなら、表示する前にメッセージがくるみたいね。
処理の重さ如何にかかわらず、常に CPU負荷を考えながらコーディングすると
いうのは、大事なことだと思います。

で何も常に更新しなくても、アイコン領域にカーソルがやってきたことは、
通知メッセージの WM_MOUSEMOVEで分かるわけだから、それを更新の
トリガーにすればよいのでは?
更新を止める判定とか、その辺のロジックがちょっと複雑になるかもしれんけ
ど。
981974:02/09/02 17:43
>980
>WM MOUSEMOVE
なるほど、そういう考え方もあったんですね、
全然ひらめきませんでした。
単純にMouse Move に反応するように書くか
どうかは今から考えてみますが、
そっち方面で考えてみるといろいろ出てくるかもしれません。
ありがとうございました。
VCに何度も挫折している人は
DelやVBなどのVC以外の開発ツールをアンインストールするべし
VC++でそこそこのソフトを作ると高い確率で雑誌に掲載されるのは何故だろうか。
作るのは大変だと思うがそんなにソフトを公開してる奴少ない?
VC++やってる人はつまらんソフトが雑誌にのるのは恥じだと思ってるのだろうか。。
別にVC制だと掲載率高いわけじゃないと思うが
CGI(Perl)は50本中1つ乗っただけ。
VC++は8本中4本。
VBとかでソフト公開してる奴は山の様にいそうなものだけど・・
986デフォルトの名無しさん:02/09/02 18:48
次スレ立った?
        まもなくここは 乂1000取り合戦場乂 となります。

      \∧_ヘ     / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ,,、,、,,, / \〇ノゝ∩ < 1000取り合戦、いくぞゴルァ!!       ,,、,、,,,
    /三√ ゚Д゚) /   \____________  ,,、,、,,,
     /三/| ゚U゚|\      ,,、,、,,,                       ,,、,、,,,
 ,,、,、,,, U (:::::::::::)  ,,、,、,,,         \オーーーーーーーッ!!/
      //三/|三|\     ∧_∧∧_∧ ∧_∧∧_∧∧_∧∧_∧
      ∪  ∪       (    )    (     )   (    )    )
 ,,、,、,,,       ,,、,、,,,  ∧_∧∧_∧∧_∧ ∧_∧∧_∧∧_∧∧_∧
      ,,、,、,,,       (    )    (    )    (    )    (    )
例の奴くるかな?w
CGIとWinアプリを同列に語ってる奴がいるスレはここか
こねぇか・・・ 
991991!:02/09/02 18:53
992992!:02/09/02 18:54
993993!:02/09/02 18:55
994SITNAM:02/09/02 18:55
俺が1000を貰う
995994!:02/09/02 18:55
996SITNAM:02/09/02 18:56
もらったー!
997デフォルトの名無しさん:02/09/02 18:56
出た〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜SITNAM
VCなんかやめてC#をしろ
9991000!:02/09/02 18:56
とったー
1000デフォルトの名無しさん:02/09/02 18:56

|    今だ!
  ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄
 ヒョイ ,  ∧∧
   ( _(,,゚Д゚)     ミ  ___
  ⊂___,.つつ      て.  ) クルリ
彡               ⊂  .ノ
               ("  )           ∧∧     / ̄ ̄ ̄ ̄ ̄ ̄ ̄
.               ∨∨ 彡       (,,゚Д゚)  <  1000ゲットォォォ!
                           /  ,つ    \_______
                          〜、 ノつ  スタッ !
                           .(/
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。