- 1 名前:誰も立てないから・・ [2007/11/30(金) 22:40:42 ]
- Visual C++入門者・初心者からの質問を、
お兄ちゃん達が優しく、時には厳しく回答してくれるスレッドです。 ■質問するにあたって ・エラーや警告のときはエラーメッセージを書きましょう。 ・開発環境も書きましょう。 ・できるだけ具体的に。 質問の仕方については次のページが大変参考になります。 www.hyuki.com/writing/techask.html myu.daa.jp/osiete/ ■回答するにあたって ・回答する場合はその答えに至るための「コツ」も書いてあげると良いでしょう。 (MSDNのどの項目だとか、何のキーワードでGoogleするとか) ・ネタや煽りは軽く流しましょう。 過去スレ、関連スレなどは>>2-5。
- 331 名前:デフォルトの名無しさん mailto:sage [2007/12/25(火) 23:57:59 ]
- これからVisual C++ 2005 Proを使ってWindowsのGUIアプリを作成しようと思います。
C/C++の知識はあるのですが、CLI等はまだ詳しく知りません。 Visual C++を用いたアプリの作成の経験もありません。 このとき、どのようにしてGUIアプリの制作を始めるのが適切だと思いますか? 1. アプリのフォーム部分のみ.NET Frameworkを使って、 内部の処理はMFCやWinAPIを使ったC++で実装する 2. フォーム部分も内部も全て.NET(CLI)で実装 3. 全てC++とMFCで実装 言語自体が変わってしまう(C++でなくCLIになってしまう).NETはあまり使いたくないです。 ただGUIのデザインはMFCを使ったやり方よりも.NETのフォームデザイナを使用した方が やり易いので、そうい意味で.NETを使うのは魅力的です。 言語をとるか、GUIデザインのしやすさをとるか・・・
- 332 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 00:00:01 ]
- というか、NetFrameworkなフォームの内部をMFCで作るって、_でそ。
- 333 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 00:27:44 ]
- Visual C++のCLIでWindowsMediaPlayerコントロールを使用してAVIファイルを再生しようと考えているのですが、
参考書の通りに打ち込んでいるのですがビルドに失敗してしまいます。 Ctlcontrols->からのsetModeやpause、playを使用したコードが'WMPLib::IWMPSettings' のメンバではありません。というエラーになり、 WMPLib::WMPPlayState::wmppsPlayingというコードに対して、以下の2つのエラーが発生します。 @'WMPLib' : 識別子がクラス名でも名前空間名でもありません。 A'wmppsPlaying' : 定義されていない識別子です。 何か設定が必要なのでしょうか?ご教授お願いします。
- 334 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 00:33:09 ]
- MFCなら間違いはないよ、一応
- 335 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 00:35:03 ]
- >>331
クロスプラットフォームなフリーのGUIライブラリでも使ったらいいんでね?
- 336 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 03:24:20 ]
- >>333
参照追加した?
- 337 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 11:19:29 ]
- Visual C++6.0,および2005を使っています。
2005で作成したソースコードを6.0に移植したいと思っているのですが、 strcpy_sなどの関数が6.0で使用できず困っています。 バッファオーバーランなどの可能性を考慮すると、安易にstrcpyで置き換える事も出来ません。 やりようによっては、strncpyを使うという手段もありますが、これだとstrcat_sをどうしたら良いか分からなくなります。 素直に、VC6.0でもstrcpy_sや、strcat_sを使いたいと思っているのですが、どうしたら良いでしょうか? 何かしらのSDKをインストールすればいいんでしょうか。 一応、Microsoft .NET Framework SDK v2.0はインストールしてみたのですが、その中にこれらの関数は存在しませんでした。
- 338 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 14:17:28 ]
- >>336
COMコンポーネントでタブをチェックしてOKボタンを押しただけで参照は選択していません。 参照で何を追加すればよいのでしょうか?
- 339 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 14:29:33 ]
- >>338
どこの操作の話? ソリューションエクスプローラーからプロジェクトを右クリックして 参照・・・選んで新しい参照の追加選んでCOM選んでWindowsMedia Player 選んでOKってやったの?
- 340 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 15:24:40 ]
- >>339
ツールボックス上で右クリックしてアイテムの選択をクリックし、そこからCOMコンポーネントでWindowsMediaPlayerを追加しました。 そこ際、参照というボタンがあったのですがそれは何もしてなかったので。 ソリューションエクスプローラーからという操作はしていません。
- 341 名前:デフォルトの名無しさん [2007/12/26(水) 15:31:04 ]
- プリコンパイルドヘッダーって,
なければ自動的に作る,あれば使う,ってできませんか? 昔は /YX オプションがあったようなのですが. ヘッダファイル common.h をすべての *.cpp から インクルードしています. common.h にはよく使う ライブラリのヘッダをインクルードし,最後に #pragma hdrstop しています.
- 342 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 15:42:19 ]
- >>340
で、>>339はやったの?
- 343 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 15:52:09 ]
- >>342
それはやっていなかったので、今やってみたらエラー数が増えました。
- 344 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 16:05:46 ]
- よかったね
- 345 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 18:31:19 ]
- >337
strcpy_sや、strcat_sなんかたいしたことやってないから 自分で書くかソースコピーして移植
- 346 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 18:34:38 ]
- strcpy_sって何ぞ?
- 347 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 18:36:05 ]
- >>346
VC2003以前から2005以降にプロジェクトもって行くといやというほどお目にかかれるw
- 348 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 18:39:39 ]
- なんか警告対策だっけ、なんだっけ
- 349 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 19:53:27 ]
- 安全性を向上さしたMS独自の拡張関数。
警告出るけど今まで通りのANCII関数 をちゃんと使えてれば無駄な警告。
- 350 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 20:24:10 ]
- ここでstrsafe.hが奇跡の大復活を
>>341 stdafx.h/cppは駄目なん? /YXは無駄に再作成される事が多く、あまり役に立たなかったので削除された。 たぶん。個人的には無くして正解だと思う。
- 351 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 21:01:11 ]
- VC++ 2008 Expで、マネージコードとネイティブコードを混在させて
プログラムを作成する方法を教えてください。 プロジェクトはCLR、Win32のどちらで作成するのですか? 具体的にどのようにして2つのコードが識別されるのですか?
- 352 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 21:07:30 ]
- Std以上ならCRTのソースも付いてるお
- 353 名前:デフォルトの名無しさん [2007/12/27(木) 05:17:15 ]
- VC++ 6.0 SDKです。
半透明ウィンドウを作成しようと色々調べて、 取り敢えずuser32.dllから動的に関数を読み込むやり方までは出来ましたが、 新しい Windows Server 2003 PSDK を入れても SetLayeredWindowAttributes が未定義となってしまいます。 インストールした C:\Program Files\Microsoft SDK\ 以下のlibとincludeフォルダをそれぞれオプションでパス指定しましたがダメでした。 6.0では動的に確保しなければ、6.0以降のAPIは静的に使う事が出来ないのでしょうか・・・? PlatformSDKは最新のだと6.0に対応してないそうなので、 www.microsoft.com/msdownload/platformsdk/sdkupdate/psdk-full.htm から落として、CoreSDKのみインストールしました。 どうか助言のほどよろしくお願いします。
- 354 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 05:25:01 ]
- #define _WIN32_WINNT 0x0500
- 355 名前:デフォルトの名無しさん [2007/12/27(木) 10:23:41 ]
- 二つのスタティックライブラリ a.lib b.lib があります。
b.lib は a.lib の関数を呼び出しています。 b.lib を使ったアプリケーションを作成するにあたって、 a.lib も b.lib もリンカに指定しなければならないのですが、 b.lib をビルドするときに a.lib の必要なものも 取り込んでしまうということはできるのでしょうか? リンカに「あれがない、これがない」と連鎖的に ないないと言われないようにしたいのですが。 なお、すべて自作のものなのでライセンス上の問題はありません。
- 356 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 10:43:38 ]
- >>355
VC++の話だよな? b.lib 使うときに b.h もインクルードすると思うが、 そのb.h の中に、 #pragma comment(lib, "a.lib") #pragma comment(lib, "b.lib") 両方入れておけば? つか、a.hにa.libの設定を入れてb.hでインクルードすればいいか?
- 357 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 10:44:50 ]
- あとスタティックリンクなら、両方まとめて1つのlibにするとか・・・
- 358 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 10:59:33 ]
- 質問させてください.
今,あるプログラム内で_beginthreadにより別ウインドウを作成します.そのウインドウを作成する 具体的な関数(hogeとする)にデータを渡したいので構造体のポインタ(data *a)で渡しています. _beginthread(hoge,0,a)のかたちです. 関数hogeの中でdata *b;を宣言して b=(data *)aにして利用するのはできるのですが, 渡したデータを書き換えたあと(b->member=hogehoge;) もとのメイン関数の中でa->memberの値は書き換わっているのでしょうか? ポインタの基本的なことなんですが混乱してきました・・・ 今のプログラムでは書き換わっていません. どなたかご教授お願いします.
- 359 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 11:08:43 ]
- >>358
マルチスレッドでの共有変数の読み書きはタイミングの問題が付きまとうから ちゃんと同期してやらんといかんよ。
- 360 名前:デフォルトの名無しさん [2007/12/27(木) 11:09:39 ]
- 変わらない
- 361 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 12:33:37 ]
- >>359
おっしゃるとおり同期の問題でした. メイン関数側に書き換わったのを待つループを入れたら 解決しました.ありがとうございました.
- 362 名前:デフォルトの名無しさん [2007/12/27(木) 22:04:58 ]
- 質問です。
アニメーションを表示するためのプログラムを詳しい人に書いてもらったのですが 「アニメーション表示。vcproj」(?)というファイルを開いてデバックの開始をすると 「プリコンパイル済みオブジェクトはリンクされていません。イメージは動作しない可能性があります。」 というエラー表示がでます。 オブジェクトファイルというのはもらったファイルの中にあるのですが リンクするとは、どうすればいいのでしょうか? 教えてください。 ちなみに私はまったくC++わからないので 詳しく教えていただけるとありがたいです。
- 363 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 22:47:12 ]
- C++わからないならバイナリ貰えよ。
読めないならソース貰っても意味ないし。
- 364 名前:364 mailto:sage [2007/12/27(木) 23:48:57 ]
- Visual C++ で「プリコンパイル済みオブジェクトはリンクされていません。イメージは動作しない可能性があります。」というエラーが表示されます。
人にC++を使ってアニメーションを表示するプログラムを書いてもらいました。 もらったファイルの「アニメーション表示.vcproj」というファイルを開いてデバッグ開始をすると 「プリコンパイル済みオブジェクトはリンクされていません。イメージは動作しない可能性があります。」というエラーが表示されます。 調べたところオブジェクトファイルをリンクする必要がある、というところまではわかりましたが オブジェクトファイルと何をどうやってリンクさせるのかわかりません。 しかも送ってもらったファイルの中にはobject fileというものが3つ(AssemblyInfo,stdafx,アニメーション表示)あります。どれを使うのでしょうか? C++についてまったく知識がないので全くわかりません。 出来るだけ詳しく教えていただけたら幸いです。
- 365 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 23:56:27 ]
- リビルドで一発じゃね?
- 366 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 00:41:40 ]
- >>351
CLRのプロジェクトを作れ。 ソース内で#pragma unmanagedと書くと、そこからアンマネージコードになる。 #pragma managedと書くとマネージコードが始まる。 どっちも現れる前のファイルの先頭はマネージコード。
- 367 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 08:15:29 ]
- プロジェクトはWIN32プロジェクトです。
環境はXP VC++2005です。 参考書のリソースの追加という項目を読んでいるのですが、 「ファイル」→「新規作成」の中にリソーススクリプトという選択肢がある、 と参考書には書いてありますが、VC++2005には見つかりません。 代わりにリソーステンプレートを選択してやってみましたが、 "resource.h"が作成されていないため、エラーとなりました。 どうすればこのプロジェクトにリソースを追加することができるでしょうか? よろしくお願いします。
- 368 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 08:27:29 ]
- 2008 Express Editionをインストールしたのですが、
スタートメニューの[Visual Studio Tools]からコマンドプロンプトを起動すると ttp://www.uploader.jp/user/toollove/images/toollove_uljp00427.jpg このように表示されるのですが、何が問題なのでしょうか。
- 369 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 08:38:49 ]
- >>367
ソリューションエクスプローラの プロジェクト右クリック→追加→リソース
- 370 名前:デフォルトの名無しさん [2007/12/28(金) 09:35:34 ]
- >>368
PATH 環境変数の変な所に二重引用符が入っているかもしれないね.
- 371 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 10:44:55 ]
- >>370
その通りでした。ありがとうございます。
- 372 名前:デフォルトの名無しさん [2007/12/28(金) 19:51:28 ]
- 普通、テンプレートの定義はヘッダファイルでしますよね。
【hoge.h】 template <typename T> void foo(const T& t) { std::out << t << std::endl; } しかし、T が int と double しかありえないとわかっている場合、 (完全な)特殊化の宣言を翻訳単位に書くことでテンプレートの インスタンスが生成されていました、少なくとも Visual C++ 2005 では。 【hoge.cpp】 template <typename T> void foo(const T& t) { std::out << t << std::endl; } template <> void foo(const int&); template <> void foo(const double&);
- 373 名前:つづき [2007/12/28(金) 19:51:48 ]
- Visual C++ 2005 では hoge.h をインクルードしてそのつど
テンプレートをインスタンス貸し手もよかったし、 かわりに hoge.cpp をリンクするということもできました。 しかし Visual C++ 2008 では hoge.cpp をコンパイルしても hoge.obj にはテンプレートのインスタンスは含まれません。 コンパイラは「なに実体(定義)のない特殊化してるの?」 と無視するようで、当然リンカは「解決できない参照があるよ」 と怒ります。 この挙動はコンパイラ依存なのでしょうか?それとも何か C++ の標準が変わったのでしょうか?
- 374 名前:デフォルトの名無しさん [2007/12/28(金) 19:57:21 ]
- wr
- 375 名前:371=372 [2007/12/28(金) 20:13:31 ]
- 完全特殊化とインスタンシエーションを間違えてました。
template <> ってなにやってんだよ俺。 正しくは <> いりませんでした。
- 376 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 07:27:20 ]
- >>369
ありがとうございます。できました。
- 377 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 09:46:24 ]
- VS2005EEでコンパイルしたら.exeの他にいろんな拡張子のファイルができるんですが、
.exeを配布するときに同じフォルタにつめなければいけないファイルってどれですか? bccのときは、.exeだけで大丈夫だったんですが
- 378 名前:デフォルトの名無しさん [2007/12/29(土) 09:49:03 ]
- 小数点を扱うときに ふと思ったのですが、
.NET における System.Decimal みたいな型って、 アンマネージドなVC++に存在するんでしょうか? もし無いならば、精密な小数点計算ではどう対応してるのでしょうか? よろしくお願いします。
- 379 名前:377 mailto:sage [2007/12/29(土) 10:22:35 ]
- 自己解決しました。何もつめなくても大丈夫みたいでした。
- 380 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 10:48:58 ]
- >>378
System.Decimalは、 OLEオートメーションで使われていたDECIMAL型が元になっていると思う。
- 381 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 12:47:43 ]
- switch caseのcase内でreturnする際にもbreakをつけたほうがいいでしょうか?
- 382 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 13:13:12 ]
- >>381
VCというより、Cの話だな。 当然、イラン
- 383 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 13:54:43 ]
- >>382
ありがとうございました。
- 384 名前:337 mailto:sage [2007/12/29(土) 15:32:24 ]
- >>345
そうですね……似たようなコードを自分で書くことにします。
- 385 名前:デフォルトの名無しさん [2007/12/29(土) 15:34:47 ]
- VC++6.0です。
非MFCでモーダルダイアログを作成したいのですが、 DialogBoxとリソースを使わずにCreateWindow(Ex)で作る事は出来ますでしょうか・・・? 拡張スタイルにTOOLWINDOWを使うと、コントロールメニュー無し・タイトルバーあり・閉じるボタンのみありを作れるものの。 タイトルバーが小さな感じになってしまい、他のスタイルを何通りか試してみても、 コントロールメニューが残ったりと再現が出来ません。 マクロと書いてあったので、どうにか出来るかなと思って試行錯誤してますが、どうもこれと言った設定が見つかりません。 助言頂けたら幸いです。
- 386 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 17:33:55 ]
- >>145
むちゃくちゃ遅いですが回答ありがとうございました><
- 387 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 21:21:13 ]
- >>377
変にオプションをいじっていなければ、exeだけ。 ただし、別途ランタイムが必要。
- 388 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 21:54:00 ]
- x64でインラインアセンブラは使えないんですか?
まだ対応してないというだけで、新しい2008では使えるんですか?
- 389 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 22:07:42 ]
- >>388
使えないよ。 MSは組み込み関数を使えってスタンスなんだと理解してる。
- 390 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 22:54:36 ]
- >>380
ありがとうございました。
- 391 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 13:27:33 ]
- VS2005MFCです
カスタムコントロールのサイズを取得する、関数って準備されてない?
- 392 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 13:29:28 ]
- >>391
■MFC相談室 mfc18d.dll■ pc11.2ch.net/test/read.cgi/tech/1185917008/
- 393 名前:デフォルトの名無しさん [2007/12/30(日) 17:08:00 ]
- visual c++ 5.0 express
だとメイクファイルのエクスポートってできないんですか? どのバージョンならできます??
- 394 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 20:16:30 ]
- VC6.0は少なくともできる。ってか5でもできると思うけど持ってないから何とも・・・
- 395 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 22:57:37 ]
- express ???????????????????
- 396 名前:デフォルトの名無しさん [2007/12/31(月) 01:41:41 ]
- Visual C++ 2005 Express Editionについて質問します。
昨日始めたばかりで右も左もわかりませんが、よろしくお願いします。 コーディングする時に、スペースを打つと・が表示され、 TABを打つと、→が表示されますが、これを消すにはどうすればいいんでしょうか? 分かりにくかったらすいません、よろしくお願いします。。。
- 397 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 01:56:45 ]
- [編集]-[詳細]-[スペースの表示]
- 398 名前:396 mailto:sage [2007/12/31(月) 02:01:36 ]
- ググろうにもどうやってググればいいのか分からなくてほんと困ってたんです。
>>397さんありがとですmm
- 399 名前:デフォルトの名無しさん [2007/12/31(月) 03:08:41 ]
- >>394
ありがとうございました。
- 400 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 06:27:05 ]
- VC2008のExpression Editionで生成した.exeファイルを、開発した計算機以外で実行させるにはどうしたらよいでしょうか?
現状では『アプリケーションの構成が正しくないため・・』というエラーメッセージ表示と共に止まってしまいます。 取りあえずググった結果、2005では 構成プロパティ->ランタイムライブラリ の項を『マルチスレッドMT』にする事で解決できるという記事を目にしたので試して見たのですが、 実行できるようになっただけで、正しく動きません。 (.exeファイルをエントリポイントとした、いくつかの.dllで構成されたアプリケーションなのですが、.exeファイルの機能だけが実行されていて、他の.dllの機能が実行されている様子がない。因みにこれら.dllファイルもマルチスレッドMTで構成しています) これは2008では有効な対処法方ではないのでしょうか?それとも自分が開発したアプリに問題があるのでしょうか? どなたか解決方法に心当たりございましたら、御教授の程宜しくお願い致します。
- 401 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 06:37:15 ]
- >400 はスルーしとけ
答えてやってももろくなことはないぞ
- 402 名前:400 mailto:sage [2007/12/31(月) 06:56:31 ]
- 何か問題ありましたでしょうか・・・
- 403 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 09:00:38 ]
- >何か問題
対処法方 心当たりございましたら 御教授の程
- 404 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 10:37:06 ]
- >>400
多分、共有ライブラリのバージョンが合つてない。 とりあえずスタティックリンクにすれば直ると思う。
- 405 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 10:50:33 ]
- 実行ファイルには、単純にDLLのインポートライブラリをリンクしただけなのか、
起動後に動的に読み込ませているのか、はっきりしる。 C++/CLIなのか、MFC使っているのか、そこらへんも全て書け。 >.dllの機能が実行されている様子がない。 何を根拠に?
- 406 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 11:32:51 ]
- Visual C++ Express Editionの2008と2005、どちらを使おうか迷っているのですが、
C言語とDirectXの勉強に使うには、2008と2005どちらの方が良いですか。
- 407 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 11:38:58 ]
- >>406
どっちも使って使いやすいほうにすれば?その為の無料なんだし
- 408 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 11:47:11 ]
- 今って2008のExpressってのも出てるのか
知らんかった
- 409 名前:デフォルトの名無しさん [2007/12/31(月) 11:54:52 ]
- 2005じゃないの、今なら、勉強用なら
- 410 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 12:12:28 ]
- >>409
2008は扱いが難しいのでしょうか。 それとも、2005の方が情報が多くて問題解決がし易いという意味ですか。 2005の方が問題解決のヒントが多いのであれば、2005の方を使ってみます。
- 411 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 12:29:11 ]
- まあそりゃあ多いだろうよ
- 412 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 13:34:39 ]
- 勉強していくなら情報が転がってる2005のほうがいいでしょ
2008でやっていくなら自分でその情報を発信する側になるぐらいの勢いないとな
- 413 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 13:35:52 ]
- 2008はでたばかりだしね
- 414 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 14:50:38 ]
- VCって無料(フリー)のソフトですか?
- 415 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 14:51:13 ]
- いいえ
- 416 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 14:54:47 ]
- 機能制限された無料版もあるソフトです
- 417 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 14:55:19 ]
- ありがとうございます
- 418 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 15:11:59 ]
- Visual C++ 2005 Express Edition、Windows SDKの環境での質問です
リソースエディタでタブコントロール付きのダイアログボックスというものを 作ってみたのはいいのですが、これをアプリケーション内で利用するにあたり、 MFC等を使わずに実装する方法がよくわかりません 別のダイアログを貼り付ける、みたいな話はあるようなのですが 実際どのようにコーディングするのかがわからないのです タブコントロール実装のためのコーディング手順などを教えていただきたいです 長くなるようでしたら、このあたりがわかるようなサイトなどありましたら教えて下さい よろしくおねがいします
- 419 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 15:34:26 ]
- 知ってるけど教えようがない
- 420 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 15:39:29 ]
- コーディング手順ってのもまた珍妙な語だな、考えてみると
- 421 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 16:43:56 ]
- だいたいはプロパティシートを使うんじゃないの。
- 422 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 16:50:56 ]
- MFC等を使わずに実装する方法がよくわかりません
- 423 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 17:09:19 ]
- タブはボタンみたいなものだよ
ボタン押した時に何をするかは作る人の勝手だし、 タブで何をするも作る人の勝手
- 424 名前:418 mailto:sage [2007/12/31(月) 17:51:23 ]
- 質問の仕方が悪かったでしょうか?
普通にリソースエディタでタブコントロールを追加したダイアログボックスを ただDialogBox()関数で呼び出しても、何もない四角が表示されるだけなのですが、 これを選択できる状態にするには具体的にどういった手順を踏めばよいのか、 別のダイアログボックスを貼り付けるにはどうすればよいのかが知りたいです。 よろしくお願いします。
- 425 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 18:17:52 ]
- >>424
www.kumei.ne.jp/c_lang/sdk/sdk_69.htm ↑直接的にはこれだけど、他のページも見てみると良いよ。
- 426 名前:418 mailto:sage [2007/12/31(月) 19:52:13 ]
- >>425
ありがとうございます そのサンプルだとタブコントロールの作成自体が自前だったので多少混乱しましたが GetDlgItem()でリソースエディタで作ったタブのハンドルを取得する事で 項目追加については解決しました そちらのソースを見た感じだとタブ用のウィンドウの上に後からボタンを作っているようなのですが、 リソースエディタ上でタブの上に見えるようにボタンを配置し、それを表示非表示で切り替えたり する事はできないのでしょうか? 手動で作るか、別のダイアログを固定位置の子ウィンドウとして呼び出すとかしかないでしょうか
- 427 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 20:13:34 ]
- そりゃ、ShowWindow(GetDlgItem(**),SW_HIDE)とか駆使しればできるだろうけどさ。
ダイアログエディタが混雑するぜ。
- 428 名前:デフォルトの名無しさん mailto:sage [2008/01/01(火) 14:40:45 ]
- MSDNて使いにくいね。
特にC言語やC++言語の標準ライブラリの調べにくさはC++Builderのヘルプの比ではない。
- 429 名前:418 mailto:sage [2008/01/01(火) 15:17:20 ]
- ダイアログをタブコントロールの子ウィンドウとして呼び出して
なんとか実装できました どうもありがとうございました
- 430 名前:デフォルトの名無しさん mailto:sage [2008/01/01(火) 22:07:34 ]
- VC関係のサイトを回っていると、何の説明もなく
throw "あいうえお"; みたいな記述を良く見るのですが、これはどういう意味なのでしょうか? プログラムを実行させるとランタイムエラーメッセージが出て処理が止まるのはいいのですが たとえば配布したプログラムでこのthrowが呼び出されてしまったときに、 この"あいうえお"という文字列は、何をもって確認するのですか?
- 431 名前:デフォルトの名無しさん mailto:sage [2008/01/01(火) 22:09:12 ]
- >>430
VC以前の問題。 throwって知ってる?
|

|