くだすれC++Builder(超初心者用)その4
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2009/10/23(金) 09:06:16もしくは質問者自身何が何だが分からない質問を勇気を持って書き込むスレッドです。
C++Builder使いが優しくコメントを返しますが、
お礼はC++Builderの布教と初心者の救済をお願いします。
Embarcadero Home Page
http://www.codegear.com/jp/
<過去スレ>
くだすれC++Builder(超初心者用)
http://pc8.2ch.net/test/read.cgi/tech/1117225464/l50
くだすれC++Builder(超初心者用)その2
http://pc10.2ch.net/test/read.cgi/tech/1144308804/l50
くだすれC++Builder(超初心者用)その3
http://pc11.2ch.net/test/read.cgi/tech/1171219191/
<兄妹スレ>
くだすれDelphi(超初心者用)その50
http://pc12.2ch.net/test/read.cgi/tech/1246340765/l50
0360デフォルトの名無しさん
2010/06/12(土) 12:26:33プロジェクト→オプション→バージョン情報とかじゃね?
ビルドの日付を埋め込むオプションは見つからんなあ
0361デフォルトの名無しさん
2010/06/12(土) 13:54:38そうですか
バージョン情報のチェックは入ってない状態です
何で微妙に違うファイルが毎回出力されるんだろう
というかこれってうちだけの現象なんでしょうか
0362デフォルトの名無しさん
2010/06/12(土) 14:00:130363デフォルトの名無しさん
2010/06/12(土) 16:18:13オプションはない
それでも2バイト前後だから10バイト以上異なるならデバッグ情報ジャマイカ?
0364デフォルトの名無しさん
2010/06/12(土) 20:30:52大体10バイト程度ですが近くにPE\0の文字も確認できるのでそれで間違いなさそうです
勉強になりました
どうもありがとうございます
0365デフォルトの名無しさん
2010/06/13(日) 16:08:550366デフォルトの名無しさん
2010/06/13(日) 16:12:430367デフォルトの名無しさん
2010/06/13(日) 17:11:23どのような設定が必要かご教示お願いします。
FastMM4.pasやFastMM4BCB.cppをプロジェクトに組み込んだのですが、
終了時にメモリリークのダイアログしかでてこないので、どこでリークしているのか
良く分かりません。
0368デフォルトの名無しさん
2010/06/13(日) 21:19:22定義済の状態にしてFastMM関係のソースをコンパイルすればいいはず(*.objか*.dcuを
一旦削除することで)。FastMM_FullDebugMode.dllを配置するのも忘れずに。
0369デフォルトの名無しさん
2010/07/02(金) 20:18:110370デフォルトの名無しさん
2010/07/28(水) 10:55:56これのSTLのfstreamって
4GB超えるファイルは扱えないんでしょうか?
ifstream in(file_path, ios::binary);
in.seekg(0, ios::end);
int64_t file_size = in.tellg();
とやると
小さなファイルでは正しくファイルサイズが返ってきますが
4GB超えるファイルを開くと file_size には0xFFFFFFFFFFFFFFFFが返ってきます
0371デフォルトの名無しさん
2010/07/28(水) 20:52:19std::ifstream::tellg()はstd::pos_typeを返す
従ってstd::pos_typeの内部表現次第と言うしかない
つまり処理系依存
これを避けるのはWin32を直接触るしかなかろう
0372デフォルトの名無しさん
2010/07/28(水) 21:32:11シーケンシャルに4G超えを読み取ることは出来る(はず)が
seekは出来ない(_lseeki64とかを使う)。
また、tellで得られる値も32bit。
VC++がそういう仕様になっているので
他の処理系もそれに合わせてるんじゃないかとも思う。
0373デフォルトの名無しさん
2010/08/09(月) 13:43:51>delete this;
って、
アリですか?
0374デフォルトの名無しさん
2010/08/09(月) 15:28:55Action = caFree;
でok
0375デフォルトの名無しさん
2010/08/09(月) 17:33:13検索したらイパーイ出てきました。
>ttp://kakinotane.s7.xrea.com/delphi/d2/d035.html
>ttp://homepage1.nifty.com/MADIA/delphi/delphi_bbs/200608/200608_06080037.html
やっぱ、delete thisすると、フォームを閉じる前にオブジェクト破棄しちゃうわけですね?
それとも、C++ のクラスで、自オブジェクトのdeleteは許可されてないとか?
0376デフォルトの名無しさん
2010/08/09(月) 18:32:58言語仕様としては許されているが、実行時に解放済みメモリポインタをアクセス、または多重解放が起きる
可能性が高い。(かつコンパイル時には発見しづらいので、デバッグしにくいバグを抱える原因となる)
Google で Delete This で探せばいくらでも資料が出てくるよ
VCL に限った話をすると、OnClose の後に、Windows OS からメッセージが飛んでくる場合があり、
予想外のことが起きる可能性が高いです。OnClose は(可視)なウィンドウ実体の、終了直前に呼ばれる物。
そのあと、いろいろ後始末をしてから、C++ ランタイムとしてのメモリ実体が削除されることになっています。
なので、直接削除は避けた方が良いですよ。
または、ちゃんと設計して見切って使うように。
0377デフォルトの名無しさん
2010/08/10(火) 09:27:230378デフォルトの名無しさん
2010/08/10(火) 19:47:030379デフォルトの名無しさん
2010/08/10(火) 21:56:57でなんだって?
0380デフォルトの名無しさん
2010/08/22(日) 22:51:01関数プロトタイプ宣言で以下の様に記述すると、
「エラーE2303 型名が必要」と表示されます。
第2引数のTtrackBarを削除するとエラーは出ません。
何がいけないのでしょうか?
Func( TEidt *Edit, TTrackBar *Bar, DWORD num );
0381デフォルトの名無しさん
2010/08/22(日) 22:53:40BCB6Pro+SP4
XP32bit
です。
0382デフォルトの名無しさん
2010/08/23(月) 00:34:220383デフォルトの名無しさん
2010/08/23(月) 00:35:520384デフォルトの名無しさん
2010/09/06(月) 08:04:540385デフォルトの名無しさん
2010/09/06(月) 08:33:50TListViewにて
ListView1->ViewStyle=vsReport;
とし、列を複数表示します。
マウスを使って、先頭の列を他の列に移動します。
そして先頭の列の状態を取得すると
ListView1->Columns->Items[0]->Caption;
ListView1->Columns->Items[0]->Width;
ListView1->Columns->Items[0]->Alignment;
ListView1->Columns->Items[0]->ID;
ListView1->Columns->Items[0]->Index;
上記のWidthだけが、入れ替え前の列幅値となってしまいます。
他の値は、ちゃんと入れ替え後の列の値が取得できます。
マウスで列の入れ替えを実行したあとに、各列の幅を取得するにはどうしたら良いのでしょうか。
0386デフォルトの名無しさん
2010/09/06(月) 23:24:52まだ
Delphiは来年、C++Builderは再来年の予定
0387デフォルトの名無しさん
2010/09/07(火) 14:08:060388デフォルトの名無しさん
2010/09/07(火) 21:15:160389デフォルトの名無しさん
2010/09/08(水) 11:23:180390デフォルトの名無しさん
2010/09/14(火) 16:41:48別サーバーに定期的に取りたくて
サーバーA(元)はSQLConnection1とSQLTable1で接続し、
サーバーB(先)はSQLConnection2とSQLTable2で接続したのですが・・・
そこからどうやって各テーブル内容をAからBに作成したらいいのですか?
ちなみにBにはデータベースはありますが、テーブルは無いので
テーブルを作成して全レコードをコピーしたいのですが・・・
0391デフォルトの名無しさん
2010/10/02(土) 08:39:47細かいところをVisualC++で直すとかできますか?
0392デフォルトの名無しさん
2010/10/02(土) 08:43:42くだすれに来るような人には無理。
よくある現実解は、ガワだけ CBuilder で作り実作業は VC で作った DLL に任せる。
0393デフォルトの名無しさん
2010/10/02(土) 12:26:33つまり処理系はDLLでもう弄くれないようにして
そいつをビルダーで呼び出すということですか
opengl使ったソフトウェアを組みたかったのですが
なかなか大変ですね。
加えて質問なのですが
現在は試用版しかないという理解でよいですか?
Turbo C++ Explorer 日本語版 というものが使えれば
DLしたかったのですが…難しそうですね
0394デフォルトの名無しさん
2010/10/02(土) 12:54:53試用版しかない、という理解はそれでOK。
0395デフォルトの名無しさん
2010/10/02(土) 13:54:48http://www.turbomirror.com/
0396デフォルトの名無しさん
2010/10/02(土) 15:54:400397デフォルトの名無しさん
2010/10/07(木) 23:55:35C++Builderでのwindowsアプリケーションを始めるにあたり
0398デフォルトの名無しさん
2010/10/08(金) 19:10:512010やXEじゃ改善されてるの?
0399デフォルトの名無しさん
2010/10/09(土) 11:12:210400デフォルトの名無しさん
2010/10/09(土) 14:21:420401デフォルトの名無しさん
2010/10/09(土) 16:37:25パッケージには何も書いてないけどね
0402デフォルトの名無しさん
2010/10/09(土) 16:56:370403デフォルトの名無しさん
2010/10/11(月) 15:08:00これって結局Win32APIのラッパーウェアってこと?
0404デフォルトの名無しさん
2010/10/11(月) 15:43:26VCLはWin32を適度な抽象度でラッピングしている、って意味なら、そうですね。
0405デフォルトの名無しさん
2010/10/11(月) 16:09:350406デフォルトの名無しさん
2010/10/12(火) 19:39:140407デフォルトの名無しさん
2010/10/20(水) 22:01:44環境はBCB6です。
0408デフォルトの名無しさん
2010/10/21(木) 06:57:14親フォームに対するリージョンの設定ってことになると思うけど。
0409デフォルトの名無しさん
2010/10/21(木) 11:16:05基本的な事が解って無いので
簡単な文字列検索をやってみたいんですが・・・。
Edit と Button と Memo とを貼り付けたフォームで
Button の OnClick イベントで
TRegexp ex((char *)Edit1->Text.c_str()); // キャストに問題?
pos = ex.find((char *)Memo1->Text.c_str(), &len, start); // 同じく...?
こうすると、コンパイルは通りますが、検索する文字が有るにも関わらず、
posには「-1」しか返ってきません。
どうしたら上手くいくでしょうか...。(多分、おばかな質問ですみません)
0410409
2010/10/21(木) 11:55:20TRegexp が Unicode対応じゃないので、ANSIに変換すればいいんですね...。
オーバーヘッドが生じるとは思いますけど。
0411デフォルトの名無しさん
2010/10/21(木) 14:15:59ソース一個ずつ順番にコンパイルしていくのが遅くて辛抱たまらんので
せっかくマルチコアCPUが普及してきてんだから .obj 作るとこくらい
並列で複数同時に実行できんかいなと考えてるんだが、なんかいい手ないか?
バッチファイル的なもんでディレクトリ下の .cpp まとめてコンパイルかけるとか
そういう形ができそうな気がしてるんだけど・・・どう?
0412デフォルトの名無しさん
2010/10/21(木) 19:00:25ありがとうございます。
少し語弊があったのですが、中抜きというより、LabelやImageなどの外周に黒枠を付けた感じにしたいのですが可能でしょうか
よろしくお願いします。
0413デフォルトの名無しさん
2010/10/21(木) 20:22:180414デフォルトの名無しさん
2010/10/22(金) 10:11:07少し語弊どころか何したいのか理解できん
0415デフォルトの名無しさん
2010/10/22(金) 12:04:08コンポーネントに枠をつけたいのね?
TLabel に枠をつけたいなら
TStaticText で代用して BorderStyle = sbsSingle とか
その他のコンポーネントなら
TPanel に BorderStyle = bsSingle と BevelOuter = bvNone を指定して
このパネルん中に TImage なり何なりおいて Align = alClient
もっと具体的にやりたいことを説明してくれんと。
0416デフォルトの名無しさん
2010/10/22(金) 12:18:110417デフォルトの名無しさん
2010/10/23(土) 18:12:15http://www.fftw.org/install/windows.html 内に書かれている
implib -a fftw3-3.lib libfftw3-3.dll
で作成したlibは、BCB6.0で動作確認できました。
同様の手順をBuilder2009のimplibで試したところ、
libは作成できますが、デバッグ時に
[ILINK32エラー]Error: 未解決の外部参照'_fftw_malloc'が …\DEBUG\FILE1.OBJから参照されました
となり実行できません。
どなたか解決のヒントをいただけないでしょうか、お願いします。
0418デフォルトの名無しさん
2010/10/23(土) 18:14:20http://www.fftw.org/install/windows.html 内に書かれている
implib -a fftw3-3.lib libfftw3-3.dll
で作成したlibは、BCB6.0で動作確認できました。
同様の手順をBuilder2009のimplibで試したところ、
libは作成できますが、デバッグ時に
[ILINK32エラー]Error: 未解決の外部参照'_fftw_malloc'が …\DEBUG\FILE1.OBJから参照されました
となり実行できません。
どなたか解決のヒントをいただけないでしょうか、お願いします。
0419デフォルトの名無しさん
2010/10/23(土) 20:57:33ツールパレット
DockPane
DockWindow
とかの組み方の載っているサイトおしえてください
0420デフォルトの名無しさん
2010/10/25(月) 18:52:13上下スクロールがめんどいので、同じクラスを分割入力
できないかと
0421デフォルトの名無しさん
2010/10/25(月) 21:57:480422デフォルトの名無しさん
2010/10/25(月) 22:04:450423デフォルトの名無しさん
2010/10/25(月) 22:28:03MinGWでコンパイルしてあるじゃんこれ
基本的にexeとdllは同じコンパイラで作成した方が何かといいよ
違うと変な問題で頭を悩ます事になる
0424デフォルトの名無しさん
2010/10/25(月) 22:33:58ども。
0425デフォルトの名無しさん
2010/10/26(火) 08:29:10ありがとうございます。
元のソースからコンパイルして使うということでしょうか、
やってみます。
0426デフォルトの名無しさん
2010/10/26(火) 22:22:14フォームの場所に関わらずクリックを検出するにはどのようにすればよいでしょうか
0427デフォルトの名無しさん
2010/10/26(火) 22:38:210428デフォルトの名無しさん
2010/11/02(火) 15:52:070429デフォルトの名無しさん
2010/11/02(火) 21:56:500430デフォルトの名無しさん
2010/11/03(水) 15:36:38ども
0431デフォルトの名無しさん
2010/11/06(土) 21:12:34マルチコアを使ったコンパイルどうやるんですか
0432デフォルトの名無しさん
2010/11/16(火) 11:11:09現在のカーソル位置を取得する関数はあるのでしょうか
0433デフォルトの名無しさん
2010/11/16(火) 11:42:03* + あります!
n ∧_∧ n
+ (ヨ(* ´∀`)E)
Y Y *
0434デフォルトの名無しさん
2010/11/16(火) 16:46:210435デフォルトの名無しさん
2010/11/18(木) 14:26:07XEにアップグレードするメリットってなんかありますか?
0436デフォルトの名無しさん
2010/11/18(木) 14:39:470437デフォルトの名無しさん
2010/11/19(金) 10:54:09BCB関連では大きな変化がないよね
クロスプラットフォームとかどれくらい実用的なんだろ?
0438デフォルトの名無しさん
2010/11/20(土) 21:14:44どうしたらよいのでしょうか?
とりあえずソースは無いです
0439デフォルトの名無しさん
2010/11/25(木) 14:10:37選択できるようにするにはどうすればよいでしょうか?
よろしくおねがいいたします。
0440デフォルトの名無しさん
2010/11/26(金) 12:22:32どこがわからないのかな。
コンボボックスにフォーカスが来たことを検知する方法なら
OnEnterイベント。
コンボボックスのドロップダウンなら
ttp://www.gesource.jp/weblog/?p=391
0441デフォルトの名無しさん
2010/11/27(土) 15:33:23どなたかよろしくお願いします。
0442デフォルトの名無しさん
2010/11/27(土) 16:17:41Rowプロパティを設定すればよかったみたいデス
スレ汚しサーセンwww
0443デフォルトの名無しさん
2010/12/01(水) 12:50:20カーネルは全てのSM、SPにほぼ同じ命令がされるんですよね?
GT200で、
__shared__ int i;
for(i=0; i<8; i++)
とした場合ループせずに終わったりはしませんか?
0444デフォルトの名無しさん
2010/12/01(水) 14:28:220445デフォルトの名無しさん
2010/12/01(水) 15:37:140446デフォルトの名無しさん
2010/12/03(金) 23:17:48Down=trueのSpeedButtonのEnabledをfalseにしたら、Downがtrueなのかfalseなのかわからない表示状態になってしまうので、、、
操作は不可、でも直前の操作で押下されていたかは視覚的に確認可能っていう形にしたいです。
どなたかご教授願います。
0447デフォルトの名無しさん
2010/12/03(金) 23:33:43解決方法としては微妙だが。
0448446
2010/12/03(金) 23:59:27対応策の候補として覚えておきます。
ありがとうございます。
ただ、ボタンの数が非常に多いので再配置が少し手間取りそうです、、、
現在SpeedButtonはOnClickで全て共通の関数を呼んでるので
そこに組み込むような形が理想なのですが、コードのみでの実現は難しいでしょうか?
0449デフォルトの名無しさん
2010/12/04(土) 11:22:53SpeedButtonを全部選択
Ctrl+x
Panelクリック
Ctrl+v
0450デフォルトの名無しさん
2010/12/04(土) 13:13:20ボタンを選択→パネルにドロップ
0452デフォルトの名無しさん
2010/12/19(日) 13:30:14パスで指定したファイルをエクスプローラから開くにはどうすればよいでしょうか。
(画像を開く場合、標準のビューアが開くといった感じです)
0453デフォルトの名無しさん
2010/12/19(日) 14:34:490454デフォルトの名無しさん
2010/12/21(火) 16:33:32WinXP BCB6.0です
0455デフォルトの名無しさん
2010/12/21(火) 21:31:29MDIの子ウィンドウは存在している限り表示されます。これはWindows側の制限によるものです。
0456デフォルトの名無しさん
2010/12/22(水) 12:26:39このグリッドラインの色を変更する方法を教えてください
0457デフォルトの名無しさん
2010/12/24(金) 00:03:34ありがとうございます。
もう一つ質問お願いしたいのですが、開発環境によってはMDIの子非表示は可能でしょうか。
VB製のソフトで非表示が実現できているものがあったので気になりました
0458455
2010/12/24(金) 00:35:07固定みたい。Grid.pasをプロジェクトと同じ場所において改変するか、有償のコンポーネントを
買ってくる。
>457
いやだからできないって。単に一旦破棄→非表示に見えるってだけじゃないの?Spy++か
WinSightなんかでMDIChildがhiddenになってるかを確認してみな。
0459デフォルトの名無しさん
2010/12/25(土) 17:57:56dmAutomaticを入れると項目の選択が行えなくなり、
OnMouseDownに記述すると今度はドラッグ自体発生しません。
どうすれば解決できますか?
■ このスレッドは過去ログ倉庫に格納されています