C++Builder相談室 Part19
レス数が900を超えています。1000を超えると表示できなくなるよ。
0001デフォルトの名無しさん
2008/08/01(金) 16:30:32※2008/07よりCodeGear(Borland IDE/DB部門)はBorlandからEmbarcaderoに移動しました
【前スレ】
C++Builder相談室 Part18
http://pc11.2ch.net/test/read.cgi/tech/1188607282/
過去スレ・関連サイトは>>2-7あたり。
※Borland C++ Compiler 5.5.1についての質問は以下のスレへ
タダで使えるBorland C++ Part5
http://pc11.2ch.net/test/read.cgi/tech/1135127048/
※BDS(Borland Developer Studio)の総合スレはこちら
Borland Developer Studio 2006 No.13
http://pc11.2ch.net/test/read.cgi/tech/1175861395/
※CodeGear(Borland/Embarcadero)関連はこちら
【CodeGear】Embarcaderoオッチャ その10
http://pc11.2ch.net/test/read.cgi/tech/1216250111/
<関連スレ>
くだすれC++Builder(超初心者用)その3
http://pc11.2ch.net/test/read.cgi/tech/1171219191/
[Tips]Borland C++Builder ちょいテク No.01
http://pc11.2ch.net/test/read.cgi/tech/1154580209/
【Delphi】 Indyコンポーネント 【C++Builder】
http://pc8.2ch.net/test/read.cgi/tech/1093654251/
0809デフォルトの名無しさん
2009/08/15(土) 02:14:29for( int i = 0; i < ListView->Items->Count; i++ ){
if( ListView->Items->Item[ i ]->Selected ){
ListView->Items->Item[ i ]->Checked = !ListView->Items->Item[ i ]->Checked;
}
}
こんな感じで実装しました。
しかし、通常のTListViewの仕様によって一番最後にクリックしたアイテムだけ反転が更に反転して元に戻ってしまいます。
Builderは2009です。
スペースを使用するのを変えずに選択されたアイテムが問題なく反転する方法はないでしょうか?
0810デフォルトの名無しさん
2009/08/15(土) 05:27:03ItemFocusedで現在フォーカスが当たっているアイテムが分かる
0811デフォルトの名無しさん
2009/08/15(土) 22:36:02Builderでクラスを作成すると、constructorは自動作成されますけど
destructorは作成されません。
これって、VCLを継承したクラスは、destructorは使わない方がイイということなんでしょうか。
それとも、別に深い意味はないんでしょうか。
0812デフォルトの名無しさん
2009/08/15(土) 22:54:34virtual なんで。
下位クラスの destructor が呼ばれていて、そのクラスに開放すべきデータがないなら不要です。
自分で new したものについては自動で解放されないので 明示的に destructor を作成です。
0813デフォルトの名無しさん
2009/08/15(土) 22:56:280814811
2009/08/15(土) 23:16:23後始末用に自前でdestructorを作っていい訳ですね。
0816デフォルトの名無しさん
2009/08/15(土) 23:55:26現在、複数の韓国IPより2chが攻撃を受けています。
その為、下記スレにて作戦本部を設営しています。
数多くの人たちの力が必要です。
今こそ2chの力を結集しましょう!!
http://c.2ch.net/test/-/news4vip/1250344557/
■現状
現在第一波攻撃終了(挨拶程度)
十分な手応えを得る
第二波予定
8月16日に予定本部にて逐次確認を!
(コミケ組み帰還後の22時を目処に本作戦を実行する)
※予備日 8月17日夜を予定
□■□■□■□■□■□■□■□■
0817デフォルトの名無しさん
2009/08/16(日) 20:07:36ありがとうございました。
無事できました。
0818デフォルトの名無しさん
2009/08/16(日) 21:46:50大変小さくいんさつされ、しかもドットがぼやけて印刷(PDF)されます。
以下のソースで注意するところがあれば、
教えてください。
void __fastcall TForm2::Button1Click(TObject *Sender)
{
if(PrintDialog1->Execute()){
Printer()->BeginDoc();
Printer()->Canvas->Draw(0, 0, Image1->Picture->Graphic);
Printer()->EndDoc();
}
}
0819デフォルトの名無しさん
2009/08/16(日) 22:59:570820デフォルトの名無しさん
2009/08/16(日) 23:25:17大きく(imageのWidthとHeight)する必要がある。
という風にレスを受けて思いました。
つまり、印刷時に、ImageのWidthとHeightを一時的に
大きくして、
Printer()->Canvas->Draw
する。と理解しました。
Image1->Width=1000;
Image1->Height=1000;
やりましたが、だめでした。
0821デフォルトの名無しさん
2009/08/17(月) 00:42:16もう少し基本を理解した方が良い
0822デフォルトの名無しさん
2009/08/17(月) 00:46:37Imageでなく、内包しているPictureのサイズを変更しないと駄目
0823デフォルトの名無しさん
2009/08/17(月) 00:51:180824デフォルトの名無しさん
2009/08/17(月) 08:26:08とりあえず、Imageのサイズを変更した結果です。
なお、読み込みjpegをwinフォトギャラリで印刷(pdf)したところ、
普通に印刷できます。
このことから、Imageかなと思ったしだいです。
つまり、Imageに読み込んだ時、
Pictureのサイズが変更されたとなります。
なお、読み込みには、プロパティーのpictureから
静的に読み込んでいます。
0825デフォルトの名無しさん
2009/08/17(月) 21:18:400826デフォルトの名無しさん
2009/08/18(火) 17:08:370827デフォルトの名無しさん
2009/08/18(火) 17:13:09Printer->Canvasの指定したRectに描画したいです。
0828デフォルトの名無しさん
2009/08/19(水) 11:24:21プロジェクトコードっていうか、WinMainの入った.cppってありますよね?
そのWinMain部分をifdefでカットして、複数の物を使うって、ありでしょうか?
今そうやったところ、リンクが遅いように見えるのですが、禁じてなのかな?
0829デフォルトの名無しさん
2009/08/19(水) 11:39:191つは普通にグラフを書いてもう1つは指定した範囲に四角書きたくて
AddXYで四角になるようにXとYの値を入れても四角になってくれません
TChartって戻る線は書けないんですか?
0830デフォルトの名無しさん
2009/08/19(水) 14:32:590831デフォルトの名無しさん
2009/08/19(水) 18:52:53IDEが作ったコードは
プロジェクトの設定等を変えると自動的に変更される可能性がある。
そのときに余計なコードがあると元に戻らなくなる可能性がある。
それでも泣かないなら、やってもいい。
リンクが遅いのは気のせい。
0832823
2009/08/19(水) 19:58:13とりあえず、やってみまつ
0833デフォルトの名無しさん
2009/08/19(水) 19:58:55ゴメン、823じゃなくて、828です。
0834デフォルトの名無しさん
2009/08/23(日) 14:37:04フォルダ調べると sysconst.dcu があるんだけど
0835デフォルトの名無しさん
2009/08/24(月) 10:21:55C++ BuilderってDelphiの上にC++インターフェース被せただけだし。
0836デフォルトの名無しさん
2009/08/24(月) 15:32:120837デフォルトの名無しさん
2009/08/24(月) 17:19:52うまくいきませんでした。(正規表現を使ってみたかった)
無いなら無いで問題ないのですが、みなさんboostは使ってますか?
0838デフォルトの名無しさん
2009/08/24(月) 17:24:17bcbboostってのがあるけどさすがに5でビルドは無理そう
ttp://bcbboost.sourceforge.net/
0839デフォルトの名無しさん
2009/08/24(月) 19:32:40プリコンパイルヘッダに入らないんで毎回コンパイルに凄い時間が掛かる。
何とかビルド時間短縮する方法ないんかね?
0840デフォルトの名無しさん
2009/08/24(月) 20:18:100841デフォルトの名無しさん
2009/08/24(月) 20:25:53TWinControlのWndProc DefWndProcとか使ってWM_CREATEをフックして、FolderView(SysListView32)を操作するしかないんじゃないかな
0842デフォルトの名無しさん
2009/08/24(月) 20:52:19国産鬼車が使える
Rubyも使ってるらしい実績
0843デフォルトの名無しさん
2009/08/24(月) 20:59:47const int hoge=0;
のような定数宣言があるとPCHが作れないんじゃなかったか?
たぶんhdrstopでは意味がない。
0844デフォルトの名無しさん
2009/08/24(月) 21:00:530845デフォルトの名無しさん
2009/08/24(月) 22:57:070846デフォルトの名無しさん
2009/08/25(火) 01:16:28そうなんだ
ヘッダだけインクルードして一度コンパイル済みのlibを
#pragma link "***.lib"
とかやってもだめなの?
0847デフォルトの名無しさん
2009/08/25(火) 01:18:420848デフォルトの名無しさん
2009/08/25(火) 12:49:33正規表現だけでいいならpcre使うとか。
http://qux.haun.org/note0309.html
0849デフォルトの名無しさん
2009/08/25(火) 14:41:18国産だから日本語に向いている事は間違いない。
利用実績が多く信頼ある、
0850デフォルトの名無しさん
2009/08/25(火) 14:42:55専用のがあるんですね。参考にしてみます。
>>842
Rubyで使われてるんですか。
やっぱり触っとくべきか・・
>>844
一応標準に入ってたTRegexpの存在は知っていたのですが
ヘルプが見つからなかったので、本格的に使うなら資料の多
そうなboostの方がいいのかなと考えていました。
>>848
正規表現だけではなく他の気になる機能も触る、もしくは参考
にしてみたかった次第です。
(とんでもなく勉強になると聞いたので)
PCREの存在は知らなかったので参考にしてみます。
みなさん、ありがとうございました。
0851デフォルトの名無しさん
2009/08/25(火) 14:45:59鬼車って正規表現ライブラリだったんですね。
失礼しました。
こちらも参考にしてみます。ありがとう。
0852デフォルトの名無しさん
2009/08/25(火) 14:51:08JRubyには入ってるらしいが、Rubyに入ってるという記事は見つからない。
Rubyと鬼車の作者は仲が悪いらしい。今は知らない。
JRuby 1.1 RC版登場 - 鬼車取り込みと143の問題修正
http://journal.mycom.co.jp/news/2008/01/09/029/index.html
0853デフォルトの名無しさん
2009/08/25(火) 14:56:10鬼車は導入が簡単。 BCBでも動作する。
boostの正規表現は、最新版BCBでも動作しないと思う。
必要な部品の一部がコンパイルとおらないため。
0854デフォルトの名無しさん
2009/08/25(火) 19:36:08cb2009で使ってるよ。
0855デフォルトの名無しさん
2009/08/26(水) 01:32:56\(.*?\)という検索したら期待の動作しなくて困った。
\\(.*?\\)が正解なんだな。 これは気を付けないと間違えます。
数時間悩んだ。 正規表現の\と、C言語の\が同時に出てくるケース。
0856デフォルトの名無しさん
2009/08/26(水) 10:26:080857デフォルトの名無しさん
2009/08/27(木) 01:46:43BCB6で下記URLの通りに入力してみましたが、プレビュー画面に何も表示されません。
何が問題なのでしょうか・・・?
Edit1->Textには当然文字を入れてあります。
http://www2.ttcn.ne.jp/tkky/Tips/QuickRep/quickrep1.htm
0858デフォルトの名無しさん
2009/08/27(木) 16:09:55他がマイナーと言いながらマイナーな奴紹介するおまいが好きだw
0859デフォルトの名無しさん
2009/08/27(木) 16:26:400860デフォルトの名無しさん
2009/08/27(木) 20:36:34最低一つバンドが必要ですな。ディデールバンドとか。
その上にTQRLabelを配置すると印刷されるようになる。
0861デフォルトの名無しさん
2009/08/27(木) 21:37:35おお、出来ました!
QuickRepを貼りつけただけじゃダメなんですね。
ありがとうございます!!
0862デフォルトの名無しさん
2009/08/28(金) 13:24:40極まれにデストラクタが呼ばれなくなることがあるんですが
そういう経験ありませんか?
何かこうすれば起きるみたいなことがあれば教えて頂きたいです。
自分の場合
・三項演算子を使用している
・参照、ポインタではないクラスを返す関数で直接メンバを使う
Func().Func(); とか(もしかしてこれ自体がまずい?)
・テンプレートを使用している
上記が絡むとまれに現象が出ていました。
デストラクタが呼ばれたかは理由がありCodeGuardではなく
intカウンタでやってました。
自分のバグではないかと思っていましたが、クラス自体は変えないで
すこし書き方を変えると直ったりとなかなか再現できずにいます。
0863デフォルトの名無しさん
2009/08/29(土) 03:54:27boostはバージョンいくつかでボーランドの古いコンパイラーのサポート切ってる。
だからバージョンによっては何してもコンパイル通らない。
0864デフォルトの名無しさん
2009/09/01(火) 12:07:14StringBandを2つ追加し、そこにLabelは追加して
項目名とデータを書くところまではいいのですが線が書けません
枠線は設定できるのですが、各々のセルを区切るための縦線とかは
どうやってかけばいいですか?
LabelのFrameだと左右中央配置はできても縦の中央配置ができないっていう
とんでもないバグがあるし・・・
Shapeを1つ1つ配置するしかないですか?
0865デフォルトの名無しさん
2009/09/02(水) 23:51:39ClientDataSetでも使って出力した方が手っ取り早い。
0866デフォルトの名無しさん
2009/09/07(月) 17:42:060867デフォルトの名無しさん
2009/09/08(火) 06:54:06普通のアプリレベルならTPanelでいいんだけどな
0868デフォルトの名無しさん
2009/09/09(水) 15:56:010869デフォルトの名無しさん
2009/09/09(水) 16:58:410870デフォルトの名無しさん
2009/09/09(水) 17:07:550871デフォルトの名無しさん
2009/09/09(水) 17:40:030872デフォルトの名無しさん
2009/09/10(木) 15:55:26BCC5でも使用できるでしょうか?
ttp://www.yks.ne.jp/~hori/MemCheck.html
ためしに組み込んでみましたが、開始ログ以外にログがうまくでません。
デルファイでしか無理でしょうか?
0873デフォルトの名無しさん
2009/09/10(木) 17:27:240874デフォルトの名無しさん
2009/09/10(木) 21:26:21>>870
>>871
>>869で答えは出ている
0875デフォルトの名無しさん
2009/09/10(木) 21:28:440876デフォルトの名無しさん
2009/09/10(木) 21:56:510877デフォルトの名無しさん
2009/09/11(金) 10:38:370878デフォルトの名無しさん
2009/09/11(金) 12:04:46MouseDown とか馬鹿みたいなレスしかできない奴じゃ知らなかったんだろうな
0879デフォルトの名無しさん
2009/09/11(金) 14:13:380880デフォルトの名無しさん
2009/09/11(金) 14:45:570881デフォルトの名無しさん
2009/09/11(金) 14:47:510882デフォルトの名無しさん
2009/09/11(金) 17:28:290883デフォルトの名無しさん
2009/09/11(金) 17:33:090884デフォルトの名無しさん
2009/09/11(金) 19:01:500885デフォルトの名無しさん
2009/09/12(土) 11:14:31あのスレが無くなってココにクレクレ小僧が来るようになってしまった訳か。
0886デフォルトの名無しさん
2009/09/14(月) 14:22:570887デフォルトの名無しさん
2009/09/14(月) 16:07:57同じファイルを2つのウィンドウで開けることもあれば、ドックが外れるだけのこともある。
これってどういう法則があるの?イラツク。
0888デフォルトの名無しさん
2009/09/14(月) 16:55:28Lineを2本加える時、こんな感じでやってた
MyLineSeries[0]=new TLineSeries(Chart1);
MyLineSeries[1]=new TLineSeries(Chart1);
for(int i=0;i<=1;i++){
MyLineSeries[i]->ParentChart=Chart1;
MyLineSeries[i]->HorizAxis=aBottomAxis;
MyLineSeries[i]->XValues->DateTime=true;
MyLineSeries[i]->VertAxis=aBothVertAxis;
}
0889デフォルトの名無しさん
2009/09/15(火) 11:48:10クリックではないけれど
void __fastcall TForm1::Chart1MouseMove(TObject *Sender, TShiftState Shift, int X,
int Y)
{
StatusBar1->Panels->Items[0]->Text=X;
StatusBar1->Panels->Items[1]->Text=Y;
int iCursol1,iCursol2;
iCursol1=Chart1->Axes->Bottom->CalcPosPoint(X);
iCursol2=Chart1->Axes->Left->CalcPosPoint(Y);
StatusBar1->Panels->Items[2]->Text=iCursol1;
StatusBar1->Panels->Items[3]->Text=iCursol2;
}
0890デフォルトの名無しさん
2009/09/15(火) 12:58:110891デフォルトの名無しさん
2009/09/15(火) 13:59:400892デフォルトの名無しさん
2009/09/15(火) 14:29:22関連イベントに分類してユニットを分けて書くことはできるのでしょうか?
0893デフォルトの名無しさん
2009/09/15(火) 14:38:120894デフォルトの名無しさん
2009/09/15(火) 14:56:15やりかたっちゅーか・・・
おせて。。
実務じゃなく、趣味でやってるだけなんですが、
実務だったら、当然分離してやってるもんなんですか?
0895デフォルトの名無しさん
2009/09/15(火) 15:04:190896デフォルトの名無しさん
2009/09/15(火) 15:19:280897デフォルトの名無しさん
2009/09/15(火) 15:39:110898デフォルトの名無しさん
2009/09/15(火) 22:07:06ファイル−>新規作成−>ユニット
新たにつくったユニットに元のユニットのヘッダーをインクルード(ファイルー>ユニットを使う)
0899デフォルトの名無しさん
2009/09/16(水) 13:00:03ジャンプできなくなるよね
0900デフォルトの名無しさん
2009/09/16(水) 13:18:49イベントハンドラ内を数行に短くする。
0901デフォルトの名無しさん
2009/09/16(水) 14:29:18どれか押されたら凹んでるのが自動で凸になるようにしてるのですが
GroupBox内にあるTSpeedButtonはGroupIndexを1にしてもグループ外の
ボタンと同期してくれません。
そこでGroupBoxから出してGroupBoxの上に配置しようとしたら
前面表示にしてもGroupBoxの下に隠れてしまいます。
別グループのTSpeedButtonも同期させる方法を教えてください。。
0902デフォルトの名無しさん
2009/09/17(木) 01:51:53ヒント、Bevel
0903デフォルトの名無しさん
2009/09/17(木) 10:09:08知らないならレスしないで下さいウザいだけです。
0904デフォルトの名無しさん
2009/09/17(木) 11:37:01ヒント:ヘルプ読め、カス。
0905デフォルトの名無しさん
2009/09/17(木) 11:58:54日本語を理解してからレスして下さい。
0906デフォルトの名無しさん
2009/09/17(木) 15:17:48EXEファイルがが生成されるフォルダにある同名のDLLを優先して呼び出す設定方法はあるでしょうか?
(プログラム上ではなく、開発環境の設定で)
Binフォルダのファイルを入れ替えるのが、一番簡単なのはわかっているのですが、
できればBinフォルダのファイルは入れ替えずに使用したいです。
お手数ですが、よろしくお願い致します。
0907デフォルトの名無しさん
2009/09/17(木) 15:26:42普通に最初はexeがあるフォルダを参照するんじゃね?
その後にパス参照じゃなかったっけ?
0908デフォルトの名無しさん
2009/09/17(木) 15:37:54私もそのように思っていたのですが、Binのファイルを削除すると正常に動作するので、
私の開発環境の設定では、おそらくBinフォルダを優先して参照しています。
0909デフォルトの名無しさん
2009/09/17(木) 16:31:56レス数が900を超えています。1000を超えると表示できなくなるよ。