C++Builder相談室 Part14
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001デフォルトの名無しさん
2005/05/19(木) 08:56:18過去スレ・関連サイトは>>2-6あたり。
0002デフォルトの名無しさん
2005/05/19(木) 08:59:01<過去スレ>
C++Builder相談室
http://piza2.2ch.net/tech/kako/969/969458279.html
新C++Builder相談室(C++Builder相談室 Part2)
http://pc.2ch.net/tech/kako/997/997074601.html
C Builder相談室 Part3
http://pc3.2ch.net/tech/kako/1016/10160/1016065855.html
C++Builder相談室 Part4
http://pc5.2ch.net/tech/kako/1035/10355/1035596146.html
C++Builder相談室 Part5
http://pc5.2ch.net/tech/kako/1045/10455/1045542179.html
C++Builder相談室 Part6
http://pc5.2ch.net/tech/kako/1054/10542/1054280736.html
C++Builder相談室 Part7
http://pc5.2ch.net/tech/kako/1061/10615/1061594556.html
C++Builder相談室 Part8(html化待ち)
http://pc5.2ch.net/test/read.cgi/tech/1070222674/l50
C++Builder相談室 Part9(html化待ち)
http://pc5.2ch.net/test/read.cgi/tech/1080541814/l50
C++Builder相談室 Part10(html化待ち)
http://pc5.2ch.net/test/read.cgi/tech/1089299158/l50
C++Builder相談室 Part11(html化待ち)
http://pc5.2ch.net/test/read.cgi/tech/1094749339/l50
C++Builder相談室 Part12(前スレ)
http://pc5.2ch.net/test/read.cgi/tech/1099238936/l50
C++Builder相談室 Part13
http://pc8.2ch.net/test/read.cgi/tech/1108468718/l50
0003デフォルトの名無しさん
2005/05/19(木) 08:59:26BorlandBorland C++ BuilderX
http://pc5.2ch.net/test/read.cgi/tech/1065260556/l50
タダで使えるBorland C++ Part4
http://pc5.2ch.net/test/read.cgi/tech/1091066805/l50
<VCL兄貴のDelphiスレ>
くだすれDelphi(超初心者用)その22
http://pc5.2ch.net/test/read.cgi/tech/1107332482/l50
ミ,,゚Д゚彡フサギコのフサフサDelphi談話室その21
http://pc5.2ch.net/test/read.cgi/tech/1107333675/l50
Delphi相談室(上級者用)その12
http://pc5.2ch.net/test/read.cgi/tech/1064766880/l50
Delphi初心者】今から始めるDelphi Part01
http://pc5.2ch.net/test/read.cgi/tech/1062422335/l50
【大量・便利】Delphiコンポーネント【再利用】
http://pc5.2ch.net/test/read.cgi/tech/1051802300/l50
【Delphi】 Indyコンポーネント 【C++Builder】
http://pc5.2ch.net/test/read.cgi/tech/1093654251/l50
0004デフォルトの名無しさん
2005/05/19(木) 09:00:59公式サイト
http://www.borland.com/cbuilder/
http://www.borland.co.jp/cppbuilder/
builder-ML 過去ログブラウザ
http://leed.issp.u-tokyo.ac.jp/~takeuchi/builder/browse.cgi
http://www.sfdata.jp/ML/cbuilder/newlog.php?ml=cbuilder
C++Builder メーリングリスト
http://www.sfdata.jp/ML/menu.php?ml=cbuilder
C++Builder ML
http://www.jpdoc.com/cbuilder/
<Update>
BCB6/US SP1 は BCB6/JP 製品版に含まれています。
C++Builder 6 Update4 日本語版
ftp://ftp.borland.co.jp/pub/cbuilder/
C++Builder 6 Linker Update
http://www.borland.com/products/downloads/download_cbuilder.html
0005デフォルトの名無しさん
2005/05/19(木) 09:01:29Borland C++Builder最新リンク2005(リンク集)
http://www2.famille.ne.jp/~akio1998/l_cpb.html
C++Builderのお部屋(Tips系)
http://www.ne.jp/asahi/nagoya/ahomaro/builder/
C++Builderによるプログラミング(Tips系)
http://www.geocities.co.jp/SiliconValley/7201/
BCB Tips(Tips系)
http://members.at.infoseek.co.jp/mchos/bcb_tips/
C++Builder Tips(Tips系)
http://www.geocities.co.jp/SiliconValley/4805/bcbtips/bcbtips000.htm
C++Builder/Windowsプログラミング(Tips系)
http://www.kh.rim.or.jp/~maruoka/Builder/index.shtml
C++Builderのお部屋(Tips系)
http://www.ne.jp/asahi/nagoya/ahomaro/builder/index.html
Wininet Programing(Tips系)
http://www.geocities.co.jp/SiliconValley-PaloAlto/1512/
Dr.Bob's C++Builder Gate(Tips系)
http://www.drbob42.com/cbuilder/index.htm
猫でもわかるプログラミング(一般)
http://www.kumei.ne.jp/c_lang/
norika-s Program Tips(一般Tips)
http://hawaii.naist.jp/~norika-s/program_tips/
Delphian World(コンポーネントライブラリ)
http://www6.airnet.ne.jp/~sone_san/delphi/
DelWiki
http://onigiri.s3.xrea.com:8080/delphi/
0006デフォルトの名無しさん
2005/05/19(木) 09:13:120007デフォルトの名無しさん
2005/05/19(木) 09:46:49<<フリー>>
フリーカーソル無効化アドイン
http://homepage1.nifty.com/fuu/software/nonfreecursor.htm
GExperts−IDE拡張
http://www.gexperts.org/
BorCVS - IDEにCVSを統合
http://borcvs.sourceforge.net/
Indy
http://www.indyproject.org/
JCL
http://homepages.borland.com/jedi/jcl/
JVCL
http://homepages.borland.com/jedi/jvcl/
TurboPower
http://sourceforge.net/users/tpsfadmin/
<<有料>>
TMS Component Studio
http://www.tmssoftware.com/
0008デフォルトの名無しさん
2005/05/19(木) 11:25:080009デフォルトの名無しさん
2005/05/19(木) 11:45:38以下の例では,イメージ,ボタン,および Shape コンポーネントを使用しています。ユーザ ーがボタンをクリックすると,フォームのイメージが FormImage 変数を介してクリップボー ドに格納され,フォームのイメージはイメージコンポーネントにコピーされます。
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Graphics::TBitmap *FormImage = GetFormImage();
try
{
Clipboard()->Assign(FormImage);
Image1->Picture->Assign(Clipboard());
}
__finally
{
delete FormImage;
}
}
//------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
Shape1->Shape = stEllipse;
Shape1->Brush->Color = clLime;
Image1->Stretch = true;
}
0010デフォルトの名無しさん
2005/05/20(金) 07:04:34今VC6を使ってて、VC2005が出たら買い替えようと思ってたのですが
BCBに興味を持ち、色々調べていたところです。
時期Delphi(2006?)に含まれるBCBで、64bitネイティブのコードも書けると
前スレにありましたが、発売時期とかの情報はまだ全く無い状態でしょうか?
あと、BCB6のPersonalとProfessionalの比較を見たのですが
個人で使うとしてもProfessionalの方が開発は楽でしょうか?
あとDirectXSDKをBCBで使ってる人がいれば、使う際に何か
注意点などあれば教えてもらえませんでしょうか。
0011デフォルトの名無しさん
2005/05/20(金) 09:36:47そういうリーク情報が多いのは下記サイト。
ttp://www.drbob42.com/cbuilder/index.htm
>個人で使うとしてもProfessionalの方が開発は楽でしょうか?
PersonalはVCLのソースコードが付いてない。
VCLは滅多に読まないけど、読むとやりたいことが簡単にできるというか、
内部メソッドや内部変数が見つかる。
0012デフォルトの名無しさん
2005/05/20(金) 11:09:19DirectXSDKにボーランド向けのlibが付かなくなってしまったので、libを作るか下記のようにダウンロードしてくる必要がある。
http://www.nk.rim.or.jp/~m_iida/programming/directX/BCB_DX9.html
漏れは、DirectXプログラミングだけはVC toolkit2003 + PlatformSDKで作っている。(無料)
VCを使っているなら、DirectXはVCの方が楽かも。
それ以外の通常のアプリなら、BCBの方が格段に楽だと思います。
(御存知のようにVisual C++はVisualとか付いているけど、RADじゃないから)
001310
2005/05/20(金) 12:39:41>そういうリーク情報が多いのは下記サイト。
>ttp://www.drbob42.com/cbuilder/index.htm
ありがとうございます、チェックしてみます。
>PersonalはVCLのソースコードが付いてない。
なるほど〜・・・デバッグの機能にも制限があるようだし
Professionalの方がいいですね。
>>12
>DirectXSDKにボーランド向けのlibが付かなくなってしまったので
なるほど、わかりました。
>DirectXはVCの方が楽かも
微妙に迷うけど、でもBCBに惹かれるんですよね・・・
VCはゴテゴテと余計な物が付いていく(ように僕には見えるw)し、
C++/CLIも個人で書く分にはそんなに魅力感じないし・・・
あともうひとつ質問させてください、
BCBの環境でVCのコンパイラを使うといったことも簡単に出来るでしょうか?
gcc等が使えるというのは読んだ記憶があるのですが、VCのコンパイラでも
問題無くビルドできるのでしょうか。
0014デフォルトの名無しさん
2005/05/20(金) 13:01:54BCBとBCBXを間違えてまつ。
BCBはVCLでWindowsをターゲット(一時期Linux)、
BCBXはクロスプラットフォーム、組み込みをターゲット。
0016デフォルトの名無しさん
2005/05/20(金) 19:40:560017デフォルトの名無しさん
2005/05/21(土) 03:13:450018デフォルトの名無しさん
2005/05/21(土) 09:33:180019デフォルトの名無しさん
2005/05/21(土) 10:08:01http://www.amazon.co.jp/exec/obidos/ASIN/B0002QNIGA/249-7983986-9085123
0020デフォルトの名無しさん
2005/05/21(土) 11:01:59この書き込み何度か見るが、書き込むやつは何が言いたいのか?
高いと言いたいのか安いと言いたいのか?
0021デフォルトの名無しさん
2005/05/21(土) 11:11:14BCB違い…
0022デフォルトの名無しさん
2005/05/21(土) 14:10:09パナは、バッテリーの持ちが悪いからね…
新機種は、持ちが良いらしい(バッテリーの種類も変わる)ので、そっちに期待
0023デフォルトの名無しさん
2005/05/21(土) 15:07:36{
AnsiString text = "123,45!6,789";
TStringList* ts1 = new TStringList();
TStringList* ts2 = new TStringList();
ts1->CommaText = text;
ts2->Delimiter = '!';
ts2->DelimitedText = text;
StringGrid1->Rows[0] = ts1;
StringGrid1->Rows[1] = ts2;
delete ts1;
delete ts2;
}
0024デフォルトの名無しさん
2005/05/21(土) 15:47:26{
AnsiString text = "123,45!6,789";
TStringList* ts1 = new TStringList();
TStringList* ts2 = new TStringList();
ts1->CommaText = text;
ts2->Delimiter = '!';
ts2->DelimitedText = text;
Memo1->Lines->Strings[0] = ts1->Strings[0];
Memo1->Lines->Strings[1] = ts2->Strings[0];
delete ts1;
delete ts2;
}
0025デフォルトの名無しさん
2005/05/21(土) 19:06:00スクロール範囲shortにしないと
バーつかめないってどうよ
OnVScrollとONHScrollで捕まえて
GetScrollInfoして何とかなったけど
0026デフォルトの名無しさん
2005/05/21(土) 20:51:31表示メニューの選択が保存されなく、詳細(D)を選択しても次に開くと、一覧(L)に
戻ってしまうのが使いにくくてどうにかしたくて調べていたら、過去ログに
C Builder相談室 Part3 972で [Delphi:46188] Re: OpenDialog の状態設定
を発見したのまでは良かったのですが、
なんとDelphiメーリングリストが何故か過去ログ非公開になってました(涙。
どなたか、実現方法を教えてください。
0027デフォルトの名無しさん
2005/05/21(土) 21:03:400028デフォルトの名無しさん
2005/05/21(土) 21:23:36Veryありがとう。
こんなとこあったのですね。
0029デフォルトの名無しさん
2005/05/22(日) 04:12:290030デフォルトの名無しさん
2005/05/22(日) 04:22:55asm{ movq mm0,mm2 } みたいな感じ。
SSE は使ったことないからしらないけども。
0031デフォルトの名無しさん
2005/05/22(日) 05:04:47実現してみました。
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
// サブクラスを登録する
OldEditWndProc = Edit1->WindowProc;
Edit1->WindowProc = EditWndProc;
}
void __fastcall TForm1::EditWndProc(TMessage& Msg)
{
// マウスの右ボタンを無効にする
if (Msg.Msg == WM_RBUTTONDOWN);
// キーが押されたらクリップボードをクリアする
else if (Msg.Msg == WM_KEYDOWN)
Clipboard()->Clear();
else
OldEditWndProc(Msg);
}
もしくはOnKeyDownでCTRL+Cが押された時だけクリップボードを
クリアするようにしても良いと思います。
0032デフォルトの名無しさん
2005/05/22(日) 05:06:110033デフォルトの名無しさん
2005/05/22(日) 05:07:38よく読んでSP3相当にしたらどう?
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Graphics::TBitmap* tb = new Graphics::TBitmap;
ImageList1->GetBitmap(0, tb);
Image1->Picture->Bitmap = tb;
delete tb;
}
0034デフォルトの名無しさん
2005/05/22(日) 05:08:50BCB3のときはasmブロック内で「.MMX」て書かないと駄目だったな。
0035デフォルトの名無しさん
2005/05/22(日) 05:13:38どっちもコピペだな…
新スレになっても消えてくんないんだなこの人。
0036デフォルトの名無しさん
2005/05/22(日) 05:42:41Clipboard()->Clear();
0037デフォルトの名無しさん
2005/05/22(日) 05:57:230038デフォルトの名無しさん
2005/05/22(日) 06:09:41アイコン作るソフトで大きいのと小さいのを含んだアイコンファイルを作るんだにょ。
アイコンファイル(.ico)は複数のサイズのアイコンを持てるから。
0039デフォルトの名無しさん
2005/05/22(日) 06:51:120040デフォルトの名無しさん
2005/05/22(日) 07:09:320041デフォルトの名無しさん
2005/05/22(日) 07:11:32TSprashForm::Close Release
0043デフォルトの名無しさん
2005/05/22(日) 08:19:41そんなモンねーぞ。
IDEの事なら bcb /ns で起動しろ。
bcb /? で説明が出てくる。
0044デフォルトの名無しさん
2005/05/22(日) 13:42:34同じようなことを独自のソフトで実現するにはどのようにしたらよいのでしょうか?
フォルダやファイルの作成や削除に反応するイベントか何かあるのでしょうか?
0045デフォルトの名無しさん
2005/05/22(日) 13:52:08http://www.borland.co.jp/qanda/lang/l0000295.html
0046本田
2005/05/22(日) 14:04:07>高精度タイマ
http://homepage2.nifty.com/Mr_XRAY/Halbow/Notes/N015.html
0047デフォルトの名無しさん
2005/05/22(日) 14:16:040048デフォルトの名無しさん
2005/05/22(日) 14:22:220049デフォルトの名無しさん
2005/05/22(日) 15:54:500050デフォルトの名無しさん
2005/05/22(日) 15:58:13http://pc8.2ch.net/test/read.cgi/tech/1065260556/
0052本田
2005/05/22(日) 17:56:32>イベント型の使い方
http://www.geocities.co.jp/SiliconValley-SanJose/2560/delphi4/pascal/Events.htm
0053デフォルトの名無しさん
2005/05/22(日) 22:49:50すぐに来るものですか?
Professionalが安く買えればいいなあ、と思ってるのですが。。。
0054デフォルトの名無しさん
2005/05/23(月) 04:10:13ただBCBはVer.6以降バージョンアップが止まってるから
年に一回くらいグレードアップキャンペーンをしてたけど。
それも、次バージョンでDelphiと統合って正式にアナウンスされたから
もうしないんじゃないかな?
0055デフォルトの名無しさん
2005/05/23(月) 05:11:38あるColmunをデータを保持しつつ表示からは消したいのですが。
0056デフォルトの名無しさん
2005/05/23(月) 07:24:34�d
そうなんですか・・・orz
0057デフォルトの名無しさん
2005/05/23(月) 08:52:19どうすればいいんですか?
0058デフォルトの名無しさん
2005/05/23(月) 09:08:490059デフォルトの名無しさん
2005/05/23(月) 11:20:16http://homepage2.nifty.com/spw/tips/Gecko.html
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
MozillaBrowser1->GoHome();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ToolButton3Click(TObject *Sender)
{
// 「ホーム」ボタンが押された場合の処理
MozillaBrowser1->GoHome();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ToolButton2Click(TObject *Sender)
{
// 「中止」ボタンが押された場合の処理
MozillaBrowser1->Stop();
0060デフォルトの名無しさん
2005/05/23(月) 13:02:49ユーザーにプログラムを配布するときはどうすればいいの?
クラスが登録されていませんと出て、実行できないのですが・・・。
0061デフォルトの名無しさん
2005/05/23(月) 17:04:510062デフォルトの名無しさん
2005/05/23(月) 17:12:420063デフォルトの名無しさん
2005/05/23(月) 23:05:11未定義のシンボルと出てコンパイルできませんが・・・
0064デフォルトの名無しさん
2005/05/23(月) 23:12:10#include <FileCtrl.hpp>
0065デフォルトの名無しさん
2005/05/23(月) 23:18:13すいませんお騒がせしました
0066デフォルトの名無しさん
2005/05/24(火) 05:31:19http://homepage3.nifty.com/flare/pc/bcb/data/076.html
簡単なものであれば、「SelectDirectory()」を使うという手がある。
欠点としては、ネットワークドライブを認識できない問題がある。
0067デフォルトの名無しさん
2005/05/24(火) 05:49:29Windows API SHBrowseForFolder()を使用します。
http://www.borland.co.jp/qanda/cbuilder/c0005004.html
0068デフォルトの名無しさん
2005/05/24(火) 08:35:21http://www.geocities.co.jp/SiliconValley-Bay/1352/
0069デフォルトの名無しさん
2005/05/24(火) 10:10:43これwinsock使ってるとコンパイルできなくね?
0070デフォルトの名無しさん
2005/05/24(火) 11:50:42ヘルプ見てもどれがint64型に該当するのかわかりません。
引数になにを渡したらいいのでしょうか?
もしかして変換できないのでしょうか?
0071デフォルトの名無しさん
2005/05/24(火) 12:22:020072デフォルトの名無しさん
2005/05/24(火) 16:11:45InternetパレットのUdpSocketを使用して、サーバー側と
クライアント側のプログラムを作成しましたが
サーバー側のソケットをオープンすると、
コード10049(Winsock Error Code)が発生します。
サーバー側プログラムのUdpSocketのプロパティは
LocalHost:192.168.0.10
LocalPort:10000
クライアント側プログラムのUdpSocketのプロパティは
RemoteHost:192.168.0.10
RemotoPort:10000
と設定してあります。
コンポーネントがバグってるのでしょうか?
0073デフォルトの名無しさん
2005/05/24(火) 16:12:200074デフォルトの名無しさん
2005/05/24(火) 16:14:30数字がダメ
0075デフォルトの名無しさん
2005/05/24(火) 16:18:550.0.0.0だったら、 INADDR_ANYみたいなかんじですか?
0076デフォルトの名無しさん
2005/05/24(火) 16:28:420077デフォルトの名無しさん
2005/05/24(火) 17:50:43まじで全角で指定してんの?
0078デフォルトの名無しさん
2005/05/24(火) 18:04:5410049 WSAEADDRNOTAVAIL: 無効なネットワークアドレス
0079デフォルトの名無しさん
2005/05/24(火) 18:13:32どうやればいいでしょうか?
0080デフォルトの名無しさん
2005/05/24(火) 18:22:32してないです
0081デフォルトの名無しさん
2005/05/25(水) 09:27:310082デフォルトの名無しさん
2005/05/25(水) 10:09:18で用紙トレイって反映されます?
0083デフォルトの名無しさん
2005/05/25(水) 10:33:17幾らくらいなんだろう。
0084デフォルトの名無しさん
2005/05/25(水) 11:18:23日付の各要素をインクリメントするメソッド群です。マイナス値を指定すればデクリメントします。 当然"1"以外の数値も指定出来ます。 usesにDateUtilsが必要です。他にもいろいろあります。 IncMilliSecond IncMinute IncMonth ■指定の日付時刻から1分引く
var
aDateTime : TDateTime;
begin
aDateTime := StrToDateTime('2003/03/10 01:01:01');
Edit1.Text := DateTimeToStr(IncMinute(aDateTime, -1));
end;
0085デフォルトの名無しさん
2005/05/25(水) 11:49:530086デフォルトの名無しさん
2005/05/25(水) 12:49:350087デフォルトの名無しさん
2005/05/25(水) 12:50:020088デフォルトの名無しさん
2005/05/25(水) 15:43:49これって見えない親ウィンドウがいるからですかね?
普通にEnumWindowsでForm1のハンドルを取得するにはどうしたらいいでしょうか?
0089デフォルトの名無しさん
2005/05/25(水) 15:50:42いやEnumWindowsで取得できるから、何か間違ってる。
0090デフォルトの名無しさん
2005/05/25(水) 15:51:05EnumWindowsなら普通にハンドル取れるだろ。
その操作できないハンドル返すウィンドウはウィンドウクラス名がTApplicationの奴じゃないのか?
VCLアプリはタスクバーに表示されてるウィンドウ(TApplicationが生成した非表示ウィンドウ)とメインウィンドウ(TForm派生クラスが生成)は別のウィンドウ。
0091デフォルトの名無しさん
2005/05/25(水) 15:56:58あ、いやいや、えと僕の言い方が悪かったと言うか発見しました。
えとハンドルは取れてちゃんと操作もできるのですが、TForm1クラスだとアイコンがとれないですね
アイコンは>>90さんが言ったようにTApplicationクラスがもってるっぽいので
TForm1クラスからアイコン取る方法を教えてください
それにこれ子ウィンドウになってるんですね
0092デフォルトの名無しさん
2005/05/25(水) 16:04:56GetClassLongでは無理だったけどSendMessageで取れますた。
0093デフォルトの名無しさん
2005/05/25(水) 16:12:32それでタイトルやアイコンが無い、又は親ウィンドウ以外は表示しないようにしていたのですが
そうすると、C++Builderで作ったソフトがTApplicationクラス以外は表示されなくなりまして
GetWindowLong( hWnd, GWL_HWNDPARENT )←これではじく場合にTForm1(例えば)はどうやってスルーさせればいいですか?
0094デフォルトの名無しさん
2005/05/25(水) 17:07:020095デフォルトの名無しさん
2005/05/25(水) 17:08:180096デフォルトの名無しさん
2005/05/25(水) 17:40:280097デフォルトの名無しさん
2005/05/25(水) 17:47:390098デフォルトの名無しさん
2005/05/25(水) 18:44:150099デフォルトの名無しさん
2005/05/25(水) 18:44:550100デフォルトの名無しさん
2005/05/25(水) 18:55:43それだっ!!
つかそれどうやってやるんですかね?
0101デフォルトの名無しさん
2005/05/25(水) 19:00:13GetClassName
0102デフォルトの名無しさん
2005/05/25(水) 19:42:040103デフォルトの名無しさん
2005/05/25(水) 21:17:000104デフォルトの名無しさん
2005/05/25(水) 21:51:24Edit1に表示することって
できますか?
0105本田& ◆xOS3wf.pJg
2005/05/25(水) 23:26:37初耳です。
0106本田
2005/05/25(水) 23:28:17表示するのはLabelだと思うけど。
0107& ◆FC4h7F/wV6
2005/05/26(木) 00:08:09>それでタイトルやアイコンが無い、又は親ウィンドウ以外は表示しないようにしていたのですが
もし、キャプションを表示したくなければ。
void __fastcall TForm1::CreateParams(TCreateParams &Params)
{
TForm::CreateParams(Params);
Params.Style &= ~WS_CAPTION;
}
0108本田
2005/05/26(木) 00:09:22私です。
0109デフォルトの名無しさん
2005/05/26(木) 00:13:090110104
2005/05/26(木) 06:37:15Labelに表示する方法
教えてください
0111デフォルトの名無しさん
2005/05/26(木) 08:07:17Bmp1, Bmp2: TBitmap; {ビットマップ}
Alpha: Single; {透過度}
TransParentColor: TColor); {背景色(完全透過します)}
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
procedure AlphaDraw(X, Y: Integer; Bmp1, Bmp2: TBitmap;
Alpha: Single; TransParentColor: TColor);
var
i, j, k, v, z : Integer;
Rect1, Rect2, Rect3 : TRect;
Pnt1, Pnt2 : PRGBArray;
Alp : Single;
begin
//半透明コピー開始
0112デフォルトの名無しさん
2005/05/26(木) 08:07:39Rect1 := Rect(0, 0, Bmp2.Width, Bmp2.Height);
OffsetRect(Rect1, X, Y);
Rect2 := Rect(0, 0, Bmp1.Width, Bmp1.Height);
IntersectRect(Rect3, Rect1, Rect2);
if(Rect3.Left < Rect3.Right) and (Rect3.Top < Rect3.Bottom) then
begin
//先に透過度の計算をしてしまう
Alp := 1.0 - Alpha;
//コピーする画像の描画開始座標を求める
k := Rect3.Left -X;
z := Rect3.Top -Y;
for j := Rect3.Top to Rect3.Bottom -1 do
begin
Pnt1 := Bmp1.ScanLine[j];
Pnt2 := Bmp2.ScanLine[z];
v := k;
for i := Rect3.Left to Rect3.Right -1 do
begin
0113デフォルトの名無しさん
2005/05/26(木) 08:07:48if DWORD(TransParentColor) <> DWORD(Pnt2[v]) then
begin
Pnt1[i].R := Round((Pnt1[i].R*Alp)+(Pnt2[v].R*Alpha));
Pnt1[i].G := Round((Pnt1[i].G*Alp)+(Pnt2[v].G*Alpha));
Pnt1[i].B := Round((Pnt1[i].B*Alp)+(Pnt2[v].B*Alpha));
end;
inc(v);
end;
inc(z);
end;
end;
end;
Alpha が透過度になります(1.0 で100%コピー、0.5 で50%コピー)。
0114デフォルトの名無しさん
2005/05/26(木) 08:16:38VCLが表示するリソース(例外のメッセージや、「はい」ボタンのキャプションなど)
を英語に書き換えてしまいたいのですが、可能でしょうか?
C++Builder5には英語用のUSVCLが付属していてそれを使用すればよさそうなのですが、
6にはついていませんでした。
そこで、自分で英語に書き換えてしまおうとしましたが
いったいどうやればよいのかがわかりません。
Const.pasとSysConst.pasの日本語を英訳して...
そこからどうしたらよいのでしょうか?
なるべくEXE一本でゆきたいので、
リソースDLLや実行時パッケージは使用しない方向で考えています。
英語版を購入するしかないのでしょうか?
0115デフォルトの名無しさん
2005/05/26(木) 08:17:33RAS
??????????How can I copy phonebook entries?
??????????How can I create a new phonebook entry?
??????????How can I delete phonebook entries?
??????????How can I detect active connections?
??????????How can I establish an Internet connection?
??????????How can I hang up active connections?
??????????How can I list phonebook entries?
0116デフォルトの名無しさん
2005/05/26(木) 09:09:13void __fastcall TForm1::CppWebBrowser1DocumentComplete(TObject *Sender,
LPDISPATCH pDisp, Variant *URL)
{
IHTMLDocument2 *doc;
wchar_t *title;
CppWebBrowser1->Document->QueryInterface(IID_IHTMLDocument2, (void**)&doc);
doc->get_title(&title);
Caption = title;
}
0117デフォルトの名無しさん
2005/05/26(木) 10:40:520118デフォルトの名無しさん
2005/05/26(木) 14:02:390119デフォルトの名無しさん
2005/05/26(木) 18:49:270120デフォルトの名無しさん
2005/05/26(木) 20:23:14Delphiの仕様では、プロジェクトのフォルダに*.dcu置いておけばライブラリより優先して使われる。
C++Builderだとどうなるかは知らん。すまん。
0121デフォルトの名無しさん
2005/05/26(木) 21:28:23それを英語化したいプロジェクトに追加すると出来るね。
0122デフォルトの名無しさん
2005/05/27(金) 05:04:160123デフォルトの名無しさん
2005/05/27(金) 06:33:150124デフォルトの名無しさん
2005/05/27(金) 07:15:05ありがとうございます
しかし次のようなエラーがでました
[C++ Error] Unit1.cpp(143): E2451 Undefined symbol 'IHTMLDocument2'
[C++ Error] Unit1.cpp(143): E2451 Undefined symbol 'doc'
[C++ Error] Unit1.cpp(145): E2451 Undefined symbol 'IID_IHTMLDocument2'
[C++ Error] Unit1.cpp(145): E2285 Could not find a match for 'IUnknown::QueryInterface(undefined,undefined)'
いったい、これは・・・・
お願いします
0125デフォルトの名無しさん
2005/05/27(金) 08:26:26http://www.borland.co.jp/qanda/cbuilder/c0002984.html
http://homepage3.nifty.com/flare/pc/bcb/data/006.html
http://sapporo.cool.ne.jp/tanomi/qanda/a011.html
0126デフォルトの名無しさん
2005/05/27(金) 09:58:47http://www.ayu.ne.jp/user/skyblue/program/
http://www.neco.nu/gohodoji/bccfaq/bccfaq.html
IDI_ICON1 ICON "icon1.ico"
0127デフォルトの名無しさん
2005/05/27(金) 11:11:25っ[ grep ]
0128デフォルトの名無しさん
2005/05/27(金) 11:53:060129デフォルトの名無しさん
2005/05/27(金) 12:16:020130デフォルトの名無しさん
2005/05/27(金) 12:20:55どういう意味なんですか?
0131デフォルトの名無しさん
2005/05/27(金) 12:34:50ToolBarのハンドルを取得しボタンを追加したいのですが
追加される側のアプリケーションが終了してしまいます。
TBBUTTON button;
(略)
toolhwnd= FindWindowEx(hwnd,NULL, "ToolbarWindow32",NULL);
SendMessage(toolhwnd,TB_INSERTBUTTON , 0, (LPARAM)&button));
他のアプリケーションのオブジェクトを操作することは出来ないのでしょうか?
0132デフォルトの名無しさん
2005/05/27(金) 14:45:21イースター エッグ
バージョン表示ダイアログにて以下のキーワードをALTキーを押しながら
入力するとスタッフの一覧が表示される。
Altキーを押しながら打つキーワード
TEAM
staff
QUALITY
QA staff
DEVELOPERS
R&D staff
C++Builder5/6 とDelphi6で確認
Delphi6のはスターウォーズのオープニングみたいだよ
追加情報は右記へ:[email protected]
0133デフォルトの名無しさん
2005/05/27(金) 14:59:13&buttonを渡しても、他のアプリにとっては無効なアドレスなので。
グローバルフックすれば出来るよ。
>>132
またコピペ君か。2chに人のメアド張るのはいかがなものか
0134デフォルトの名無しさん
2005/05/27(金) 15:18:540135デフォルトの名無しさん
2005/05/27(金) 15:57:39MSDN嫁
>>134
MSDN嫁
>>130
ヘッダ検索しる
0136デフォルトの名無しさん
2005/05/27(金) 16:06:14消えろゴミが
0137デフォルトの名無しさん
2005/05/27(金) 16:12:430138デフォルトの名無しさん
2005/05/27(金) 16:13:36WinXPでのsndPlaySound不具合. [Visual Basic Q & A 掲示板] [過去ログの一覧] ...
WinXPでsndPlaySoundを使ったアプリケーションを使ってるのですが、 音が鳴りません。
同アプリをMeや98SE上で使うと普通に鳴ります。 リソースファイルからメモリに読み
0139デフォルトの名無しさん
2005/05/27(金) 16:27:06スピーカー
0140デフォルトの名無しさん
2005/05/27(金) 16:34:09http://pointin.jp/home.aspx
0141デフォルトの名無しさん
2005/05/27(金) 17:18:16Home Edition はそんな話しは聞きませんが、Profesional Editionには、
16bitAPIを削除して、安定性を得てるという話を聞いたことがあります。
sndPlaySoundは16bitなので、使えないかもしれません。
PlaySoundとかなら確実になると思います。
0142デフォルトの名無しさん
2005/05/27(金) 18:10:160143130
2005/05/27(金) 21:04:35検索したら
Search string 'grep' not found
とでましたが・・どうすればいいのですか?
0144デフォルトの名無しさん
2005/05/27(金) 21:14:040145デフォルトの名無しさん
2005/05/27(金) 22:08:21BCBに移植していじらなければならなくなったんだが、頭おかしくなりそう。
バイナリのリンクなら簡単簡単なのに。
0146デフォルトの名無しさん
2005/05/27(金) 22:22:020147デフォルトの名無しさん
2005/05/28(土) 05:49:13英語と日本語を選択し、ウィザードを最後まですすめ、完了したのですが、
ここから、どうやって英語版のフォームを表示するのかがわかりません。
どなたか教えていただけないでしょうか?
それから、英語版Windowsに作成したプログラムを持って行けば、
自動的に英語版のフォームが選択されるのでしょうか?
それとも手動で選択してやる必要があるのでしょうか?
0148age
2005/05/28(土) 10:20:02エディタに.DFMファイルが表示されるだけなのですよね?
C++Builder6にはローカライズ対象のフォームを表示できない、という不具合が
あったように思います。
0149デフォルトの名無しさん
2005/05/28(土) 10:45:22SetWindowText?
0150デフォルトの名無しさん
2005/05/28(土) 18:01:270151デフォルトの名無しさん
2005/05/28(土) 19:22:47実行ファイルが動かなかったのですが、
どうすればいいのですか?
0152デフォルトの名無しさん
2005/05/28(土) 19:30:37ttp://www.borland.co.jp/qanda/cbuilder/c0003491.html
0153デフォルトの名無しさん
2005/05/28(土) 21:11:06ありがとう
0154デフォルトの名無しさん
2005/05/28(土) 22:13:35ボタンをクリックすると、TImageが動的に作られ、アイコンが貼り付けられるというプログラムを作っているのですが、
ボタンのOnClickに以下のソースを入れてもアイコンが表示されません。
何か忘れてる気がするんですが教えてもらえますか?
TImage *Image=new TImage(this);
ExtractIconEx(Application->ExeName.c_str(),0,&hIcon,NULL,1);
Icon->Handle = hIcon;
Image->Canvas->Brush->Color = Color;
Image->Canvas->FillRect(Rect(0,0,Image->Width+1,Image->Height+1));
Image->Canvas->Draw(0,0,Icon);
0155154
2005/05/28(土) 23:03:08自己解決しました。
Parent書き忘れてました。
0156デフォルトの名無しさん
2005/05/28(土) 23:17:43アイコンをタスクトレイに表示するところまではできるようになりました。
そこで、タスクトレイのアイコンを右クリックしたら立ち上がっている
ウィンドウをすべて最小化するようにしたいのですが、やり方がさっぱり
わかりません。何かよい方法、もしくはgoogleなどで検索する
キーワードを教えて頂きたいです。
0157デフォルトの名無しさん
2005/05/28(土) 23:40:06BCB6 タスクトレイ ウィンドウ 最小化
0158デフォルトの名無しさん
2005/05/29(日) 02:46:24EnumWindows
WM_SYSCOMMAND
0159デフォルトの名無しさん
2005/05/29(日) 10:04:29TIcon*Icon;
Icon = new TIcon();
ExtractIconEx(Application->ExeName.c_str(),0,&hIcon,NULL,1);
Icon->Handle = hIcon;
Image1->Canvas->Brush->Color = Color;
Image1->Canvas->FillRect(Rect(0,0,Image1->Width+1,Image1->Height+1));
Image1->Canvas->Draw(0,0,Icon);
Icon->ReleaseHandle();
DestroyIcon(hIcon);
delete Icon;
0160デフォルトの名無しさん
2005/05/29(日) 10:06:46TIcon*Icon;
Icon = new TIcon();
ExtractIconEx(Application->ExeName.c_str(),0,&hIcon,NULL,1);
Icon->Handle = hIcon;
Image1->Canvas->Brush->Color = Color;
Image1->Canvas->FillRect(Rect(0,0,Image1->Width+1,Image1->Height+1));
Image1->Canvas->Draw(0,0,Icon);
Icon->ReleaseHandle();
DestroyIcon(hIcon);
delete Icon;
0161デフォルトの名無しさん
2005/05/29(日) 10:55:33http://blog.livedoor.jp/junki560/
http://blog.livedoor.jp/junki560/
0162デフォルトの名無しさん
2005/05/29(日) 10:58:08TextFlags=0;をいれてみたりもしたのですが、だめでした。
背景部分は透過されるようにするにはどうしたらいいですか?
Image1->Canvas->Font->Color=clWhite;
Image1->Canvas->TextOut(2,38,Edit1->Text);
Image1->Canvas->Font->Color=clBlack;
Image1->Canvas->TextOut(0,36,Edit1->Text);
0163デフォルトの名無しさん
2005/05/29(日) 11:21:34英語のテキストはどこに書けばよいのでしょうか?
0164デフォルトの名無しさん
2005/05/29(日) 12:31:42文字列の出力では、通常文字列領域を現在のバックグラウンドカラーで塗り つぶします。 バックグラウンドカラーは、TCanvas の Brush プロパティを用い て設定します。
Canvas->Brush->Color = clHighlight;
また、背景を透過にしたい場合には以下のように記述します。
Canvas->Brush->Style = bsClear;
0165デフォルトの名無しさん
2005/05/29(日) 12:33:170166デフォルトの名無しさん
2005/05/29(日) 12:40:39BCB6でも使えるGDI+コンポーネントで有名どころはどこかにないでしょうか?
0168デフォルトの名無しさん
2005/05/29(日) 15:06:48解説してあるページへのリンクでもいです。
0169デフォルトの名無しさん
2005/05/29(日) 15:11:02引っかかりそうな所だけ
http://www.borland.co.jp/qanda/cbuilder/c0005049.html
0170デフォルトの名無しさん
2005/05/29(日) 17:57:28HINSTANCE g_hinstDll = NULL;
HHOOK g_hhook = NULL;
HWND g_hwndPost = NULL;
UINT g_uMsgNotify = WM_USER;
HOOKPROC KeyboardHook_HookProc ( int nCode, WPARAM wParam, LPARAM lParam)
{
LRESULT lResult = CallNextHookEx(g_hhook, nCode, wParam, lParam);
if (nCode == HC_ACTION)
{
PostMessage(g_hwndPost, g_uMsgNotify, wParam, lParam);
}
return((HOOKPROC)lResult);
}
0171デフォルトの名無しさん
2005/05/29(日) 17:57:47BOOL WINAPI SetKeyboardHook (HWND hWndPost, UINT Msg)
{
HHOOK hhook;
if (g_hhook != NULL) return(FALSE);
g_hwndPost = hWndPost;
g_uMsgNotify = Msg;
Sleep(0);
if (g_hLogHook==NULL)
hhook = SetWindowsHookEx(WH_KEYBOARD,(HOOKPROC)KeyboardHook_HookProc,g_hinstDll, 0);
InterlockedExchange((PLONG) &g_hhook, (LONG) hhook);
return(g_hhook != NULL);
}
///
BOOL WINAPI ReleaseKeyboardHook()
{
BOOL fOK = TRUE;
if (g_hhook != NULL)
{
fOK = UnhookWindowsHookEx(g_hhook);
g_hhook = NULL;
}
return(fOK);
}
0172デフォルトの名無しさん
2005/05/29(日) 17:57:55{
switch (fdwReason)
{
case DLL_PROCESS_ATTACH:
g_hinstDll = hinstDll;
break;
}
return(TRUE);
}
二,
0173デフォルトの名無しさん
2005/05/30(月) 00:21:20http://dybdahl.dk/dxgettext/
GNU-gettextの移植版だが、Windowsの言語設定に対応してるのと、
実行時にフォーム内の文字列を一括変換してくれる、便利な関数がついてる。
(これをCreateイベントハンドラに仕込んでおくだけ)
変換テーブルファイルを外部に持つのが嫌でなければ、リソースいじるよりはるかに楽。
GNU由来のコードは実行ファイルに含まれないので、ライセンスもかなり緩いです。
最低限気をつけるのは、
- フォームやメッセージ文字列は英語で作っておく
- フォント名の文字列も書き換えてくれるが、Charsetまでは変えてくれないので、
あらかじめDEFAULT CHARSETにしとく(これでたいがいはOK)
あとは良くも悪くもgettextなので、それなりのクセはあります。
0174デフォルトの名無しさん
2005/05/30(月) 02:48:55SetWindowText(Form1->Handle,"kkk");
0175デフォルトの名無しさん
2005/05/30(月) 15:44:500176デフォルトの名無しさん
2005/05/30(月) 18:05:56Richard Kaiser (著)
http://www.amazon.co.jp/exec/obidos/ASIN/3540010270/
0177デフォルトの名無しさん
2005/05/30(月) 18:52:15自作アプリケーションと一緒にサンプルとして配布したいのですが、
これはやっぱりまずいですかね…
色んなコンポのアイコンが欲しいんですが
0178デフォルトの名無しさん
2005/05/30(月) 18:58:050179デフォルトの名無しさん
2005/05/30(月) 19:03:59↑ここに書いてあるようなGDI+を使った2Dグラフィックを楽しみたくて、delphi用
のGDI+ラッパーをいじったけど、うまく動かなかった。
仕方なく、気が向かないけどC#で遊んでいる(.Netは初めからGDI+用の
ラッパーが標準装備。その替わり、従来のGDIを使おうとすると面倒くさい)。
C#Builderも出てしまったし、GDI+はこれからマネージコード専用の方向に
行ってしまうんかね。海外のサイトを検索しても、アンマネージコードでGDI+
のラッパーを作ろうという奇特な香具師はほとんどいないようだし。
0180デフォルトの名無しさん
2005/05/30(月) 19:10:22FixedColorを使ってみたのですが、一番上の行だけが変わってしまって・・・
0181デフォルトの名無しさん
2005/05/30(月) 20:19:13一応聞いておくけど、BCBがラッパーなしで、そこと同じ内容のコード書けるのは知ってるの?
BCBは初めからGDI+使うためのヘッダが付いてるけど、Delphiは当然C++のヘッダは使えないから
そうやってラップしてるんだろうけど。
それともその上でもっと楽に使えるラッパーが欲しい、誰か作成しる!という事?
0182デフォルトの名無しさん
2005/05/30(月) 20:34:05当然知ってる。「猫でもわかる・・・・」は完全にラッパー無しで全部C++で
書いている。しかし、ちょっとした事をするのに物凄く手間がかかるので、
ラッパーにしたい。
VCLコンポーネントになっていれば一番楽なのだが、個人の手に余る。
GDI+のよく使う機能だけコンポーネント化するぐらいならなんとかなるが。
一度楽をする事を覚えると、Win32で書く気が失せる・・・・
0183デフォルトの名無しさん
2005/05/30(月) 20:35:57implib -c -f gdiplus.lib gdiplus.dll
0184デフォルトの名無しさん
2005/05/30(月) 20:53:43�dクス。やってみる。
0185デフォルトの名無しさん
2005/05/30(月) 21:24:09返信 削除
http://bx.misty.ne.jp/~h-kova/cgi-bin/bbs/cyclamen.cgi?log=faqtip&tree=r12
▽ 2002/3/28 (木) 20:44:02 ▽ michael
z211-19-82-170.dialup.wakwak.ne.jp / Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0; T312461)
BCB6にはGDI+のヘッダファイルが含まれています。
使ってみましたので、使用方法を書いておきます。
GDI+とは何かについてはこちらを参考にしてください。
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdicpp/cpp_gdi+
start_26ic.asp
0186デフォルトの名無しさん
2005/05/30(月) 21:25:59しばらく新バージョン出てないから、BCB6ってすごく古く感じる。
0187デフォルトの名無しさん
2005/05/30(月) 21:42:54ttp://www.ne.jp/asahi/nagoya/ahomaro/builder/cpb-048.html
0188デフォルトの名無しさん
2005/05/31(火) 10:15:460189デフォルトの名無しさん
2005/05/31(火) 11:25:29ダブルクリック並みの速さでクリックすると、2度目のメッセージが来ないのですが、
どうしたら、2回とカウントできるでしょうか?
0190デフォルトの名無しさん
2005/05/31(火) 11:44:150191デフォルトの名無しさん
2005/05/31(火) 12:40:140192デフォルトの名無しさん
2005/05/31(火) 12:45:49どうしてもWindowsに逆らおうってのかい。
0193デフォルトの名無しさん
2005/05/31(火) 13:20:540194デフォルトの名無しさん
2005/05/31(火) 13:33:34bUpdateFlg = false;
... いろんな処理
if (bUpdateFlg) {
... 更新関係の処理
}
0195デフォルトの名無しさん
2005/05/31(火) 13:46:440196デフォルトの名無しさん
2005/05/31(火) 13:49:390197デフォルトの名無しさん
2005/05/31(火) 15:17:430198デフォルトの名無しさん
2005/05/31(火) 16:18:14ダブルクリック並みの速さでクリックしたら、
そりゃダブルクリックだよ。
0199デフォルトの名無しさん
2005/05/31(火) 16:39:37私なりに調べてみたのですがわからなかったので質問なんですが、
数値(0〜0.5)に合わせて角度(360゚〜0゚)を出して、
イメージ上でメーターのように線を描画したいのですが可能でしょうか?
0200デフォルトの名無しさん
2005/05/31(火) 16:40:010201デフォルトの名無しさん
2005/05/31(火) 16:58:170202デフォルトの名無しさん
2005/05/31(火) 17:14:49線を引くための座標を考える数学の問題だな
ttp://www.geisya.or.jp/~mwm48961/kou2/linear_image3.html
ttp://www.sis.otsuma.ac.jp/~tsutsumi/lecture/graphics/s6.htm
0203デフォルトの名無しさん
2005/05/31(火) 17:24:19try{
}
__finally{
}
を使うとエラーが出てコンパイルができないのは仕様ですか?
0204デフォルトの名無しさん
2005/05/31(火) 18:14:20__try って使えない?
0205デフォルトの名無しさん
2005/05/31(火) 18:20:07アンデファインドシンボルエラーが出ますね。
ちなみに、__tryってするとちゃんと予約語の色になるんですけどねえ
0206デフォルトの名無しさん
2005/05/31(火) 18:38:250207デフォルトの名無しさん
2005/05/31(火) 18:43:51でもヘルプに書いてるんだよねえ〜
でもコンパイルエラーになるんだよねえ〜
0208デフォルトの名無しさん
2005/05/31(火) 18:47:23文句出てた記憶が…。 3は微妙だけど、1は間違いなくそうだと思う。
builderのMLログにたぶん記録があると思うよ。
0209デフォルトの名無しさん
2005/05/31(火) 18:48:440210デフォルトの名無しさん
2005/05/31(火) 18:55:28また、Buttol1を押すとタブを動的に作るようにしてます。
アクティブ状態のタブ上にあるMemoの文章を
PageControl上にない別のMemo2に複写したいのですが
どのようにすればいいのですか?
0211デフォルトの名無しさん
2005/05/31(火) 19:21:03いったん、暫定的にTStringsオブジェクトに内容をコピーして
それをMemo2にまたコピーするとか・・・
0212デフォルトの名無しさん
2005/05/31(火) 19:35:46アクティブ状態ページ上のコンポーネントを指定するやりかたってあるのですか?
0213デフォルトの名無しさん
2005/05/31(火) 19:38:12for (int i = 0; i < PageControl1->ActivePage->ControlCount; i++)
{
TMemo* memo = dynamic_cast<TMemo*>(PageControl1->ActivePage->Controls[i]);
if (memo)
Memo2->Text = memo->Text;
}
0214デフォルトの名無しさん
2005/05/31(火) 19:48:41TTabSheet::PageIndex
0215デフォルトの名無しさん
2005/05/31(火) 20:05:02やっとできました。ありがとうございます。
0216デフォルトの名無しさん
2005/05/31(火) 20:10:04どうやったの?
0217デフォルトの名無しさん
2005/05/31(火) 22:41:590218デフォルトの名無しさん
2005/06/01(水) 08:24:02どうすればいいのでしょうか?
よろしくお願いします。m(_ _)m
0219デフォルトの名無しさん
2005/06/01(水) 08:31:000220デフォルトの名無しさん
2005/06/01(水) 09:05:26できました!
ありがとうございました!
0222デフォルトの名無しさん
2005/06/01(水) 10:21:16つかBCB6スターチームってなんなのさ
0223デフォルトの名無しさん
2005/06/01(水) 11:29:15俺の所にも来た。
そうだな、全然統合されていない。VCLのバージョンが違うんだから当たり前か。
Delphiは.NETも積んでるし。
BCBがマネージコード対応になったら、それはそれで気持ち悪いけど。BCB9
になったらそうなるんだろうな。
0224218
2005/06/01(水) 12:38:31ありがとうございます。m(_ _)m
でも、TJPEGImageっていうのがないんです。。。(T▽T)
0225デフォルトの名無しさん
2005/06/01(水) 12:49:46ヘルプには載ってるぞ
>TJPEGImage は jpeg グラフィックをカプセル化します。
>ユニット
>jpeg
0226デフォルトの名無しさん
2005/06/01(水) 12:55:22あーTJPEGImageを使う時は、ヘッダファイルを手書きしないとだめだぞ。
#include <jpeg.hpp>
こういう細かい所が抜けててあかんなーBCB6は。
0227デフォルトの名無しさん
2005/06/01(水) 12:56:54> ヘッダファイルを手書き
> #include <jpeg.hpp>
言ってる事と、やってる事に違いが…(w
0228デフォルトの名無しさん
2005/06/01(水) 13:08:22ゴメソ
×ヘッダ・ファイルを手書き
○インクルード・ヘッダを手書き
VCLコンポーネントを貼り付けるとほとんど自動的にインクルード・ヘッダが
挿入されるので、それに慣れてるとやっちゃいやすい。俺も初めの頃は
悩んだ。
0229222
2005/06/01(水) 16:11:07やっぱ統合されてないか。ならヴぁーじょんうpイラネ
いつになったらDelphi統合されるのやら・・・
0230218
2005/06/01(水) 16:14:30ありがとうございました。
いまひとつわからないんですけど、できました。(^▽^)
また、よろしくお願いします。m(_ _)m
0231デフォルトの名無しさん
2005/06/01(水) 16:43:34#pragma link "jpeg"
//Image1にimage.jpeを読みこみ表示する場合
Image1->Picture->LoadFromFile("image.jpg");
// TJEPGImageにimage.jpeを読みむ場合
// ↓の場合は初期化なしで読みこめます。
TJPEGImage* pJPEGImage = new TJPEGImage();
pJPEGImage->LoadFromFile("image.jpg");
保存も簡単に行えます。TImageに表示されたいるグラフィックをJPEG形式で保存する
場合は、TJPEGImageオブジェクトにAssignメソッドを使ってグラフィックをコピーして SaveToFileメソッドで保存します。
その時、JPEGのクオリティーはCompressionQualityプロパティで指定できます。
//Image1の画像をクオリティー50、ファイル名”image.jpg"で保存する
TJPEGImage* pJPEGImage = new TJPEGImage();
pJPEGImage->Assign(Image1->Picture->Graphic);
pJPEGImage->CompressionQuality = 50;
pJPEGImage->SaveToFile("image.jpg");
delete pJPEGImage;
0232デフォルトの名無しさん
2005/06/01(水) 17:40:18PDFへの印刷は、プリンタ名にAcrobat Distillerを指定すればよいと思うのですが、
任意の場所(C:\PDF)に任意の名前(TestPDF.pdf)でPDFファイルを出力するには
どのように設定してやればよいのでしょうか?
0233デフォルトの名無しさん
2005/06/01(水) 18:58:05コード上でどう書いたらいいでしょうか?
指定方法がよくわからないです・・・
0234デフォルトの名無しさん
2005/06/01(水) 19:03:21PageControl1->Pages[インデックス]->Enabled = false;
みたいにできない?
0235デフォルトの名無しさん
2005/06/02(木) 01:36:020236デフォルトの名無しさん
2005/06/02(木) 01:54:25TList *lstButtonに動的生成したイメージを追加していって、10個程度追加したところでRemoveしていくと、途中からイメージが削除されなくなってしまいます。
(追加)
TImage *button=new TImage(this);
button->Parent=Form1;
button->Canvas->Brush->Color=(TColor)(0x907070);
button->Canvas->Ellipse(Rect(0,2,76,76));
lstButton->Add(button);
(削除)
lstButton->Remove((TObject *)lstButton->Items[n番目]);
たぶん、これだけではわからないと思うので、ソースを↓にアップしました。
ttp://sempron.hp.infoseek.co.jp/BCB5_TEST.zip
解決方法を教えてください。
よろしくお願いします。
0237デフォルトの名無しさん
2005/06/02(木) 02:43:47それリストの項目が減ってるだけで、イメージ自体は1個も削除されてないよ。
で、リストに残ったイメージを移動させてるから、場合によって一見削除されてるように見えるだけ。
BCB5にTObjectListがあるなら、
lstButton=new TList;
↓
lstButton = new TObjectList(true);
って変更だけでいいはず。Remove時にリスト側で中身(イメージ)を削除してくれる。
BCB5に無ければ自分でdelete。
0239218
2005/06/02(木) 08:14:44遅くなりましたが、
ありがとうございました。m(_ _)m
0240デフォルトの名無しさん
2005/06/02(木) 10:15:59できました!
ありがとうございます!
0241デフォルトの名無しさん
2005/06/02(木) 16:08:470242デフォルトの名無しさん
2005/06/02(木) 16:15:410243デフォルトの名無しさん
2005/06/02(木) 16:17:250244デフォルトの名無しさん
2005/06/02(木) 17:59:440245デフォルトの名無しさん
2005/06/02(木) 18:06:200246デフォルトの名無しさん
2005/06/02(木) 19:32:46BCB新しいの早く出てほひい
0247デフォルトの名無しさん
2005/06/02(木) 19:46:370248デフォルトの名無しさん
2005/06/02(木) 22:20:55Visual Studio 2005より先に出てくれれば、確実に買うのだけどな。
Visual Studio 2005より後なら、Visual Studio 2005を買っちまうだろうな。
きっとMSまたキャッシュバックとか一大セールやるだろうし。
0249デフォルトの名無しさん
2005/06/03(金) 12:45:48今度会社でBCB5Enterpriseをインストールしないといけなくなりそう
なのですが、BCB6を消さずにBCB5をインストールしても問題ないでしょうか?
#BCB5EnterpriseをインストールするのはBCB6PersonalではQuickRepなどが
#ないためです。
0250デフォルトの名無しさん
2005/06/03(金) 16:17:30ステータスバーにそのリンク先のURLが表示されますよね
これってどうやればいいのですか?
0251デフォルトの名無しさん
2005/06/03(金) 16:17:37ステータスバーにそのリンク先のURLが表示されますよね
これってどうやればいいのですか?
0252デフォルトの名無しさん
2005/06/03(金) 16:22:52OnStatusTextChange ってまんまイベントがある
0253デフォルトの名無しさん
2005/06/03(金) 17:27:57すいません、まだ素人なものであまり詳しくないです
ソース教えてもらえませんか
0254デフォルトの名無しさん
2005/06/03(金) 17:37:240255デフォルトの名無しさん
2005/06/03(金) 17:55:54質問は明確に。
ステータスバーにテキストを出すやり方なのか、
マウスが何かの上に来たときに処理をさせるやり方なのか、
あるいはIEを自作したいのか。
0256デフォルトの名無しさん
2005/06/03(金) 18:20:56マウスを、リンク張ってある文字や画像に合わせると
ステータスバーにそのリンク先のURLを
表示できるようにしたいです
0257256
2005/06/03(金) 18:34:070258デフォルトの名無しさん
2005/06/03(金) 18:39:01void __fastcall TForm1::CppWebBrowser1StatusTextChange(TObject *Sender, BSTR URL)
{
StatusBar1->SimpleText = URL;
}
0259デフォルトの名無しさん
2005/06/03(金) 18:48:540260デフォルトの名無しさん
2005/06/03(金) 18:55:530261256
2005/06/03(金) 19:09:23ありがとうございます。感謝です
0262デフォルトの名無しさん
2005/06/03(金) 19:17:220263デフォルトの名無しさん
2005/06/03(金) 19:23:51pDC->TextOut(0,0,"HelloWorld");
0264デフォルトの名無しさん
2005/06/03(金) 19:55:27VC++5.0入門 1 基礎知識1 GUI 97/7/14
VC++5.0入門 2 基礎知識2 能書き 97/7/22
VC++5.0入門 3 基礎知識3 ウインドウを描くサンプル 97/7/28
VC++5.0入門 4 基礎知識4 アプリケーションとウインドウ 97/8/4
VC++5.0入門 5 基礎知識5 メッセージマップ 97/8/11
VC++5.0入門 6 基礎知識6 デバイスコンテキスト 97/8/18
VC++5.0入門 7 はじめてのAppWizard 97/8/25
VC++5.0入門 8 続・はじめてのAppWizard 97/9/1
VC++5.0入門 9 新しいプロジェクト 97/10/19
VC++5.0入門10 マウスのキャプチャ 97/10/26
VC++5.0入門11 ドキュメントとOnDraw 97/11/3
VC++5.0入門12 CArray 97/11/9
0265デフォルトの名無しさん
2005/06/04(土) 04:05:430266デフォルトの名無しさん
2005/06/04(土) 14:33:04組もうと思ってます。
C++Builder6のPersonal版でもOfficeのコンポーネントは入ってるでしょうか?
0267デフォルトの名無しさん
2005/06/04(土) 14:33:43Proのほうがいいとおもわれ
0268デフォルトの名無しさん
2005/06/04(土) 14:40:17レスありがとうございます。
マジっすか、Personal版だとOfficeコンポーネント付いてこないんですか。
Proの6万円は予算的にはキッツイなぁ……。
Personal版だと、下のようなモジュール集も使えないわけでしょうか?
http://www.vector.co.jp/soft/win95/prog/se231565.html?g
0269デフォルトの名無しさん
2005/06/04(土) 15:04:34個人ユースでも需要のあるモノだからね。
十中八九大丈夫だからPersonal版にしとき。
0270デフォルトの名無しさん
2005/06/04(土) 15:06:58そのコンポーネント一度も使ったことがないが、何するき?
0271デフォルトの名無しさん
2005/06/04(土) 15:15:21Excelと連携をとって、Excel上のセルの値を取得したり、逆にセルにデータを
書き込んだりというようなことです。
0272デフォルトの名無しさん
2005/06/04(土) 15:24:56つかそんなコンポProでもないお。BCB入れてるPCにOffice入れてないから取り込めるかは知らん。
ただ、Proはいろいろやろうとする時に必要になってくるVCLソース付いてるのが大きい。
0273デフォルトの名無しさん
2005/06/04(土) 15:27:47あんまり適当な嘘を垂れ流さないように。
http://www.borland.co.jp/cppbuilder/papers/servers/servers1.html
0274sage
2005/06/04(土) 15:30:05なんでDelphi7には日本語版のマニュアルが付いてないんだ?
つい数日前に知ったわけだけど結構ショック受けたよ・・・
0275デフォルトの名無しさん
2005/06/04(土) 15:31:130276デフォルトの名無しさん
2005/06/04(土) 16:15:22(・〜・)?
0277デフォルトの名無しさん
2005/06/04(土) 16:25:22プロジェクト|タイプライブラリの取り込み
http://www.borland.co.jp/cppbuilder/papers/servers/servers1.html
0278デフォルトの名無しさん
2005/06/04(土) 16:25:52プロジェクト|タイプライブラリの取り込み
http://www.borland.co.jp/cppbuilder/papers/servers/servers1.html
0279デフォルトの名無しさん
2005/06/04(土) 17:21:34{
Variant V = Variant::CreateObject("Word.Application");
V.OlePropertySet("Visible", true);// プロパティの設定
ShowMessage("Word を表示しました");
V.OleFunction("Quit");// メソッドの呼び出し
V = Unassigned;
}
0280デフォルトの名無しさん
2005/06/04(土) 20:51:42[Delphi] GDI+ テキストの縦書き
0281デフォルトの名無しさん
2005/06/04(土) 21:43:43数字以外ならShowMessage("入力ミス")
と表示するようにしたいのですが、どのようにすればいいでしょうか?
0282デフォルトの名無しさん
2005/06/04(土) 22:39:21if(atoi(Edit->Text.c_str()) == 0)
{
ShowMessage("入力ミス");
}
else
{
ShowMessage("入力が完了しました");
}
もしくは AnsiString の ToIntDef(int) メソッドを使うとか・・・。
0283デフォルトの名無しさん
2005/06/04(土) 22:44:15数字以外のときは例外処理しなきゃならんけど。
0284デフォルトの名無しさん
2005/06/04(土) 22:56:49Edit->Text.Length() バイトを、1バイトづつ( 0x30<=x && x<=0x39 ) で比較。
範囲外のバイトがあればエラー。
できれば比較前に、Edit->Text は全角to半角変換をかける。
0285デフォルトの名無しさん
2005/06/04(土) 22:59:18クリップボードからの貼り付けも出来ないようにしたいです。
http://homepage1.nifty.com/MADIA/delphi/delphi_bbs/200403_04030067.html
0286うう
2005/06/05(日) 00:08:300287デフォルトの名無しさん
2005/06/05(日) 00:54:45C++Builder6Proを持ってる漏れがマジレス
TExcelApplicationは、ProにしかついてないYO(・∀・)
0288287
2005/06/05(日) 01:02:51http://www.borland.co.jp/delphi/papers/servers/
0289本田
2005/06/05(日) 01:53:21>Office Solutions Development
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/odc_2003_ta/html/odc_ancoffsol.asp
>Microsoft Excel Objects
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbaxl10/html/xltocobjectmodelapplication.asp
0290デフォルトの名無しさん
2005/06/05(日) 05:11:280291デフォルトの名無しさん
2005/06/05(日) 06:14:17同封されている案内の方(バージョンアップ価格が記載されている方)に
「Delphiの時期メジャーリリースで統合予定」とある。
0292デフォルトの名無しさん
2005/06/05(日) 06:49:10今の入力支援は重すぎなんで機能切ってるしなぁ・・・。
0293デフォルトの名無しさん
2005/06/05(日) 10:55:49Win32APIのStretchBlt()とSetStretchBltMode()
使ったら?といってもたいした伸縮モードは選べるわけじゃないけど
0294デフォルトの名無しさん
2005/06/05(日) 16:01:06ありがとうございます。
\65000は痛かったけど、覚悟を決めてPro版買ってきました。
もう後にはひけません!
0295デフォルトの名無しさん
2005/06/05(日) 16:44:31Borland C++Builder 6 Professional StarTeam Edition
56,666円
StarTeam Editionなしの無印Professionalってもう売っていないんだね。
0296デフォルトの名無しさん
2005/06/05(日) 17:18:47もっと安いのもあったのにって嘲笑いたいわけ?
orzとでもレスすれば満足?
0297デフォルトの名無しさん
2005/06/05(日) 17:56:03逆に、アプリケーションからエクスプローラへのやり方がわかりません。どなたか教えてください。
0298デフォルトの名無しさん
2005/06/05(日) 18:38:35(・〜・)?
無印も定価\68,000だお
一時期\48,000パッケージもあったけど
0299デフォルトの名無しさん
2005/06/05(日) 19:22:03>>283
>>284
サンクスです。ビルダー使い始めた素人
なので>>282さんのソースを借りました。
0を入れたとき入力ミスと判定されましたけど、
0のときも("入力が完了しました");
としたいです。 それで、StrToInt(Edit1->Text) != 0
の条件も追加したらエラーになりました。
どう修復した方がいいです?
0300デフォルトの名無しさん
2005/06/05(日) 19:31:02if (TryStrToInt(Edit1->Text, value))
ShowMessage("入力が完了しました");
else
ShowMessage("入力ミス");
0301ミ,,゚Д゚彡 ◆A6VzDeLphI
2005/06/05(日) 21:30:18それがVCLでは難しいのねー。
昔は有名なコンポーネントがあったのだが
どこかへ消失してしまったらしい。
Delphiだとこのへんかしら。
サンプル: "Drag & Drop でファイル名を受け渡す"
http://forum.nifty.com/fdelphi/samples/01406.html
0302デフォルトの名無しさん
2005/06/06(月) 04:22:28どうしたらいいですか?教えてください。
0303デフォルトの名無しさん
2005/06/06(月) 09:57:47業務目的だとPersonal使えないし
この際Proでよかったんじゃない?
がんばれ〜
0304デフォルトの名無しさん
2005/06/06(月) 10:03:33たぶんフォームでこれをやる
::SetWindowPos(Handle, HWND_TOPMOST, Left, Top, Width,Height,
SWP_NOACTIVATE | SWP_NOMOVE | SWP_NOSIZE);
0305デフォルトの名無しさん
2005/06/06(月) 12:54:24その方法でうまくいきました、有難うございます。
0306ApplicationEvents1SettingChange
2005/06/06(月) 21:12:140307デフォルトの名無しさん
2005/06/06(月) 23:15:040308デフォルトの名無しさん
2005/06/07(火) 18:06:54はてなのシステムの開発、運用、保守に携わって頂ける 方を募集します。PerlやApache、MySQL等のRDBMSの 知識が必要となりますが、これらの知識をこれから身に 付けたいという意欲のある方も歓迎します。
必須な知識
Perl 言語の使用経験
ウェブアプリケーションの開発・運用経験
オブジェクト指向プログラミングの基礎知識
RDBMS の基礎知識
Linux の基礎知識
あると好ましい知識
オリジナルのソフトウェア、ウェブアプリケーション などの設計経験
MySQL を前提とした大規模な RDBMS 環境の構 築・運用知識
XML関連技術に関する知識
blogに関する技術の知識
Linux やその他 OS に関する高度な知識 (ネイ ティブアプリケーションの開発経験、カーネルのコ ードレベルでのチューニング技術など)
(C言語、Perlを問わず)Apache API を用いたアプ リケーション開発に関する知識
mod_perl によるウェブアプリケーションンプログラ ミングの知識
上記に当てはまらない得意な技術に関しても、都度評 価・加味いたします。
また、英語のネイティブスピーカーを優遇します。
We demand an English native speaker with precedence. However, Japanese minimum conversation skill is needed.
デザイナー
0309デフォルトの名無しさん
2005/06/07(火) 18:13:130310デフォルトの名無しさん
2005/06/07(火) 20:04:18Form1の大きさに合わせてPageControlの大きさも変化するように
するにはどうすればいいのですか?
大きさを変えると、その大きさがPageControlより小さくなると
PageControlが隠れてしまいます
0311デフォルトの名無しさん
2005/06/07(火) 20:08:01PageControl->Align = alClient;
0312デフォルトの名無しさん
2005/06/07(火) 20:57:41ありがとうございます。
それだとボタンとかのコンポーネントみんな隠れていまします・・・。
PageControlにCppWebBrowserを配置してて
PageControl->Align = alClient;
だと、CppWebBrowserが隠れてしまいます。
しかもスクロールバーも隠れてしまい、なんだか
変になってしまいました・・・
0313312
2005/06/07(火) 21:15:12すいません
0314デフォルトの名無しさん
2005/06/08(水) 00:53:24リソーススクリプト(.rc)が含まれるプロジェクトがビルドできなくなりました。
rcファイルにはwavファイル、アイコン、ビットマップが1つ記述してあります。
"全てのプロジェクトを再構築"してもexeが出来ないので、
"その後に全てのプロジェクトをメイク"するとようやく出来上がります。
.rcファイルを除外してからビルドすると一発でできる。。。
これって何とかならないでしょうか?俺だけ?
0315デフォルトの名無しさん
2005/06/08(水) 01:05:530316デフォルトの名無しさん
2005/06/08(水) 01:16:55リソーススクリプトはbrcc32.exeで手動コンパイルしてresをプロジェクトに入れろって某乱堂のエロい人が言ってた
0317デフォルトの名無しさん
2005/06/08(水) 01:18:080318デフォルトの名無しさん
2005/06/08(水) 01:29:45SysUtilsルーチンのMidStr()という文字列の一部分を抜き出す関数が、
正常に動作してくれません!
AnsiString str;
str=MidStr("12345ハロー",5,2);
ShowMessage(substr);
上のソースで、"12345ハロー"という文字列の5番目から2文字分取って
きて「5ハ」という文字列が表示されなきゃいけません。
それなのに実行すると「5・」とかになってしまいます。
これは何が間違ってるのでしょうか……
0319デフォルトの名無しさん
2005/06/08(水) 01:35:24どっこいしょ!!!
void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString ansiA = "12345ハロー";
Caption = ( (WideString)ansiA ).SubString(5,2);//5ハ
}
0320デフォルトの名無しさん
2005/06/08(水) 01:37:43×SysUtils ○StrUtils
0321デフォルトの名無しさん
2005/06/08(水) 01:43:26うややや、アッサリうまく行きました!!か、ネ申!!
じ、じゃあ……↓のページの解説は間違いなんでしょうか……
ttp://www11.plala.or.jp/studyhall/cpp/BcbAnsiString.html
0323デフォルトの名無しさん
2005/06/08(水) 01:53:200324デフォルトの名無しさん
2005/06/08(水) 01:56:26なんと!
うちはBCB6のPro版ですが、MidStrの文字カウントはbyte単位になっちゃってます。
0325デフォルトの名無しさん
2005/06/08(水) 02:02:42じゃパッチ当ててないとか。うちもBCB6Proだから。
0326デフォルトの名無しさん
2005/06/08(水) 02:06:21Borland C++Builder 6 アップデートパック #4 は当ててあるので、たぶん
違いの原因は別にあるんだと思います。
うーん、、、
0327デフォルトの名無しさん
2005/06/08(水) 02:08:410328デフォルトの名無しさん
2005/06/08(水) 02:38:01{
//コンポーネント パッケージのインストール 実行時パッケージを無効
//#include <StrUtils.hpp>
AnsiString str;
str=MidStr("12345ハロー",5,2);
Caption = str;
}
0329デフォルトの名無しさん
2005/06/08(水) 09:48:320330デフォルトの名無しさん
2005/06/08(水) 11:18:440331デフォルトの名無しさん
2005/06/08(水) 11:25:19フォルダツリー?
0332デフォルトの名無しさん
2005/06/08(水) 12:02:04表示する説明をしたWebページがあったのですが、URLを失念してしまいました。
誰か教えて・・・・
0333332
2005/06/08(水) 12:04:47忘れたんじゃなくて、同サイトの違うページのURLをブックマークしてただけでした。
0334デフォルトの名無しさん
2005/06/08(水) 19:40:58Memo1->Perform(EM_SCROLL, SB_BOTTOM(SB_TOP), 0);
の第一引数の指定方法が解りません。何と入力すればいいですか?
0335デフォルトの名無しさん
2005/06/08(水) 19:54:38{
//コンポーネント パッケージのインストール 実行時パッケージを無効
//#include <StrUtils.hpp>
AnsiString str;
str=MidStr("12345ハロー",5,2);
Caption = str;
}
0336デフォルトの名無しさん
2005/06/08(水) 20:10:15APIのSetScrollPos()使ってみたら?
0337デフォルトの名無しさん
2005/06/08(水) 20:43:53ありがとうございます。しかしそれだとスクロールバーの
位置は変更できてもオブジェクトのスクロールが行われません。
良く解ってなくてすいません。
0338デフォルトの名無しさん
2005/06/08(水) 20:51:55じゃあ、ScrollWindowかScrollWindowExはどうかな
0339デフォルトの名無しさん
2005/06/08(水) 20:53:490340デフォルトの名無しさん
2005/06/08(水) 21:08:11http://hogehoge2001.at.infoseek.co.jp/note-delphi.html
0341デフォルトの名無しさん
2005/06/08(水) 21:23:56皆さんありがとうございます。
一番上に持ってきたいのですが
HWND hwnd = CppWebBrowser1->Handle;
int pos = GetScrollPos(hwnd, SB_VERT);
SetScrollPos(hwnd, SB_VERT, 0, true);
ScrollWindow(hwnd, 0, -pos, NULL, NULL);
UpdateWindow(hwnd);
どこがいけないのかご指摘願います。
0342デフォルトの名無しさん
2005/06/08(水) 21:28:400343デフォルトの名無しさん
2005/06/08(水) 22:11:51> HWND hwnd = CppWebBrowser1->Handle;
CppWebBrowser1->HWND じゃないのかな?
> ScrollWindow(hwnd, 0, -pos, NULL, NULL);
↑ここで領域矩形を指定してないよ
0344デフォルトの名無しさん
2005/06/08(水) 22:29:02すいません難しすぎて解りません
>>343
TRectで渡せないのですがどうやればいいですか?
0345デフォルトの名無しさん
2005/06/08(水) 22:35:200346デフォルトの名無しさん
2005/06/08(水) 22:39:55出ます。”不明なエラー”っていう例外が。
0347デフォルトの名無しさん
2005/06/08(水) 22:40:10> TRectで渡せないのですがどうやればいいですか?
RECT r = ClientRect;
とかやって&r を引数にわたしてやるとか・・・
0348デフォルトの名無しさん
2005/06/08(水) 22:43:270349デフォルトの名無しさん
2005/06/08(水) 22:51:12普通にインターフェースを取得していってもいいけど、Variant使うと見た目はアレだけど簡単。
// 上へ
OleVariant(CppWebBrowser1->Document).OlePropertyGet("body").OlePropertySet("scrollTop", 0);
// 下へ
long scrollHeight = OleVariant(CppWebBrowser1->Document).OlePropertyGet("body").OlePropertyGet("scrollHeight");
OleVariant(CppWebBrowser1->Document).OlePropertyGet("body").OlePropertySet("scrollTop", scrollHeight);
0350デフォルトの名無しさん
2005/06/08(水) 22:52:03TRect r = CppWebBrowser1->ClientRect;
ScrollWindow(hwnd, 0, -pos , NULL, &r);
ちょこっとスクロールするだけで一番上まできません。
0351デフォルトの名無しさん
2005/06/08(水) 22:59:20#iclude<sysvari.h>
OleVariant(CppWebBrowser1->Document).body.scrollTop := ピクセル位置;
とでもやるのかなあ、Delphiはようわからん
0352デフォルトの名無しさん
2005/06/08(水) 22:59:38その方法であっさりできました。記述がBCBっぽくなくて
素人には理解不能ですが勉強になりました。
わざわざ付き合ってくださった皆さんどうもありがとうございました。
もっと勉強して今度は自分が他人に教えられるようになりたいと思います。
お騒がせしました。
0353351
2005/06/08(水) 23:01:500354デフォルトの名無しさん
2005/06/09(木) 13:50:07で中国語のキー入力を受付させる為にはどうすればよいでしょうか?
IMEを中国語(簡体字)-QuanPinにして中国語で「好」と入力しているにも
関わらず、簡体文字の「好」の文字コード(BAC3)ではなく、
JISコードの「好」の文字コード (8D44)がTemoの文字列領域に書き込まれて
しまう為、正常に「好」という字が表示されません。
オブジェクトの設定を下記のように設定していますが、
この他にも設定が必要でしょうか?
ご存知の方がいましたら教えてください。
オブジェクト:TMemo
プロパティの設定
FontName:SimSun (中国語 簡体文字をサポートしているフォント)
CharSet:GB2312_CHARSET (中国語 簡体文字をサポートしてる文字セット)
ImeMode imChinese
ImeName 中国語(簡体文字)-QuanPin
環境
Borland C++ Builder
Version5.0 (Build 12.34)
0355デフォルトの名無しさん
2005/06/09(木) 14:02:46VBから入ったユーザーだけど、コードをC++へ変換するような感じで簡単に学習できる
0356デフォルトの名無しさん
2005/06/09(木) 14:58:36http://www.tntware.com/delphicontrols/unicode/
0357デフォルトの名無しさん
2005/06/09(木) 15:23:16そうです。フォルダツリーです。
0358デフォルトの名無しさん
2005/06/09(木) 17:35:19Unicode対応コンポを入れることによりステップ実行ができなくなるなどの
現象が起きてしまっていますが、とりあえず中国語を表示することが
できました。
回答ありがとうございます。
0359デフォルトの名無しさん
2005/06/09(木) 17:37:36>>356でした。
0360デフォルトの名無しさん
2005/06/09(木) 17:49:04自分は直接API使ってやったことしかないけど
ttp://hp.vector.co.jp/authors/VA016117/shbff.html
ttp://homepage2.nifty.com/DSS/VCPP/API/SHBrowseForFolder.htm
0361デフォルトの名無しさん
2005/06/09(木) 17:52:12shlobj.h のインクルードが要るかも
0362デフォルトの名無しさん
2005/06/09(木) 17:59:09ってC++Builder6じゃつかえないんでしょうか?
インストールしても、項目が表示されないっす・・・
0363デフォルトの名無しさん
2005/06/10(金) 07:48:13これのデバッグ用にC++Builder6を使えますか?
コンソールからbcc32を使って普通にビルドした実行ファイルが
ちゃんと動作するのは確認済みです。
0364age
2005/06/10(金) 07:54:24使えます
0365デフォルトの名無しさん
2005/06/10(金) 18:18:47ちゃんと動作するものであれば、
デバッグの必要がないだろ。
0366デフォルトの名無しさん
2005/06/10(金) 19:24:110367デフォルトの名無しさん
2005/06/10(金) 20:13:420368デフォルトの名無しさん
2005/06/10(金) 23:33:03{
//コンポーネント パッケージのインストール 実行時パッケージを無効
//#include <StrUtils.hpp>
AnsiString str;
str=MidStr("12345ハロー",5,2);
Caption = str;
}
0369デフォルトの名無しさん
2005/06/11(土) 09:05:440370デフォルトの名無しさん
2005/06/11(土) 23:47:080371デフォルトの名無しさん
2005/06/12(日) 02:50:080372デフォルトの名無しさん
2005/06/12(日) 09:46:28見えない状態かを知るにはどうしたらいいでしょうか。
プロパティかメソッド等でわかるのかと思ったのですが・・・
0373デフォルトの名無しさん
2005/06/12(日) 10:25:570374デフォルトの名無しさん
2005/06/12(日) 11:25:05LeftCol
TopRow
VisibleColCount
VisibleRowCount
辺りでない?
0376デフォルトの名無しさん
2005/06/13(月) 04:08:44{
//コンポーネント パッケージのインストール 実行時パッケージを無効
//#include <StrUtils.hpp>
AnsiString str;
str=MidStr("12345ハロー",5,2);
Caption = str;
}
0377デフォルトの名無しさん
2005/06/13(月) 06:21:03コメント、ありがとうございます。
しかしながら、がんばるつもりは毛頭ありません。
趣味ですから、飽きたらやめますし、おもしろければ続けます。
ここは、ほとんど自分用のコード貯蔵庫 兼 メモです。
読まれることはとってもうれしいですけど、そのためにコードの
解説や説明などを書くつもりはないです。1ヶ月後に自分でも
忘れそうなことだけをメモしておきます。
しかし宣伝のURL書いちゃいました。
0378デフォルトの名無しさん
2005/06/13(月) 09:49:18マウスを動かしても項目を複数選択できるようにするにはどうしたらいいでしょうか?
プロパティは↓のように設定してます。
MultiSelect = true;
ViewStyle = vsReport;
0379デフォルトの名無しさん
2005/06/13(月) 09:50:47[2] 問題文(含コード&リンク):
2次元配列に格納されている4次元方行列A=[aij](要素は実数)において、
a11+a22+a33a+a44 および、a14+a23+a32+a41
を求めて表示する。ただし、上記の和はfor文による繰り返しにより記述する。
計算に先立ち、行列の各要素の値はキーボードにより、以下のように入力する。
a11...a14=1.0 2.0 3.0 4.0
a21...a24=5.0 6.0 3.1 2.0
a31...a34=1.3 2.5 9.0 4.3
a41...a44=1.3 2.5 9.0 4.3
[3] 環境
[3.1] OS:Windows2000
[3.2] コンパイラ(バージョン):
[3.3] 言語:C++
[4] 期限:6月15日12:00まで
[5] その他の制限:for,while,if,switch,break,配列まで習いました。
一週間ほど考えましたが、ムリでした・・・。
どうかお願いします。。
0380379
2005/06/13(月) 09:52:53板間違えてしまいました。
本当にすいませんでした。
0381デフォルトの名無しさん
2005/06/13(月) 10:33:290382デフォルトの名無しさん
2005/06/13(月) 15:59:35標準入力をそのままスキャンするなボケとか言われる奴。
0383デフォルトの名無しさん
2005/06/13(月) 20:04:03正しいのに警告されると鬱陶しいです
0384デフォルトの名無しさん
2005/06/13(月) 20:40:14#pragma warn -xxx
#pragma option -w-xxx
0385デフォルトの名無しさん
2005/06/13(月) 20:41:510386デフォルトの名無しさん
2005/06/13(月) 22:20:23CppWebBrowserとbutton1を使って、
Button1を押すとメモ帳でソースコード表示がでるようにするってできますか?
0387デフォルトの名無しさん
2005/06/13(月) 22:32:010388デフォルトの名無しさん
2005/06/14(火) 02:46:00ttp://bdn.borland.com/article/0,1410,33085,00.html
0389デフォルトの名無しさん
2005/06/14(火) 02:46:540390デフォルトの名無しさん
2005/06/14(火) 03:35:54http://bdn.borland.com/article/0,1410,33085,00.html
http://www.borland.com/us/products/cbuilder/index.html
http://www.borland.com/cbuilder/
0391デフォルトの名無しさん
2005/06/14(火) 03:49:11http://www.borland.co.jp/about/message/openletter_cb.html
http://bdntv.borland.com/cppbuilder/DeXterCPP_HelloWorldVCL.html
ボーランドならびに弊社C++Builder製品群に対し、
長期間にわたるご支 援を賜りまして誠にありがとうございます。
0392デフォルトの名無しさん
2005/06/14(火) 06:14:57教えてくれませんか?
0394デフォルトの名無しさん
2005/06/14(火) 08:55:25チミが できますか? って聞いてるから、親切な>>387が できます って教えてるじゃないか。
できるかできないかを聞かれたら、答えはできるかできないしかないだろう。
0395デフォルトの名無しさん
2005/06/14(火) 11:53:09BDNtv: C++Builder Hello World Application in DeXter
http://bdn.borland.com/article/0,1410,33085,00.html
0396デフォルトの名無しさん
2005/06/14(火) 20:20:44ま、いいけど。
0397デフォルトの名無しさん
2005/06/14(火) 23:22:34じゃあ、買う気半減だなぁ。
0398デフォルトの名無しさん
2005/06/14(火) 23:38:09それよか64bitコンパイラ早くだしてくれ
0399デフォルトの名無しさん
2005/06/15(水) 00:52:45Longhornだと.NETアプリしか動かんとかいうなら困るが
0400デフォルトの名無しさん
2005/06/15(水) 04:01:48IEbrowser.OlePropertySet("Visible","true");
IEbrowser.OleProcedure("Navigate","http://www.google.com");
Sleep(1000);//
if(IEbrowser.OlePropertyGet("Busy")<1)
ShowMessage("show");
///
require 'win32ole'
ie = WIN32OLE.new('InternetExplorer.Application')
ie.Navigate("http://www.google.co.jp/")
ie.Visible = true
while ie.busy
sleep 1
end
q = ie.document.all.Item("q")
q.Value = "ruby"
btnG = ie.document.all.Item("btnG")
btnG.click()
0401デフォルトの名無しさん
2005/06/15(水) 13:06:34希望書くけど、
Win64、英語リソース標準添付、かな。
0402デフォルトの名無しさん
2005/06/15(水) 17:22:22これをTImageでやるにはどうしたらいいですか?
{
ReleaseCapture();
dynamic_cast<TImage *>(Sender)->Perform( WM_SYSCOMMAND, 0xF012, 0 );
}
0403デフォルトの名無しさん
2005/06/16(木) 02:08:01C++BuilderでMDIアプリを作ろうとしてます。
で、子フォーム(ダイアログ)にて入力された値を、変数を介して親フォーム
のほうで参照するにはどうしたらいいのでしょうか?
コンポーネントのTextプロパティなどを介して値をやり取りすることはできて
るのですが、グローバル変数のようなものを介して値を受け渡す方法がうまく
いきません。
子フォームで入力された名前を配列に収めて、親フォームで使いたいのですが……。
0404デフォルトの名無しさん
2005/06/16(木) 03:07:581.そのままグローバル変数を使う。
2.子フォームのメンバに配列なり何なりを追加する。
3.子フォームのメンバに配列なり何なりのポインタ/参照を追加し、
子フォームのコンストラクタで呼出もとのもつ配列なり何なりの
ポインタ/参照を引き渡すようにする。
などなど。
0405デフォルトの名無しさん
2005/06/16(木) 05:20:34ダイアログでOKが押されてたら
親の変数に代入する
Txxx::OKButtonClick(TObject *Sender)
{
親へのポインタ->変数=Edit1->text;
}
その2
ShowModal()でOKで帰ってきたら
値を読み出してから
ダイアログを破棄する
if(ダイアログクラスへのポインタ->ShowModal()==mrOk){
変数=ダイアログクラスへのポインタ->Edit1->text;
}
delete ダイアログクラスへのポインタ;
ってこんな単純なことでいいのかな?
0406デフォルトの名無しさん
2005/06/16(木) 11:48:54ネタいただきました。
ありがとう。
ttp://homepage2.nifty.com/love/005.html
0407デフォルトの名無しさん
2005/06/16(木) 12:19:33あー、これTImageはやっぱこの方法しかないのか〜
0408デフォルトの名無しさん
2005/06/16(木) 18:48:21if( なんとか ) ここでcatchにいかせたい
}
catch(...){
}
上記のtryの中のifで条件が真ならcatchに飛ばす方法を教えてください
0409デフォルトの名無しさん
2005/06/16(木) 19:04:22とかでいいですかね?
0410デフォルトの名無しさん
2005/06/16(木) 19:04:23例外投げればいいじゃない
0411デフォルトの名無しさん
2005/06/16(木) 21:20:55同じ処理をしてることになりますよね?
これってうまくまとめたりできませんか?
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Memo1->Text="テスト";
}
void __fastcall TForm1::Button2Click(TObject *Sender)
{
Memo2->Text="テスト";
}
void __fastcall TForm1::Button3Click(TObject *Sender)
{
Memo3->Text="テスト";
}
void __fastcall TForm1::Button4Click(TObject *Sender)
{
Memo4->Text="テスト";
}
0412デフォルトの名無しさん
2005/06/16(木) 21:30:15ヒント: [ dynamic_cast<TMemo*>(Sender) ]
0413デフォルトの名無しさん
2005/06/16(木) 21:32:09Button1とMemo1、Button2とMemo2という風に、2つを関連付ける何かさえ用意すればまとめられるよ。
0414デフォルトの名無しさん
2005/06/16(木) 21:34:09Button1以外のButtonは
オブジェクトインスペクタ→イベントタブ→OnClick→Button1Click
を選択すればいいだけ。
それでどのボタンをクリックしてもButton1Clickが呼ばれる。
void __fastcall TForm1::Button1Click(TObject *Sender)
{
// Sender で場合分け
}
0415デフォルトの名無しさん
2005/06/16(木) 21:34:190416デフォルトの名無しさん
2005/06/16(木) 21:34:49しまったorz
0417411
2005/06/16(木) 21:51:36どうやったらいいんですか?
0418デフォルトの名無しさん
2005/06/16(木) 21:51:40std::map<TObject*, TMemo*> MemoMap;
MemoMap[Button1] = Memo1;
MemoMap[Button2] = Memo2;
void __fastcall TForm1::ButtonClick(TObject *Sender)
{
MemoMap[Sender]->Text = "テスト";
}
0419デフォルトの名無しさん
2005/06/16(木) 22:02:170420デフォルトの名無しさん
2005/06/16(木) 22:04:21サンクスです
なぜかエラーがでました・・・
[C++ Error] Unit1.cpp(17): E2316 'map' is not a member of 'std'
[C++ Error] Unit1.cpp(17): E2040 Declaration terminated incorrectly
[C++ Error] Unit1.cpp(18): E2451 Undefined symbol 'Button1'
[C++ Error] Unit1.cpp(18): E2275 { expected
[C++ Error] Unit1.cpp(19): E2451 Undefined symbol 'Button2'
[C++ Error] Unit1.cpp(19): E2238 Multiple declaration for 'MemoMap'
[C++ Error] Unit1.cpp(18): E2344 Earlier declaration of 'MemoMap'
[C++ Error] Unit1.cpp(19): E2275 { expected
[C++ Error] Unit1.cpp(23): E2316 '_fastcall TForm1::ButtonClick(TObject *)' is not a member of 'TForm1'
[C++ Error] Unit1.cpp(24): E2206 Illegal character ' ' (0x8140)
[C++ Error] Unit1.cpp(24): E2206 Illegal character ' ' (0x8140)
[C++ Error] Unit1.cpp(24): E2206 Illegal character 'テ' (0x8365)
[C++ Error] Unit1.cpp(24): E2206 Illegal character 'ス' (0x8358)
[C++ Error] Unit1.cpp(24): E2206 Illegal character 'ト' (0x8367)
0421デフォルトの名無しさん
2005/06/16(木) 22:08:40> [C++ Error] Unit1.cpp(24): E2206 Illegal character ' ' (0x8140)
> [C++ Error] Unit1.cpp(24): E2206 Illegal character 'テ' (0x8365)
おい
0422デフォルトの名無しさん
2005/06/16(木) 22:11:58>>418をマネるなら
・#include <map>を書く
・MemoMap[Button1] = Memo1とかはTForm1のコンストラクタにでも書く
・Button1をダブルクリックしてButton1Clickを作り、その中にMemoMap[Sender]->Text = "テスト";を書く
・Button2〜Button4のOnClickにButton1Clickを設定する。
0423デフォルトの名無しさん
2005/06/16(木) 22:13:16昔のCグラマがintに何でも突っ込んでたという本に書いてた話を思い出した
0424デフォルトの名無しさん
2005/06/16(木) 22:18:550425デフォルトの名無しさん
2005/06/16(木) 22:25:430426デフォルトの名無しさん
2005/06/16(木) 22:41:58( ・д・)
0427デフォルトの名無しさん
2005/06/17(金) 02:40:48> 425 名前:デフォルトの名無しさん[] 投稿日:2005/06/17(金) 00:28:55
> 強制IDの投票中です
>
> プログラム技術板に強制ID制を導入すべきか否か
> http://etc4.2ch.net/test/read.cgi/vote/1118144381/
0428デフォルトの名無しさん
2005/06/17(金) 07:02:410429デフォルトの名無しさん
2005/06/17(金) 10:21:53例外投る記述を教えてください
0430デフォルトの名無しさん
2005/06/17(金) 10:37:530431デフォルトの名無しさん
2005/06/17(金) 12:29:160以外なら正常に動作するんだが・
0432デフォルトの名無しさん
2005/06/17(金) 13:26:03日記はチラシの裏に書け
質問なら自分の書いたコードとエラーメッセージを晒せ
話はそれからだ
0433デフォルトの名無しさん
2005/06/17(金) 13:42:56馬鹿には聞いてませんよ?
質問の意味が理解できないならレスしないでね、お前のレスは荒らしと同じだよ
0434デフォルトの名無しさん
2005/06/17(金) 13:48:190435デフォルトの名無しさん
2005/06/17(金) 13:55:160436デフォルトの名無しさん
2005/06/17(金) 14:03:120437デフォルトの名無しさん
2005/06/17(金) 14:08:52ソースを提示しようとしない質問者は、ほとんどの場合、問題外の無茶苦茶なコードを書いている。
本人もその自覚があるから、なんのかんのと言い逃れて提示しようとはしないんだな。
それでは誰も相手してくれないよ。
0438デフォルトの名無しさん
2005/06/17(金) 14:31:06それソースみてもお前じゃわかんないと思うぜ?
0439デフォルトの名無しさん
2005/06/17(金) 14:33:190440デフォルトの名無しさん
2005/06/17(金) 14:33:48ようですな。
0441デフォルトの名無しさん
2005/06/17(金) 14:42:040442デフォルトの名無しさん
2005/06/17(金) 14:45:19そしてこの手のやつは最後まで情報を小出しにしてスレを無駄に消費するだろうなってのも
なんとなく分かる。
ソース晒せば大抵は簡単に解決するんだけどね。
0443デフォルトの名無しさん
2005/06/17(金) 14:56:27情けないこと
0444デフォルトの名無しさん
2005/06/17(金) 15:07:04フィルタのかかった話をいくら聞いたって無駄なんだよね
0445デフォルトの名無しさん
2005/06/17(金) 15:41:13理解できないからって逆に煽ることしかできないのかこいつらって
0446デフォルトの名無しさん
2005/06/17(金) 15:57:460447デフォルトの名無しさん
2005/06/17(金) 16:03:05こっちから問い直すなんて優しすぎっす。
0448デフォルトの名無しさん
2005/06/17(金) 16:20:14いつもの馬鹿が沸いてるだけ。放置しる。
0449デフォルトの名無しさん
2005/06/17(金) 17:20:48ここからダウンロードできる ImageProc.pdf は、初歩のデジタルイメージ処理の解説としてはとても素晴らしい内容だ。コード例は、C であるが解説方 法がよいので分かりやすく、他の言語にも簡単に移植できるだろう。さっそく Delphi でも応用してみるか。
0450デフォルトの名無しさん
2005/06/17(金) 19:52:11Project1.exeのButton1を押すとproject2.exeを実行
することってどうやるの?
0451デフォルトの名無しさん
2005/06/17(金) 23:46:380452デフォルトの名無しさん
2005/06/18(土) 00:54:390453デフォルトの名無しさん
2005/06/18(土) 01:15:440454デフォルトの名無しさん
2005/06/18(土) 01:33:08spawnle
spawnlp
spawnlpe
spawnv
spawnve
spawnvp
spawnvpe
0455デフォルトの名無しさん
2005/06/18(土) 05:39:250456デフォルトの名無しさん
2005/06/18(土) 12:54:100457デフォルトの名無しさん
2005/06/18(土) 13:40:330458デフォルトの名無しさん
2005/06/18(土) 18:26:14Win32APIを叩かず、VCLで実現することってできますかね?
0459デフォルトの名無しさん
2005/06/18(土) 18:34:172)マウスクリック発生
3)任意のキー押下イベント発生
4)任意のアプリの最大化、最小化などの制御
5)画面上の任意の座標のピクセル色を取得
とりあえず、このくらい。
1、2はVCLで実現できそうなんだけど、他が実現可能かどうかよくわかんないっす。
0460デフォルトの名無しさん
2005/06/18(土) 18:59:122) mouse_event
3) keybd_event
4) ShowWindow
5) GetDC(0)
1ぐらいな希ガス。2ってできる?
0461デフォルトの名無しさん
2005/06/18(土) 19:05:001すら実現できなかったorz
0462デフォルトの名無しさん
2005/06/18(土) 19:07:530463デフォルトの名無しさん
2005/06/18(土) 19:13:58Mouse->CursorPos.x = 0;
Mouse->CursorPos.y = 0;
こういうのは駄目ね
0464デフォルトの名無しさん
2005/06/18(土) 20:22:26Mouse->CursorPosy = TPoint(0,0);
がどう違うか? って良い練習問題だな。
これが即答できればVCL入門編は合格とw
0465デフォルトの名無しさん
2005/06/18(土) 21:53:27Examples\Toolsapi\Keybindings
っていうのがあるんですが、これって何に使えば良いんですか?
エディタでの置換にも関連しているような内容をメモってたのです
が、使い方がわかりません。
よろしくお願いします。
0466デフォルトの名無しさん
2005/06/18(土) 22:51:46ウイルス
0467デフォルトの名無しさん
2005/06/18(土) 22:54:42それエラー出るよ。
Tpoint型はLong型に代入できませんって
0468デフォルトの名無しさん
2005/06/18(土) 23:03:460469デフォルトの名無しさん
2005/06/18(土) 23:19:580470デフォルトの名無しさん
2005/06/18(土) 23:22:360471デフォルトの名無しさん
2005/06/18(土) 23:24:03○CursorPos=TPoint(0,0);
タイポはタイポとして
Mouse->CursorPos.x = 0;
Mouse->CursorPos.y = 0;
これと
Mouse->CursorPos = TPoint(0,0);
の違いがマジで分からんのか?
あと、古いBCBはホントにTMouse::CursorPosが読み出し専用になってる?
だれか確認できたら教えて。
0472デフォルトの名無しさん
2005/06/18(土) 23:30:070473デフォルトの名無しさん
2005/06/18(土) 23:31:530474デフォルトの名無しさん
2005/06/18(土) 23:45:59んー、前者と後者で違う結果になるのはなんで?
0475デフォルトの名無しさん
2005/06/19(日) 00:14:52Mouse->CursorPos.x=0;
これは次と同値。
Mouse->GetCursorPos().x=0
GetCursorPos()の返すTPoint型一時オブジェクトのxに代入している。
Application::Mouseには反映されない。
Mouse->CursorPos=TPoint(0,0);
これは次と同値。
Mouse->SetCursorPos( TPoint(0,0) );
Application::Mouseに反映される。
まぁ、初心者の引っかかりやすいところではある。
0476デフォルトの名無しさん
2005/06/19(日) 01:19:46解説どうもです!
0477デフォルトの名無しさん
2005/06/19(日) 01:21:31その名の通りキーバインディング追加や変更のサンプル
0478デフォルトの名無しさん
2005/06/19(日) 07:17:25Panel1->align=Left;
にした。
そこで、横の幅をウィンドウの幅のちょうど半分にするってできる?
ウィンドウの大きさを変えればそれに伴って、Panelの大きさも
変わるようにしたい
0479デフォルトの名無しさん
2005/06/19(日) 07:26:56FormのOnResizeに
Panel1->Width = Width / 2;
でできるはず
0480デフォルトの名無しさん
2005/06/19(日) 08:08:3739!
0481デフォルトの名無しさん
2005/06/19(日) 10:20:32ですか?
それともおいらの脳みそが足らない?
0482デフォルトの名無しさん
2005/06/19(日) 10:47:02IDEまわりのことなら仕様。VCLリファレンスやSTL、標準ライブラリが役に立たないなら脳味噌が足りない。
0483デフォルトの名無しさん
2005/06/19(日) 11:03:44なんで使用例のソースコードをのっけてくれないんだろ。
0484デフォルトの名無しさん
2005/06/19(日) 11:31:36ぱっと見分からんと思うものはちゃんと例を載せてくれてる。
俺的にVCLのリファレンスはMSDNライブラリよりはるかに分かりやすい。
0485デフォルトの名無しさん
2005/06/19(日) 11:59:41「コンポーネントパレットの概要」のヘルプの表示が、
順番が変わって使いにくくなった。
0486デフォルトの名無しさん
2005/06/19(日) 12:07:27http://onigiri.s3.xrea.com:8080/delphi/index.php?OpenToolsAPI%2F%A5%B7%A5%E7%A1%BC%A5%C8%A5%AB%A5%C3%A5%C8%A5%AD%A1%BC%A4%CE%C0%DF%C4%EA
0487デフォルトの名無しさん
2005/06/19(日) 13:13:35AnsiString __fastcall classFoo::mojiget(AnsiString file, int nIndex)
{
AnsiString tmp;
TStringList *ls = new TStringlist;
ls->LoadFromFile(file);
tmp =ls->Strings[nIndex];
ls ->Free();
return tmp;
}
2
void __fastcall classFoo::main()
{
AnsiString Args;
AnsiString aRet;
Args ="c:/test.txt";
Class_mojiget *m = new Class_mojiget;
aRet =m->read(Args).Strings[1];
m->Free;
}
1の方法を2の方法に書き換えたいのですが、この書き換え方は可能ですか?
フォームを追加してその中に関数を埋め込む方法とかは勘弁して下さい…
0488デフォルトの名無しさん
2005/06/19(日) 13:34:030489デフォルトの名無しさん
2005/06/19(日) 19:22:12今までの経験上、VCLのヘルプが分かりにくいという人は
C++とOOPが分かってないケースがほとんど。
「C++の開発環境使うならこんぐらいは当然知ってるでしょ」
という前提知識がないってこと。
しかし、C++標準ライブラリヘルプは実際使いにくいっしょ。
VCLヘルプみたいにリンクが張ってあったらいいんだけど。
訳が酷いのはもうあきらめてるがw
0490デフォルトの名無しさん
2005/06/19(日) 19:25:23Free()は使うなとヘルプに書いてあるはずだが
0491487
2005/06/19(日) 19:48:04えっ!マジっスか!?知らなかった…
Freeしなくても関数抜けると勝手にガベージコレクトっぽい事してくれんの??
0492デフォルトの名無しさん
2005/06/19(日) 19:52:47ヘルプ嫁
0493487
2005/06/19(日) 20:02:07Free メソッドは,オブジェクトインスタンスが NULL ではない場合には自動的にデストラクタを呼び出します。
だそうな。
Free使うとメモリの内容が壊れてしまうんですか?
0494デフォルトの名無しさん
2005/06/19(日) 20:08:46ヘルプに載ってないobjectは検索ととりあえず勘でテキトーにコーディングしてみて上手く動いたら多分こーいう使い方なんだろう
って方法でlib増やしてく方法?
0495デフォルトの名無しさん
2005/06/19(日) 20:12:26>用してください。delete キーワードは Free メソッドを呼び出してオブジェクトを破棄します。
0497デフォルトの名無しさん
2005/06/19(日) 21:07:210498デフォルトの名無しさん
2005/06/19(日) 22:07:06たしかにそうかも。
BCBのヘルプに不満のある自分は、C++歴1週間ほど。
BCBにくる前に1ヶ月ほどVC#やってて、その知識の応用でプログラムしてました。
自分の知識不足は正直否定できないっす。
いまだに->を使う場合と.を使う場合がいまいち区別ついてないぐらいで。
ただ、そういう初心者でも、逆に使用例のコードさえ見れば、かなり複雑な
実用プログラムでもがんがん作れるんで使用例は個々のトピックごとに掲載
してほしいなあと。
ちなみにVC#2005βのエディタの支援機能はかなり神ですた。あれは初心者の入門
開発環境として最適ですね。
0499デフォルトの名無しさん
2005/06/19(日) 22:21:510500デフォルトの名無しさん
2005/06/19(日) 23:10:23>>486
有り難うございます。理解するには少し時間がかかりそうです。
0501デフォルトの名無しさん
2005/06/19(日) 23:45:20いやーBCB6が出たころならそうだが、
いまどきのPCなら牛丼並クラスでも
結構サクサク動くぞw
0502デフォルトの名無しさん
2005/06/19(日) 23:54:02VBやC#は開発環境と言語が結びついてるから
開発環境のほうで言語初心者の面倒も見る必要があるが
C/C++は汎用言語だから
「開発環境使うならまず自分で言語を勉強して来い」
ってことでしょ。
>ただ、そういう初心者でも、逆に使用例のコードさえ見れば、かなり複雑な
実用プログラムでもがんがん作れるんで使用例は個々のトピックごとに掲載
してほしいなあと
はっきり言うけど、これを望むならVBなりC#を使うべき。
0503デフォルトの名無しさん
2005/06/20(月) 00:13:08VC使ったら涙出るよホント。
でも次期バージョンのデモ見る限り今度はちゃんと軽くなってそうで吉。
0504デフォルトの名無しさん
2005/06/20(月) 00:14:29VC#メインで使いたいんだけど、現状だと.NET依存のアプリを配布するのは
ちょっと厳しいものがあるんだよね。
0505デフォルトの名無しさん
2005/06/20(月) 00:22:28という、うちのメインはセロ2.4Gだがストレスは感じないよ。
0506デフォルトの名無しさん
2005/06/20(月) 08:57:080507デフォルトの名無しさん
2005/06/20(月) 09:48:130508デフォルトの名無しさん
2005/06/20(月) 09:59:150509デフォルトの名無しさん
2005/06/20(月) 10:02:19たしかアキバで見たことある
たぶんそれかと
0510デフォルトの名無しさん
2005/06/20(月) 10:43:42ttp://tenpo.sofmap.com/tenpo/event/5111174.htm
すき屋がカレー80円引き券配ってるから
今から豚丼くいに行って来るよ・・・。
0511デフォルトの名無しさん
2005/06/20(月) 13:11:24馬券は激しく負け組・・・。
0512デフォルトの名無しさん
2005/06/20(月) 17:31:590513デフォルトの名無しさん
2005/06/20(月) 18:53:57どうやったら最小化できるんでしょうか?
メインフォーム→サブフォームのように作っています。
サブフォームは最小化できますが、
メインフォームが最小化できません。
常に前面に配置するような指定はしていません。
誰か助けてください・・・
0514デフォルトの名無しさん
2005/06/20(月) 19:00:480515デフォルトの名無しさん
2005/06/20(月) 23:47:58class TSubForm : public TForm
{
// 省略
// ウィンドウプロシージャをオーバーライド
void __fastcall WndProc(TMessage &Message);
};
////////////////////////////////////////////////////////////////
void __fastcall TSubForm::WndProc(TMessage &Message)
{
TSubForm::WndProc(Message);
if(Message.Msg == WM_SYSCOMMAND && Message.WParam == SC_MINIMIZE)
{
SendMessage(MainForm->Handle, WM_SYSCOMMAND, SC_MINIMIZE, 0);
}
}
これで出来ると思うけど、どうでしょう。
0516デフォルトの名無しさん
2005/06/21(火) 11:40:21記述場所がわかりませんでした。
すいません。
>>515
試しに処理を入れてみると、
EStackOverflowクラスの例外を生成しました。
スタックオーバロー
プロセスは停止しています。再開するにはステップ実行または実行を選択してください。
とエラーがでます。
何らかの方法で、メモリ確保しないとダメですか?
自作のDLLが悪さしているような気も・・・
0517デフォルトの名無しさん
2005/06/21(火) 12:18:58この時点ですでにエラー起こしてるじゃ?
0518デフォルトの名無しさん
2005/06/21(火) 13:22:570519デフォルトの名無しさん
2005/06/21(火) 15:03:010520デフォルトの名無しさん
2005/06/21(火) 15:11:12つまり、再帰で無限にコールされてない?
0521デフォルトの名無しさん
2005/06/21(火) 15:27:10{
// 省略
// ウィンドウプロシージャをオーバーライド
void __fastcall WndProc(TMessage &Message);
};
////////////////////////////////////////////////////////////////
void __fastcall TSubForm::WndProc(TMessage &Message)
{
TForm::WndProc(Message); // ゴメンここにバグあったw
// TSubForm じゃなくて TForm ね。 スマン
if(Message.Msg == WM_SYSCOMMAND && Message.WParam == SC_MINIMIZE)
{
SendMessage(MainForm->Handle, WM_SYSCOMMAND, SC_MINIMIZE, 0);
}
}
0522521
2005/06/21(火) 15:29:060523デフォルトの名無しさん
2005/06/21(火) 15:32:080524デフォルトの名無しさん
2005/06/21(火) 16:34:33自分で処理を書いていないので、エラーはわからないです。
>>518
メーリングリストもチェックしてみたのですが、
最小化できなくなるのは多々あるようです。
解決策がありませんでしたが・・・
>>519
>>520
再帰処理で溢れているようですね
>>521
修正してみましたが、やはり最小化イベントが何度も走っているようです。
(フォームが点滅しているので、最小化したり、元にもどったりの繰り返し?)
で、ある一定の回数を越えたらオーバーフローしているようです。
0525デフォルトの名無しさん
2005/06/21(火) 16:41:060526デフォルトの名無しさん
2005/06/21(火) 16:47:19おそらく他に問題があると思われ。
0527デフォルトの名無しさん
2005/06/21(火) 19:50:210528デフォルトの名無しさん
2005/06/21(火) 23:08:470529デフォルトの名無しさん
2005/06/21(火) 23:09:040530デフォルトの名無しさん
2005/06/21(火) 23:09:210531デフォルトの名無しさん
2005/06/21(火) 23:09:360532sage
2005/06/21(火) 23:11:55わかった。
わかったから。
よくやったよ。
0533デフォルトの名無しさん
2005/06/22(水) 10:41:03マジかよ・・・
0534デフォルトの名無しさん
2005/06/22(水) 11:31:42これって5から6に変えたらどれくらいふえてる?
0535デフォルトの名無しさん
2005/06/22(水) 12:19:250536デフォルトの名無しさん
2005/06/22(水) 12:53:390537デフォルトの名無しさん
2005/06/22(水) 12:55:28オマエモナー
0538デフォルトの名無しさん
2005/06/22(水) 14:01:180539デフォルトの名無しさん
2005/06/22(水) 14:37:080540デフォルトの名無しさん
2005/06/22(水) 14:38:310541デフォルトの名無しさん
2005/06/22(水) 14:52:19MDIChildCountとMDIChildrenでループをまわす
FindComponent、ComponentCountは使えない
0542デフォルトの名無しさん
2005/06/22(水) 16:44:36それはよくボタンとかのコントロールの時につかってたけど、それってフォームでもできる?
>>541
だよね?
今はMDIChildrenのNameと比較してやってるんだけど、FindComponentみたいにフォームをさがしてくれる
のがあるかな〜っておもって聞いてみますた
どうやら、なさそうでつね
0543(7)
2005/06/22(水) 20:42:22ブラウザコンポーネント(CppWebBrowser)を使うと、IEの履歴に残って
しまいますが、これを抑止する方法ってご存じのかたありませんでしょうか?
0544デフォルトの名無しさん
2005/06/22(水) 21:57:580545デフォルトの名無しさん
2005/06/22(水) 22:02:41111111111111111111111111111111111111111111111111111111111111111
0546デフォルトの名無しさん
2005/06/22(水) 22:11:54Screen->Formsとかじゃいかんですか
0547デフォルトの名無しさん
2005/06/22(水) 22:35:230548デフォルトの名無しさん
2005/06/22(水) 23:28:39と、それ以外のPCで動作が違ってしまって困ってます。
OSは両マシンともにWin2000です。
プログラムはテキスト置換ツールで、置換テーブルを読み込み、
テキストファイルを読み込んで特定ワードを置換し、置換後の内容を
ファイルに吐き出すという、まあ単純なものです。
ファイルの入出力のあたりは正常に動作してるのですが、開発マシン以外
で実行すると、肝心の文字列置換がぜんぜんできていません。
どのへんに原因がありそうでしょうか? 使用しているのはBCB6です。
0549デフォルトの名無しさん
2005/06/22(水) 23:56:28>どのへんに原因がありそうでしょうか?
ソースコード
0550デフォルトの名無しさん
2005/06/23(木) 01:01:52ダイナミックRTLのチェックは外した?
0551デフォルトの名無しさん
2005/06/23(木) 01:29:44エラー対処の質問は必ずソースを提示すること。
ソースを見ずにあれこれ言い合っても何の解決にもならない。
ソースは当面の問題に直接関係しないところを省いて、
しかし問題の発生が確認できる必要最小限のものを提示すること。
実のところ、そうやって問題のありかを絞っていくうちに
大抵は自分で解決できるものだが。
0552デフォルトの名無しさん
2005/06/23(木) 02:30:420553デフォルトの名無しさん
2005/06/23(木) 16:44:19C++ Builder 6でプログラムを作成しています。
ヘッダに以下のよう関数宣言されています。
INT16 ELCALLTYPE cmd_printf(char *p, ...);
コンパイルすると、リンカエラーが出てきます。
ただ、可変長引数を削除して
INT16 ELCALLTYPE cmd_printf(char *p);
とするとリンカエラーが出なくなります。が、可変長引数が使えなくて...
もともと、VC++を推奨している製品で、その関数を利用しているので
そこの問題かなぁとも思うのですが。
可変長引数の仮引数の記述の仕方がVC++と異なるってことはありますか?
おねがいします。
0554デフォルトの名無しさん
2005/06/23(木) 18:26:140555デフォルトの名無しさん
2005/06/23(木) 19:07:020556デフォルトの名無しさん
2005/06/23(木) 22:44:05確かに、可変長引数の関数のシンボルの付け方が、VC++とはちがうっぽい。
単に_が付くかどうかの差だけなんだけど。
俺もapr_pstrcatとかが全然リンクできなくて
BC++対応をあきらめた覚えがある。
0557& ◆D3ra0B2LiQ
2005/06/24(金) 00:14:36そうですね、エラーメッセージなかったです。
[リンカエラー]外部シンボル’_cmd_printf’が未解決
となっています。おねがいします。
>556
う〜む、あきらめられない・・・(^^;)
>単に_が付くかどうかの差だけなんだけど。
どこに「_(アンダーバー)」がつくのですか?
「...」以外の記述の仕方があれば試してみようかと思っていますが。
0558デフォルトの名無しさん
2005/06/24(金) 01:07:34プロジェクト→オプション→コンパイル(詳細)→出力→下線を生成
で選択できるが、これがリンクエラーの原因かどうかは分からない。
0559デフォルトの名無しさん
2005/06/24(金) 01:07:51作成できるのですが、フォーム無しでDLLで使用する方法がわかりません。
ご存知の方、教えてください。
参照する情報やURLおよびサンプルコードがあれば教えてください。
0560デフォルトの名無しさん
2005/06/24(金) 01:19:11#include <msxmldom.hpp>
#include <xmldom.hpp>
#include <XMLDoc.hpp>
#include <XMLIntf.hpp>
#pragma link "xmlrtl.lib"
でいんでない?
0561デフォルトの名無しさん
2005/06/24(金) 01:22:53関数の実体ってDLLにあるの?
0562556
2005/06/24(金) 01:53:45declspec(dllexport) __stdcallなので、非可変引数の関数には_は付かないけど
可変引数の奴は、あえて__stdcallが付けられていないみたい。
ただ、それが原因かどうかはわからないけど、
(いろいろ宣言を工夫しても)正しい呼び出し形式のまま、両方をリンクすることは出来なかった覚えがある。
で、今、さらっとimplibを実行してみたら
-a Add '_' alias for MS flavor cdecl functions
というオプションがあった。
可変引数というのは、要するに__stdcallであっても__cdeclになるということなので
試してみると良いかも。
俺は面倒なのでもうやらないけど
もしうまくいったら報告よろしく。
0563556
2005/06/24(金) 03:07:39ヘッダにこう
char* apr_pstrcat(apr_pool_t *p, ...);
char* apr_pstrdup(apr_pool_t *p, const char * s);
宣言されている関数を bcc32 test.cpp とすると
Error: 外部シンボル '_apr_pstrcat' が未解決(F:\TMP\TEST.OBJ が参照)
Error: 外部シンボル 'apr_pstrdup' が未解決(F:\TMP\TEST.OBJ が参照)
と出る。
で、
implib -a apr_bor libapr.dll libaprutil.dll
してから、
bcc32 test.cpp apr_bor.lib
とすると、リンクエラーは出ず、正常に動いた。
一応テストコード。
int main(int ac, const char *const *av) {
apr_app_initialize(&ac, &av, NULL);
apr_pool_t *pool;
apr_pool_create(&pool, NULL);
char *s = apr_pstrcat(pool, "abc", "DEF", "123", NULL);
printf("s=[%s]\n", s);
char *v = apr_pstrdup(pool, s);
printf("v=[%s]\n", v);
}
0564デフォルトの名無しさん
2005/06/24(金) 04:06:27自己解決しました。遅ればせながら報告を。
原因:PCのロケールが「英語(US)」になってましたorz
そのせいで全角文字のleadbyteを検出する部分が正常動作しなかったようです。
というわけでお騒がせしました。
0565デフォルトの名無しさん
2005/06/24(金) 17:02:46基本的な質問で申し訳ないのですが
あるクラスを継承して新規クラスを作成する場合って、手書きで行うのでしょうか。
それとも、VC++のよなwizardで作成可能でしょうか。
TThreadから継承する場合は、新規作成-スレッドオブジェクトで可能なことは発見しました。
0566553
2005/06/24(金) 19:46:45>563 さん
implibでオプション-aをつけてやってみたら、
リンカエラーがでずにうまくいきました。
ありがとうございます。問題解決です。
>558 さん
自分の設定では「下線を生成」にチェックがついていたので
これはエラーの原因ではないようでした。
でも、ありがとうございます。
0567デフォルトの名無しさん
2005/06/25(土) 00:26:24VCLのコンポーネントを継承したカスタムコンポーネントは「新規コンポーネント」から。
VCL以外のライブラリで派生クラスを書くときは自力で書く。
0568デフォルトの名無しさん
2005/06/25(土) 11:41:340569デフォルトの名無しさん
2005/06/25(土) 12:14:540570デフォルトの名無しさん
2005/06/25(土) 12:24:190571デフォルトの名無しさん
2005/06/25(土) 20:33:300572デフォルトの名無しさん
2005/06/25(土) 21:09:43VS2005は年内に出るんだったよね・・・
0574デフォルトの名無しさん
2005/06/26(日) 06:04:000575デフォルトの名無しさん
2005/06/26(日) 07:03:00WM_WINDOWPOSCHANGINGで
const SNAP_RANGE = 10;
WINDOWPOS* wndPos = (WINDOWPOS*)message.LParam;
if ((wndPos->flags & SWP_NOMOVE) == 0) {
if (wndPos->x < Screen->WorkAreaLeft + SNAP_RANGE) wndPos->x = Screen->WorkAreaLeft;
if (wndPos->y < Screen->WorkAreaTop + SNAP_RANGE) wndPos->y = Screen->WorkAreaTop;
if (wndPos->x > Screen->WorkAreaRect.Right - wndPos->cx - SNAP_RANGE) wndPos->x = Screen->WorkAreaRect.Right - wndPos->cx;
if (wndPos->y > Screen->WorkAreaRect.Bottom - wndPos->cy - SNAP_RANGE) wndPos->y = Screen->WorkAreaRect.Bottom - wndPos->cy;
}
0576デフォルトの名無しさん
2005/06/26(日) 10:04:37danke
0577デフォルトの名無しさん
2005/06/26(日) 21:15:49アイコンファイルからSetWindowRgn()に渡すためのマスク用ビットマップを作りたいのですが、OpenJaneViewや
Adobe系など一部のアイコンは透過色が8ビットになっているらしく、単色で境界線を判定すると、当然ながら
境界線がきれいに切り取れません。
うまく境界線を切り取る方法について、知恵を貸してください。
0578デフォルトの名無しさん
2005/06/26(日) 21:29:09リージョンの生成は下のサイトのコードCreateBmpRgn2()をそのまま使いました
ttp://www.ne.jp/asahi/nagoya/ahomaro/builder/cpb-054.html
0579デフォルトの名無しさん
2005/06/27(月) 09:48:35RS232Cでバイナリ受信しようとしています。
OleVariant型にバイト配列として取り込む所までは出来たのですが、
そのデータを取り出す方法が解りません。
OleVariant InBuff;
long nRet;
byte InputData[2000];
pMSComm->InputLen = 0;
pMSComm->InputMode= 1; // comInputModeBinary
InBuff = pMSComm->Input;
if(InBuff.IsArray()){
//ここには入る
nRet=InBuff.ArrayHighBound(); //nRetは241(正規の値)
}
~~~~~~~~~~~~~
このInBuffからInputDataに取り出したいのですが・・
どなたか教えて頂けないでしょうか
0580デフォルトの名無しさん
2005/06/27(月) 10:02:54よく知らんがOleVariant::operator Byte*()は?
0581デフォルトの名無しさん
2005/06/27(月) 10:10:18レス有り難う御座います
恥ずかしながら、それの使い方(構文)が解りません。
教えて頂けないでしょうか?
0582デフォルトの名無しさん
2005/06/27(月) 10:44:58ヘルプに載ってるのになぜか未定義っぽい。
Variant::ArrayLock()のがよさげ。
0583デフォルトの名無しさん
2005/06/27(月) 11:19:04リージョンから除外したい領域に複数の色が使われてるという意味ですか?
0584デフォルトの名無しさん
2005/06/27(月) 11:22:33ArrayLock()で変換出来ました!
助かりました、有り難うございました。
0585デフォルトの名無しさん
2005/06/27(月) 19:16:20どこかにC++Builder用のLibファイルはないでしょうか?
MAKEファイルもうまくいかず、
IMPLIB libpq.lib libpq.dll -a
で作成やってみたのですがうまくいきませんでした。
ラッパーもあったのですが、なるべくDLL本体で使いたいので
よろしくお願いします。
0586デフォルトの名無しさん
2005/06/27(月) 21:08:39どのようにすればいいの?
0587デフォルトの名無しさん
2005/06/27(月) 21:21:57知っているが(ry
0588デフォルトの名無しさん
2005/06/27(月) 22:16:16なぁ、拡張子って知ってるか?
しってるなら>>451で分かるでしょ。
0589586
2005/06/27(月) 22:25:19でも>>451の意味がよくわかりません・・・・
0590デフォルトの名無しさん
2005/06/27(月) 22:38:520591デフォルトの名無しさん
2005/06/27(月) 22:45:57それはメモ帳を起動させてreadmeを見られるようにしたいということかね?
「開く」だけではわからん
0592デフォルトの名無しさん
2005/06/27(月) 22:50:07そのレベルならプログラミングより先にWindowsの操作を覚えなさい。
0593デフォルトの名無しさん
2005/06/27(月) 23:35:59当然ながら\nのエスケープシーケンスがただの文字列のままで改行になりません。
\nをエスケープシーケンスとしてうまくDrawTextに渡してやるためにはどうしたらいいでしょうか?
0594デフォルトの名無しさん
2005/06/27(月) 23:41:27改行は \r\n じゃないのかな?
0595デフォルトの名無しさん
2005/06/27(月) 23:46:44DrawText()で
DT_SINGLELINE
を指定してると改行してくれないよ
0596593
2005/06/27(月) 23:58:15RECT r;
r.left=0;
r.top=0;
r.right=96;
r.bottom=96;
::DrawText(Image1->Canvas->Handle,"TEST\nTEST",-1,&r,DT_CENTER | DT_WORDBREAK);
と直接値を指定すれば改行されますが、この値がini->ReadString()から読み込んだ値 = AnsiStringなので、
\n(\\n)をエスケープシーケンスとしてchar *に変換したいんです。
>>595
書き忘れました。
DrawText()にはDT_CENTER | DT_WORDBREAKを指定しています。
0598デフォルトの名無しさん
2005/06/28(火) 00:07:00そら自力で "\\n"を'\n'に変換せな
0599デフォルトの名無しさん
2005/06/28(火) 00:09:220600デフォルトの名無しさん
2005/06/28(火) 00:14:45value=TEST\nTEST
って書いてあるって話じゃ?
0601デフォルトの名無しさん
2005/06/28(火) 00:16:16AnsiReplaceStr(text, "\\n", "\n").c_str() を渡してみたら?
0602593
2005/06/28(火) 01:11:11その様な関数はないのでStringReplaceで置き換えてみたんですが、構文エラーになるんですが・・・
::DrawText(Image1->Canvas->Handle,StringReplace(Edit1->Text,"\\n","\n",).c_str(),-1,&r,DT_CENTER | DT_WORDBREAK | DT_END_ELLIPSIS | DT_EDITCONTROL);
0603デフォルトの名無しさん
2005/06/28(火) 01:17:42ヘルプ見ろ
AnsiReplaceStrは存在する
StringReplaceは引数が>>601とは異なる
結論:おまえ馬鹿だろ
0604593
2005/06/28(火) 01:19:30自分のケアレスミスでした。
フラグにTReplaceFlags()<<rfReplaceAll入れるの忘れてただけでした。
表示もできました。
ありがとうございました。
0606デフォルトの名無しさん
2005/06/28(火) 02:04:270607デフォルトの名無しさん
2005/06/28(火) 06:08:59オブジェクトインスペクタで指定しても既定の右クリックメニューが
表示されてしまいます。どのようにすれば実現できますか?
0608586
2005/06/28(火) 07:02:08そうです
教えてください・・・
0609デフォルトの名無しさん
2005/06/28(火) 08:54:39http://bdn.borland.com/article/0,1410,28797,00.html
これのShowContextMenuでデフォルトのメニューを禁止しつつ、自作のを表示
0610デフォルトの名無しさん
2005/06/28(火) 10:30:27>>451
0611デフォルトの名無しさん
2005/06/28(火) 10:37:31このような警告が出るのですが、何か弊害はあるのでしょうか?
0612デフォルトの名無しさん
2005/06/28(火) 10:40:40最初からMLに投げればいいのに。
0613デフォルトの名無しさん
2005/06/28(火) 10:44:08どっかおかしい場合が多いし
初期化とかが無効になる場合もあるし
メンテが面倒になるし
0614デフォルトの名無しさん
2005/06/28(火) 10:56:39なるほど。
ありがとうございました。
0615デフォルトの名無しさん
2005/06/28(火) 11:12:18ある外部接続機器の状態をなるべく短い間隔で取得し、フォームに表示・更新します。
勿論これ自体は可能なのですが、フォームへの状態表示・更新はそのままに
これとは別のフォームも表示し、こちらではキー入力も可能にしたいのです。
単純にやらかすと、状態表示フォームにCPUパワーを全部持って行かれて
キー入力フォームをアクティブにすることすら出来ません。
どのようにすればいいのでしょうか?
0616デフォルトの名無しさん
2005/06/28(火) 11:17:35それは「状態表示・更新」の方法や更新間隔に問題があるのでは?
0617608
2005/06/28(火) 13:57:230618デフォルトの名無しさん
2005/06/28(火) 14:01:30ヘルプで検索しろ。
それでも分からなかったらプログラミングなんぞ止めろ。
おまえの脳みそじゃムリだ。
0619デフォルトの名無しさん
2005/06/28(火) 14:46:01Button1-> まで書いたら後に続く候補がポップアップするやつね。
この支援機能ってタイムアウトとかあるんですかね?
プロジェクトのあるファイルだけ「構文に誤りが〜」のエラーが出て
上手く働いてくれない。
もちろん、コンパイルは通るし、各行を調べてここからエラーが発生するって
行も見つけたけど、特に問題もない。
途中の行からエラーが出るファイルは、他のファイルよりかなりデカいので、
単にタイムアウトみたいな物なのかなぁと思ってますが。
これの回避方法あったら教えて下さいな。
0620デフォルトの名無しさん
2005/06/28(火) 14:49:21つ[TFileRun]
0621デフォルトの名無しさん
2005/06/28(火) 15:51:55憤りを感じるなら
[ツール]→[エディタオプション]→[支援機能]のコード補完を
切ってしまへば良いのである
支援を使いたいのであればCtrl+Spaceを押せば出てくるしな
0622デフォルトの名無しさん
2005/06/28(火) 17:12:06意味分からないなら、なんでヘルプやネット検索しようとしないわけ?
ヒントっちゅうか ズバリ正解ワード提示してくれてるのにさ。
その姿勢でプログラミングって、そらあかんわ。
0623デフォルトの名無しさん
2005/06/28(火) 18:32:16エラーって、コンパイルエラーじゃなくて支援機能の部分が出すエラー?
0624デフォルトの名無しさん
2005/06/28(火) 19:18:120625デフォルトの名無しさん
2005/06/28(火) 19:45:230626619
2005/06/28(火) 20:11:59そうですね、コンパイルエラーではないです。
[C++ エラー] Frm_Main.cpp(1): ソースコードにエラーがあるためコード補完をおこなえません
こういうエラーが出るわけです。
例えば
if //( がない
Edit1->
と書くとエラーが出るのは当然ですが
if(Edit1->
と書いても同様のエラーが出るわけです。
それで、その行だけを消してコンパイルを通すと、問題なくコンパイル出来ます。
0627デフォルトの名無しさん
2005/06/28(火) 21:30:18ヘッダ内を含めて、ソースを遡ったところに、何か補完機能に理解不能な部分があるんでない?
COMとかで例通りにFAILEDマクロ使ってると、確実にそのエラーが出て、補完機能が役立たずになるんだよなー。
0628デフォルトの名無しさん
2005/06/28(火) 23:04:09うちも.cppがある程度のサイズを超えると、支援機能はエラーしか
返さなくなるよ。
少しずつコードを小さくしていくとわかる。
なぜエラーになるのか調べてるうちに気づいたけど、BCB6はエラーでも
BCB5では問題なく機能する・・・
0629デフォルトの名無しさん
2005/06/28(火) 23:22:04遅レスすいません。ありがとうございます
新規フォームのUnit1.hとUnit1.cppを
書き換えるだけでいいんでしょうか?
0630デフォルトの名無しさん
2005/06/28(火) 23:50:44新規フォームにTCppWebBrowser貼り付けた状態で、
#include "mshtmhst.h" を忘れないことと、あそこには書いてないけどTForm1のメンバに
MyDocHandler* dochandler を持たせれば、ほぼコピペでいける。
0631デフォルトの名無しさん
2005/06/29(水) 07:07:45コンパイルは通りデフォルトのメニューは表示されなく
なりましたが肝心のオリジナルの方も表示されません。
難しいス
0632lo
2005/06/29(水) 09:51:19loと申します。よろしくお願いいたします。
ビットの操作が分からなくて、悩んでいます。
大変申し訳ないのですが、皆様の力をお貸しください。
下記のプログラムにて、
bufに格納されている、数値(No)を取り出し、
その数値(No)を書き換えたあと、
再度、bufに格納する。
というプログラムを書きたいのですが、
再度、bufに格納する方法が分かりません。。。
大変お手数ですが、やり方をお教え願えないでしょうか?
よろしくお願いいたします。
*********************************************
unsigned charNo;
unsigned longbuf;
No = (unsigned char)( ( buf >> 14 ) & 0x07l );
// Noに任意の数値を格納する。
// bufに書き戻す。
*********************************************
0633デフォルトの名無しさん
2005/06/29(水) 10:20:41スレタイを声に出して百回読むこと。
0634デフォルトの名無しさん
2005/06/29(水) 10:23:29#どこかの BBS にここの URL を貼り付けている私がおられるようだが、もっとみてみてもらいたいような・・・
0635デフォルトの名無しさん
2005/06/29(水) 10:57:540636デフォルトの名無しさん
2005/06/29(水) 11:13:04ShowContextMenuの中でPopupMenu1->Popupみたいに自分で呼ぶんだよ
0637デフォルトの名無しさん
2005/06/29(水) 12:22:170638デフォルトの名無しさん
2005/06/29(水) 12:25:37その進行状況を示しています。(インストーラみたいな感じ)
ユーザーにチェックを入れてもらう為ではないので、それを禁止したいのですが
TMemoのReadOnlyのようなプロパティがあれば早いのですがありません。
良い方法を教えてもらえませんか?
0639デフォルトの名無しさん
2005/06/29(水) 12:29:15プログレスバーに変える
0640デフォルトの名無しさん
2005/06/29(水) 12:55:24数はGetSystemInfoのdwProcessorType。
HTは↓のQueryHyperThreadingか。HTじゃないんで試せないけど。
http://66.102.7.104/search?q=cache:qan2Udz4xwIJ:hazelware.luggle.com/tutorials/cpuinfo.html
>>638
サブクラス化してマウスメッセージ無視とか。でも描いたほうが無駄にウィンドウ増やすよりいいんじゃない。
DrawFrameControl(Canvas->Handle, &TRect(0, 0, 13, 13), DFC_BUTTON, DFCS_BUTTONCHECK | DFCS_CHECKED);
0641デフォルトの名無しさん
2005/06/29(水) 12:59:530642デフォルトの名無しさん
2005/06/29(水) 13:05:55BはAの約数です。と表示しそうでなければ
BはAの約数ではありません。と表示するプログラム教えてください
二つの整数を入力してください。
整数A:12
整数B:6
BはAの約数です。
こうなるようお願いします
0643デフォルトの名無しさん
2005/06/29(水) 13:07:44C言語なら俺に聞け! Part 109
http://pc8.2ch.net/test/read.cgi/tech/1119435171/
C/C++の宿題を片付けます 46代目
http://pc8.2ch.net/test/read.cgi/tech/1119514274/
0644デフォルトの名無しさん
2005/06/29(水) 13:11:21すいませんスレ違いでした
0645デフォルトの名無しさん
2005/06/29(水) 20:29:150646デフォルトの名無しさん
2005/06/29(水) 21:19:34virtual HRESULT STDMETHODCALLTYPE ShowContextMenu(
/* [in] */ DWORD dwID,
/* [in] */ POINT __RPC_FAR *ppt,
/* [in] */ IUnknown __RPC_FAR *pcmdtReserved,
/* [in] */ IDispatch __RPC_FAR *pdispReserved) {
TPoint p;
GetCursorPos(&p);
Form1->PopupMenu1->Popup(p.x, p.y);
return S_OK;
}
エラーが出てコンパイルできません
未定義のシンボルForm1
0647デフォルトの名無しさん
2005/06/29(水) 21:23:13そのエラーでなんで原因が特定できないのか小一時間問いつめたい
0648646
2005/06/29(水) 22:00:31#include "Unit1.h"(Form1)
しているんですが。
0649デフォルトの名無しさん
2005/06/29(水) 22:03:090650デフォルトの名無しさん
2005/06/29(水) 23:35:540651デフォルトの名無しさん
2005/06/29(水) 23:40:55class MyDocHandler :public IDocHostUIHandler
{
long refcount;
public:
MyDocHandler() :refcount(1){ }
.
.
.
.
class TForm1 : public TForm
{
__published:// IDE 管理のコンポーネント
TCppWebBrowser *CppWebBrowser1;
TPopupMenu *PopupMenu1;
TMenuItem *N1231;
private:// ユーザー宣言
//MyDocHandler* dochandler;
public:// ユーザー宣言
__fastcall TForm1(TComponent* Owner);
__fastcall ~TForm1();
}
//---------------------------------------------------------------------------
extern PACKAGE TForm1 *Form1;
//---------------------------------------------------------------------------
#endif
これじゃだめですか?
0652デフォルトの名無しさん
2005/06/30(木) 00:03:17Form1から
SendMessage()でForm2にマウスメッセージを送るとか
Form2->Perform();でForm2にマウスメッセージを送るとか
Form1->OnMouseDown = TForm2->:Button1MouseDown; とか
0653デフォルトの名無しさん
2005/06/30(木) 00:04:54MyDocHandlerクラスの定義内で、ShowContextMenuもインラインで書いてるんだと思うけど、
自分がコンパイラだと思って、上から順にコードを辿って
Form1->PopupMenu1->...
ってとこに来た時に、それまでにForm1という文字を見たかどうか考えれば分かるんじゃまいか。
0654デフォルトの名無しさん
2005/06/30(木) 00:11:06>>651の書式だと
ShowContextMenu内のPopupMenu1->Popupで
PopupMenu1が未定義といわれます
class TForm1の後にclass MyDocHandler :public IDocHostUIHandler
とすると
private:// ユーザー宣言
MyDocHandler* dochandler;
が未定義と言われます
0655650
2005/06/30(木) 00:12:12あ、それでよかったんですね。盲点でした。
ありがとうございました。
それともうひとつ、Image1からOnMouswWheelイベントを発生させることはできないのでしょうか
0656デフォルトの名無しさん
2005/06/30(木) 00:12:18Form1::Button1のOnClickイベント内でForm2->OnMouseDownを直接呼び出したら良いやン。
イベントハンドラも関数だからそのまま呼び出せるよ。必要な引数だけ適当に按配すると。
0657デフォルトの名無しさん
2005/06/30(木) 00:32:09そういう時は、ShowContextMenuをインライン定義しないで、ソースのほうに書くとか、
TForm1の後にMyDocHandlerを定義するなら、TForm1の定義の前に、
class MyDocHandler;
と、前方宣言しておくというお決まりのテクニックを使うんだよ。
0658デフォルトの名無しさん
2005/06/30(木) 01:24:08TImageは
TWinControlから派生してないから直接はむりだねえ
TWinControlから派生している
TCustomControlから自前で派生クラスのコントロールをつくって
Image1->Picture->BitmapをこのクラスのCanvasにPaint()でDraw()してやる
この自前のコントロールでならOnMouswWheelイベントを処理できるのでは?
こうすれば見かけ上TImageでOnMouswWheelイベントを処理したように見える
0659デフォルトの名無しさん
2005/06/30(木) 04:05:55ドッキングされているフォームの一つを任意の幅に変更したいのですが
どうやれば良いのですか?
WidthやLRDockWidthを色々触っているんだけど、どうも上手く行かない。
DockManager->LoadFromStream( ) で復元は出来ているのですが
最初に起動した際、保存しているファイルがないのでLoadFromStream( )が使えず
丁度幅が50%になっているのを何とかしたいのです。
0660デフォルトの名無しさん
2005/06/30(木) 05:00:38>最初に起動した際、保存しているファイルがない
これだけが問題なら
生でAPI使うことになるけど
リソースにユーザ定義データとして初期値を格納しておくってのはダメカナ?
0661654
2005/06/30(木) 06:37:03その方法で試したところ見事オリジナルの方を表示する
ことが出来ました
まだC++初めて一週間のど素人に優しく教えていただき
有難うございました
HPで公開させていただきます
0662659
2005/06/30(木) 08:59:44え、それは普通にプログラム側から幅を変更する方法がないということ?
私が知らないだけで、Form->Width = 200; 程手軽ではないとしても
幅を制御する方法があるものと思ってたのですが。
0663デフォルトの名無しさん
2005/06/30(木) 15:10:090664デフォルトの名無しさん
2005/06/30(木) 17:50:13BCB用の設定とかあるけど、なぜかうまくいかない。
0665デフォルトの名無しさん
2005/06/30(木) 19:52:40プログラムってどこかにありますか?探しても見当たらなくて…
0666デフォルトの名無しさん
2005/06/30(木) 20:04:34俺はここ見た
http://www.kmonos.net/alang/boost/install.html
0667デフォルトの名無しさん
2005/07/01(金) 20:00:09Length(WideString('あいうえおABCDE'))は10です。
0668デフォルトの名無しさん
2005/07/01(金) 22:21:33Cって *char で いちいちメモリ確保しないといけないでしょ。
vcl使えるのでありそうなきもするのですが
C++は どうなんでしょうか
delphiと同じ stringみたいなのがあるのでしょうか?
0669デフォルトの名無しさん
2005/07/01(金) 22:22:45Cよりはずっとましだ。
C++標準ライブラリのstd::stringやBCBにはAnsiStringがある。
0670デフォルトの名無しさん
2005/07/01(金) 22:30:30お返事ありがとうございます
あったんですか。。。
Cにはないから長年Delphi2つかってたんですけど・・・
じゃあ、次のDelphiからC++Builderが統合されるので
次のバージョンからDelphi言語やめてC++で作っていこうと思います♪
0671デフォルトの名無しさん
2005/07/01(金) 22:48:39http://www.geocities.co.jp/SiliconValley/7201/tech.html#AnsiString
AnsiString s=" abc_ABC_z ";(前後にスペースが一つずつ入っています) に 対して、次のような操作ができます。
・n番目の文字を取り出す(ただし、s[1]が一番前の文字) s[2] → "a"
・大文字小文字を区別して比較する s.AnsiCompare(" abc_abc_z ") → 1(大 きい。小さいときは-1、等しいときは0)
・大文字小文字を区別せずに比較する s.AnsiCompareIC(" abc_abc_z ") → 0(等しい。大きいときは1、等しいときは0)
・一番最後の文字を取り出す s.AnsiLastChar() → " "(スペース)
・char *へ代入する char *str=s.c_str();
0672デフォルトの名無しさん
2005/07/01(金) 22:57:56ありがとうございます。
忘れないようにHDDに.txtで保存しました。
0673デフォルトの名無しさん
2005/07/02(土) 00:14:03それに加えてSTL他の標準ライブラリが使える点は有利だな。
その分覚えるの大変だけど。
0674デフォルトの名無しさん
2005/07/02(土) 09:42:35↑がないのが気に入らない
>>670
ちなみにAnsiStringとObjectPascalのstring型はメモリ上の互換性がある。
[]演算子でのアクセスもObjectPascal互換で一文字目が[1] (std::stringやchar[]は[0])
0675デフォルトの名無しさん
2005/07/02(土) 13:32:590676デフォルトの名無しさん
2005/07/02(土) 14:16:000677デフォルトの名無しさん
2005/07/03(日) 01:35:11使ってるはずのOS関連のDLLに対応するlibファイルを書かなくても
リンクできてしまいます(オプションは-Wと-wだけです)が、
bcc32がリンカを呼び出すときに勝手に追加してくれてるのでしょうか?
0678677
2005/07/03(日) 01:37:050679デフォルトの名無しさん
2005/07/03(日) 08:44:43ヘルプにはこんなことが書いてある。
デフォルトでは,BCC32 は C0X32.OBJ,CW32MT.LIB,および IMPORT32.LIB(それぞれ初期化モジュール,ランタイムライブラリ,および Windows インポートライブラリ)を使って ILINK32 を呼び出します。
0680デフォルトの名無しさん
2005/07/03(日) 11:18:51kernel32、user32、gdi32あたりの基本的なものは自動リンク。
winmm.libとかはリンクされない。
0681デフォルトの名無しさん
2005/07/03(日) 18:59:48賛成の方も反対の方も、このスレで自分は賛成か反対かをお書きください。
プログラム技術板に強制ID制を導入すべきか否か
http://etc4.2ch.net/test/read.cgi/vote/1118144381/
理由などの記入は別に構いません。
<<賛成>>か<<反対>>かだけ御記入頂ければ結構です。
ちなみに、当たり前ですが運営の方にIPが見えているので、1日ごとにIDが変わるからといって多重投稿しないでください。
0682デフォルトの名無しさん
2005/07/03(日) 23:10:250684デフォルトの名無しさん
2005/07/04(月) 04:29:24ここは、平和だからわからん。
0685デフォルトの名無しさん
2005/07/04(月) 06:25:02気持ちが荒れてる人も少ないんじゃないか?
0686デフォルトの名無しさん
2005/07/04(月) 06:31:260687デフォルトの名無しさん
2005/07/04(月) 09:07:590688デフォルトの名無しさん
2005/07/04(月) 09:28:560689デフォルトの名無しさん
2005/07/04(月) 09:32:420690デフォルトの名無しさん
2005/07/04(月) 09:35:480691デフォルトの名無しさん
2005/07/04(月) 14:15:00ようになりますた。
0692デフォルトの名無しさん
2005/07/05(火) 02:28:18買ったけど
BCB3版のDB活用ガイドに比べて内容薄くなってるな...
参照項目さえろくすっぽ載っってない
ダイアログエディタについてもなにも載ってない
QuickReportの参考書としてしか使えん
0693デフォルトの名無しさん
2005/07/05(火) 02:36:460694デフォルトの名無しさん
2005/07/05(火) 02:43:53ヘルプを読み解くのに根性いる時あるもんなぁ。(しみじみ)
0695デフォルトの名無しさん
2005/07/05(火) 21:15:26するときのカチカチいう音が気に入りません
どうやったら消せますか?
0696デフォルトの名無しさん
2005/07/05(火) 22:47:10専用ブラウザがやってるように、直接描画するしかないんじゃない?
http://www.monazilla.org/
ここにやり方かいてある。
0697デフォルトの名無しさん
2005/07/05(火) 22:55:57http://homepage2.nifty.com/winfaq/c/hints.html#181
0699デフォルトの名無しさん
2005/07/06(水) 02:16:52資料室にあるサンプルコード。
でも、Delphiのコードだね。
C++ Builderで作られた専用ブラウザってあったと思うけど、何だっけな?
調べて作者に聞いてみるとか?
0700デフォルトの名無しさん
2005/07/06(水) 10:01:16__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { MozillaBrowser1->GoHome
(); } //---------------------------------------------------------------------------
void __fastcall TForm1::ToolButton3Click(TObject *Sender) ...
homepage2.nifty.com/spw/tips/Gecko.html
0701デフォルトの名無しさん
2005/07/06(水) 10:59:55どうやったらできるでしょうか?
0702デフォルトの名無しさん
2005/07/06(水) 11:26:34・・・??
「指定URLをブラウザで開く」の間違いなら ShellExecute 使え。
0704デフォルトの名無しさん
2005/07/06(水) 13:39:05ちみの質問がさっぱり解りませんでした。
ソフトのことよく理解してないんじゃない?
0705デフォルトの名無しさん
2005/07/06(水) 14:23:450706デフォルトの名無しさん
2005/07/06(水) 14:42:59そうか?俺解ったぞ。
0707デフォルトの名無しさん
2005/07/06(水) 17:28:28俺もわかったけど。馬鹿?
0708デフォルトの名無しさん
2005/07/06(水) 18:21:46さっぱり解らないのに、どうしてソフトのこと理解していないって
解るんだ?
ちみの言ってることが、さっぱり解らないな。
0709デフォルトの名無しさん
2005/07/06(水) 18:35:44カコイイ
0710デフォルトの名無しさん
2005/07/06(水) 21:57:350711デフォルトの名無しさん
2005/07/06(水) 22:29:490712デフォルトの名無しさん
2005/07/07(木) 02:03:17#include <windows>
int main(int argc, char *argv[])
{
// 秀丸を起動する
ShellExecute(NULL, "open", "C:\\Program Files\\Hidemaru\\Hidemaru.exe", NULL, NULL, SW_SHOW);
// 秀丸を起動してD:\TEST\Sample\ReadMe.txtを開く
ShellExecute(NULL, "open", "C:\\Program Files\\Hidemaru\\Hidemaru.exe",
"D:\\TEST\\Sample\\ReadMe.txt", NULL, SW_SHOW);
// http://www.tagu.info/をブラウザで開く
ShellExecute(NULL, "open", "http://www.tagu.info/", NULL, NULL, SW_SHOW);
return 0;
}
Windows APIのShellExecute()は実行したコマンドが終了しなくとも次の行に進んでしまう。
上の例だと次々に秀丸二つとブラウザが一つ開いてしまう。
0713デフォルトの名無しさん
2005/07/07(木) 03:13:34ShellExecuteの解説か? それとも質問?
起動した秀丸の終了を待ちたいなら、
CreateProcess()
WaitForSingleObject()
CloseHandle()
の3点セットAPIが使えるな。
0714デフォルトの名無しさん
2005/07/07(木) 05:21:170715デフォルトの名無しさん
2005/07/08(金) 01:16:280716デフォルトの名無しさん
2005/07/08(金) 01:27:03http://homepage3.nifty.com/flare/pc/bcb/data/076.html
簡単なものであれば、「SelectDirectory()」を使うという手がある。
欠点としては、ネットワークドライブを認識できない問題がある。
//
フォルダの選択ダイアログを表示するには?
Windows API SHBrowseForFolder()を使用します。
http://www.borland.co.jp/qanda/cbuilder/c0005004.html
#define NO_WIN32_LEAN_AND_MEAN
0717デフォルトの名無しさん
2005/07/08(金) 01:30:080718デフォルトの名無しさん
2005/07/08(金) 01:38:050719715
2005/07/08(金) 01:44:40紹介いただいた方法で試したのですが、オプションで実行時パッケージを使って構築のチェックをはずすと
コンパイルできなくなります。
単体で配布したいのですが、どうしたらいいですか?
0720デフォルトの名無しさん
2005/07/08(金) 01:47:55Unit1.hに
#include <FileCtrl.hpp> //追加
0722デフォルトの名無しさん
2005/07/08(金) 09:14:14http://homepage3.nifty.com/endou/tips/03/tips29.htm
使用する関 数、クラス
OpenGL
API
OpenGL
ポイント
TFormのCanvasを指定する
Windows98以降で利用できるはずであるが、DLLの関係から か、OSの状況によってはうまく動かないこともある
出典、参考
OpenGLをDelphiで使う(http://nakg.hp.infoseek.co.jp/ opengl/)
「OpenGL 3Dプログラミング」CQ出版 酒井幸市,2000
OpenGLは3Dではデファクトスタンダードな(?)グラフィックライブラリーです。ただ し、利用するためにはちょっとやかいです。
ホームページと本ににあったのを自分なりに書き直してみました。
OpenGLを利用するためのヘッダファイルUOpengl.hとルーチンUOpenGL.cpp
この2つのファイルをプロジェクトに追加して利用します。
利用例
0723デフォルトの名無しさん
2005/07/08(金) 14:45:47一バイトとカウントされてしまうんでしょうか・・・
Memo1の内容
↓
Memo1あいうえお
"いうえお"を選択状態にして
ShowMessage(Memo1->SelText);
とすると "・い"
と表示されてしまいますorz
0724デフォルトの名無しさん
2005/07/08(金) 15:00:12再現できまへんな。ちゃんと"いうえお"って表示される。
0725デフォルトの名無しさん
2005/07/08(金) 16:45:170726デフォルトの名無しさん
2005/07/08(金) 17:09:070727デフォルトの名無しさん
2005/07/08(金) 19:48:19Eidt1->Textに入力された文字列(1バイト2バイト混在)が64バイトを超えるとカットされるようにしたいのですが、
どうしたらいいでしょうか?
ByteToCharLenで丸めた長さの文字数が帰ってくるかなと思ったんですが、うまくいかず困ってます。
0728デフォルトの名無しさん
2005/07/08(金) 19:57:26MaxLength
0729727
2005/07/08(金) 20:06:34すいません、書き忘れましたが、64バイトに丸める文字列は、Edit1に入力される以外に直接ストリームから入力
されることもあるため、こちらからも64バイトに丸める必要があるため、特定のコンポーネントにあるメソッドではなく
普通の関数の範囲で処理したいのです。
0730デフォルトの名無しさん
2005/07/08(金) 20:14:24情報を小出しにするな。
その場合は、自前で丸めろ。
0731デフォルトの名無しさん
2005/07/08(金) 22:05:02TQuery使って IDE環境からSQL文を何度も実行してると
メモリエラー起こしてBDEが起動しなくなるよね...
もはや個人的には仕様かと思っているんだが
むかつく
0733デフォルトの名無しさん
2005/07/09(土) 00:12:190734732
2005/07/09(土) 12:37:56ttp://www.delphi-gems.com/supplement/download.php?ID=55
の下のほうの
WindowsXP manifest resource
これをプロジェクトからはずした結果問題が解決しました。
ほかにXPスタイルを適用するための方法はありませんか?
exeと同じディレクトリにmanifestをおくやり方ではなく
リソースに組み込みたいです。
0735734
2005/07/09(土) 12:48:49XPスタイルを適用するとどんな方法であれ
>>723のような現象が起こってしまいます。
この問題を解消する方法はありませんか?
0736デフォルトの名無しさん
2005/07/10(日) 02:50:35http://www.h3.dion.ne.jp/~hanagex/dev/contents/xp/implant.html
http://www.namakoworld.com/lowtech/d6tips/dtips4.htm
0737デフォルトの名無しさん
2005/07/10(日) 11:18:49Borlandの社長兼CEO、デイル・フラー氏が降板した。
同社4〜6月期決算の最終損益は1株当たり24〜26ドルの赤字。
http://www.itmedia.co.jp/news/articles/0507/09/news015.html
0738デフォルトの名無しさん
2005/07/10(日) 11:24:25#define CONTROL_PANEL_RESOURCE_ID 123
#define RT_MANIFEST 24
0739デフォルトの名無しさん
2005/07/10(日) 15:22:17VS2005出たら買っちゃうことになるよな。
Builderの新バージョンがVS2005より先に出れば、Builderの新バージョンっていうか統合されたバージョン買うだろうけど
その逆ならVS2005買うだろうし、2本もコンパイラ買う金ないしな。
0740デフォルトの名無しさん
2005/07/11(月) 23:39:39実現したいことは、・Form1のコンストラクタにおける起動準備で何か問題が生じた時に、フォームが一瞬たりとも表示されないように終了する。
・コマンドライン引数があるときにはForm1のメソッドをいろいろと使いつつ特定の処理をして、フォームを一瞬たりとも表示されないように終了する。・・・ということです。
そこで、問題がおきた時(特定の処理が終わった時)にはフラグを立ててApplication->Run();を実行しないようにすることで、とりあえず目的は達成できました。
しかし、Application->Run();を削ることによって、終了時のいろいろな後始末がきちんとおこなわれているのか不安になりました。
調べたところ、Application->Run();はメッセージループであるからメッセージの処理が必要なければ削ってもよいとの指摘もあれば、実際は暗黙に作られるApllicationウィンドウやFromMainのウィンドウを
破棄するためにWM_QUITやWM_CLOSEのメッセージ処理が必要との指摘もあり、結論はどうなったのかわかりませんでした。
長文で申し訳ありませんが、おわかりになる方はご教授お願いします。
0741デフォルトの名無しさん
2005/07/12(火) 00:01:06メインフォームもApplicationもちゃんとデストラクタ呼ばれるし、
CodeGuardも何も報告しないから、大丈夫でない?
0742740
2005/07/12(火) 00:34:38早速のご返答ありがとうございます。
メインフォームやApplicationのデストラクタは両方ともしっかりと呼ばれるのですね。(たしかにFormDestroyは呼ばれておりました。)
とりあえず問題なしと考えて良さそうですかね。
ただ、Application->Run();内での処理がトリガーとなって破棄の手順が開始されると思い込んでいたのですが、Run()なしでもOKとなると、どこがトリガーとなっているか謎ですね。
Runのあとはexitくらいしかない気がするんですが。理解できてないので変なことを行っているかもしれません(^^;
0743デフォルトの名無しさん
2005/07/12(火) 00:55:48WinMainの出口にブレークポイントを置いてステップ実行していけば、
Application.Freeやその他の終了処理にたどり着くよ。
0744デフォルトの名無しさん
2005/07/12(火) 00:56:360745デフォルトの名無しさん
2005/07/12(火) 12:21:05単にウィンドウを表示させたくないのであれば、
ウィンドウスタイルを変えればいいんジャマイカ?
0746デフォルトの名無しさん
2005/07/12(火) 14:26:190747デフォルトの名無しさん
2005/07/12(火) 15:08:310748デフォルトの名無しさん
2005/07/12(火) 15:20:560749デフォルトの名無しさん
2005/07/12(火) 15:23:05セルが編集されたかどうか と書きたかったんですがね、
まあ言おうとしている意図もわからず言葉の間違いだけを指摘してる奴には何の期待もしてないけどね
0750デフォルトの名無しさん
2005/07/12(火) 15:24:06ここから煽りタイムが始まるわけですね。わかってるよ
↓
0751デフォルトの名無しさん
2005/07/12(火) 15:30:130752デフォルトの名無しさん
2005/07/12(火) 16:16:13まあ言おうとしている意図もわからず言葉の間違いだけを指摘してるコンパイラには何の期待もしてないけどね(藁
0753デフォルトの名無しさん
2005/07/12(火) 16:16:18TDateTime dt = TDateTime( "1999/01/01 00:00:00:00" );
上記のコードを英語OSで行うとエラーがでてしまいます。日本語OSは大丈夫です。
たぶん英語OSの日時の書式がMM/DD/YYになってるのが原因だと思うのですが
この書式を取得する方法を教えてください
0754デフォルトの名無しさん
2005/07/12(火) 16:39:21GetLocaleInfoから手作業で変換とか
ちなみに日本語WindowsでもMM/DD/YYYYに設定してるとEConvertError例外飛んでくるお
0755デフォルトの名無しさん
2005/07/12(火) 16:47:42ヘルプすら見ない香具師に言う資格ないと思うがな。
OnSetEditText
0756デフォルトの名無しさん
2005/07/12(火) 17:44:05あ、そうですね。英語日本語関係なく書式がMM/DD/YYYYになってると例外おきますねこれ。
GetLocaleInfoから変換を試みて見ます。ありがとうございました。
0757740
2005/07/12(火) 19:49:09なるほど、勉強になります。ありがとうございます!
>>745
そうですね。
Application->ShowMainForm=false;
ShowWindow(Application->Handle,SW_HIDE);
を使う方法もありますね。試してみたいと思います。
0758みか
2005/07/12(火) 23:59:170759デフォルトの名無しさん
2005/07/13(水) 00:05:19みかだのレイナだのハゲワロスwww
0760デフォルトの名無しさん
2005/07/13(水) 00:11:250761みか
2005/07/13(水) 00:38:230762デフォルトの名無しさん
2005/07/13(水) 00:44:130763デフォルトの名無しさん
2005/07/13(水) 00:51:23こ と わ る
0764デフォルトの名無しさん
2005/07/13(水) 01:35:220765みかん
2005/07/13(水) 01:58:570766むか
2005/07/13(水) 03:07:260767デフォルトの名無しさん
2005/07/13(水) 03:12:120768デフォルトの名無しさん
2005/07/13(水) 03:48:370769デフォルトの名無しさん
2005/07/13(水) 04:12:13http://tcnweb.ne.jp/~sumion/tips/panel.html
コンポーネント(コントロール)系の「マウスでコントロールの位置を移動する」とかぶってます が、こっちは全然楽 ですね。
これはMouseDownのイベントのみで出来ちゃいます。
0770デフォルトの名無しさん
2005/07/13(水) 09:51:13{
ReleaseCapture( );
dynamic_cast<TPanel *>(Sender)->Perform( WM_SYSCOMMAND, 0xF012, 0 );
}
0771ゲロ
2005/07/13(水) 18:32:100772沙織
2005/07/13(水) 19:31:280773テルミ
2005/07/13(水) 20:19:270774満子
2005/07/13(水) 22:01:260775デフォルトの名無しさん
2005/07/13(水) 22:30:240776デフォルトの名無しさん
2005/07/13(水) 23:25:240777デフォルトの名無しさん
2005/07/13(水) 23:26:020778デフォルトの名無しさん
2005/07/14(木) 02:56:24俺の777返せ
0779http://blog.livedoor.jp/junki560/
2005/07/14(木) 08:44:540780デフォルトの名無しさん
2005/07/14(木) 09:45:200781デフォルトの名無しさん
2005/07/14(木) 10:12:200782デフォルトの名無しさん
2005/07/14(木) 15:04:13私怨?
0783デフォルトの名無しさん
2005/07/14(木) 17:42:40ExcelWorkbook *Wb)
{
}
0784デフォルトの名無しさん
2005/07/15(金) 09:44:58不要になってプロジェクトから削除したのですが、
メインプログラムを起動時に削除したDLLを要求されます。
他にもどこか変更しないとだめなんでしょうか?
0785デフォルトの名無しさん
2005/07/15(金) 10:05:040786デフォルトの名無しさん
2005/07/15(金) 10:06:170787デフォルトの名無しさん
2005/07/15(金) 10:19:520788デフォルトの名無しさん
2005/07/15(金) 12:20:39787>>再構築だけだとダメみたいです
0789デフォルトの名無しさん
2005/07/15(金) 18:16:220790デフォルトの名無しさん
2005/07/15(金) 21:14:250791デフォルトの名無しさん
2005/07/18(月) 12:38:44TJPEGImageを使うには、下準備が必要です。
ます、JPEGを使うユニットで”JPEG.hpp"をインクルードします。
次に#pragma link "jpeg"を追加します。
これは、TPicture::LoadFromFileを拡張して、jpegイメージを読みこめるようにするた めにはFakeInitJPEGLibメソッドを呼び出して、初期化する必要があるのですが、この 一行を追加する事によってBCBが初期化してくれます。
こっちの方が初期化のタイミングを考えなくて良いのでお勧めです。
これで、TPictureからも簡単にJPEGファイルを読みこめます。
#include <jpeg.hpp>
#pragma link "jpeg"
//Image1にimage.jpeを読みこみ表示する場合
Image1->Picture->LoadFromFile("image.jpg");
// TJEPGImageにimage.jpeを読みむ場合
// ↓の場合は初期化なしで読みこめます。
TJPEGImage* pJPEGImage = new TJPEGImage();
pJPEGImage->LoadFromFile("image.jpg");
保存も簡単に行えます。TImageに表示されたいるグラフィックをJPEG形式で保存する
場合は、TJPEGImageオブジェクトにAssignメソッドを使ってグラフィックをコピーして SaveToFileメソッドで保存します。
その時、JPEGのクオリティーはCompressionQualityプロパティで指定できます。
//Image1の画像をクオリティー50、ファイル名”image.jpg"で保存する
TJPEGImage* pJPEGImage = new TJPEGImage();
pJPEGImage->Assign(Image1->Picture->Graphic);
pJPEGImage->CompressionQuality = 50;
pJPEGImage->SaveToFile("image.jpg");
delete pJPEGImage;
0792デフォルトの名無しさん
2005/07/20(水) 08:47:140793デフォルトの名無しさん
2005/07/21(木) 19:06:28を指定してImageListに画像を追加する方法ってありますか?
ググッっても、ヘルプを調べても出てきません…
0794デフォルトの名無しさん
2005/07/21(木) 20:49:28{
Graphics::TBitmap* tb = new Graphics::TBitmap;
ImageList1->GetBitmap(0, tb);
Image1->Picture->Bitmap = tb;
delete tb;
}
0795デフォルトの名無しさん
2005/07/22(金) 00:34:50ListView1->Items->Item[i]->SubItems->Strings[3]にファイルサイズ(バイト単位)が入っています。
これを操作するためにAnsiStringから__int64に変換するにはどうしたらいいでしょうか。
0796デフォルトの名無しさん
2005/07/22(金) 00:38:32StrToInt
0798デフォルトの名無しさん
2005/07/22(金) 03:59:07もしくはお勧めの書籍を教えてください。
0799793
2005/07/22(金) 11:04:57画像のオプションを指定しなくても、
tbを編集してImageList1に追加すればいいということですね。
ありがとうございます!
0800デフォルトの名無しさん
2005/07/22(金) 11:10:46for(int i = 0; i < 5; i++)
ListView1->Items->Add()->ImageIndex = i; //ImageIndex=0〜4のアイテムを追加
とやっているんですが、個々のアイテムのCaptionも0〜4と指定するには
どうすればいいですか?
0801デフォルトの名無しさん
2005/07/22(金) 11:43:33つttp://www.cutt.co.jp/book/4-87783-063-4.html
これくらいしか無いと思う。
0802デフォルトの名無しさん
2005/07/22(金) 13:55:39資料少ないですよねぇ・・・
みなさん、どうやって使い方覚えたんでしょう
本屋行ってみます
0803デフォルトの名無しさん
2005/07/22(金) 16:49:43for (int i = 0; i < 5; i++) {
TListItem* item = ListView1->Items->Add();
item->ImageIndex = i;
item->Caption = IntToStr(i);
}
0804デフォルトの名無しさん
2005/07/22(金) 20:19:370805デフォルトの名無しさん
2005/07/23(土) 17:24:300:00:00ピッタリの時は時刻が入ってなかった(´・ω・`)
通常だと"2005/07/23 12:34:56"みたいな感じに入っているけど、
0時のときは"2005/07/23"だけだな
ガイシュツかもしれんが、知らない人は気をつけてくれ
ついでに、0時〜9時59分までは1桁少ないのもミソ
0806デフォルトの名無しさん
2005/07/23(土) 18:08:37だから、入ってないとかいうことはない。文字列に移すときだけの問題。
0807デフォルトの名無しさん
2005/07/23(土) 18:47:370808デフォルトの名無しさん
2005/07/23(土) 18:49:10FormatFloat 関数を使用すれば簡単に実現できます。
// 9,000 の値で表示される
ShowMessage( FormatFloat( "#,###,###", 9000 ));
0809デフォルトの名無しさん
2005/07/23(土) 18:50:290810デフォルトの名無しさん
2005/07/23(土) 19:13:490811デフォルトの名無しさん
2005/07/23(土) 19:40:17Caption = CurrToStrF(9000 , ffNumber, 0);
0812デフォルトの名無しさん
2005/07/23(土) 21:12:08時刻が入っていないという表現も意味不明だし。
TDateTime i=Now();したとき
iの整数部だけ置き換わって、小数部は変化しないことを確認したとでもいうのか。
0813デフォルトの名無しさん
2005/07/23(土) 22:59:48Caption = EncodeDateTime(2005, 7, 23, 0, 0, 0, 0).DateTimeString();
としたとき、文字列に時刻部分が含まれてないってこったろ。
0814デフォルトの名無しさん
2005/07/24(日) 01:16:440815デフォルトの名無しさん
2005/07/24(日) 04:37:030816デフォルトの名無しさん
2005/07/24(日) 05:44:06[whois.apnic.net node-1]
Whois data copyright terms http://www.apnic.net/db/dbcopyright.html
inetnum: 220.151.0.0 - 220.151.255.255
netname: usen
descr: U's Communications Corp.
descr: 9-1 Shinsen-cho, Shibuya-ku, Tokyo
country: JP
admin-c: JNIC1-AP
tech-c: JNIC1-AP
status: ALLOCATED PORTABLE
remarks: Email address for spam or abuse complaints : [email protected]
mnt-by: MAINT-JPNIC
mnt-lower: MAINT-JPNIC
changed: [email protected] 20040722
source: APNIC
0817デフォルトの名無しさん
2005/07/24(日) 05:45:12netname: ITS-NET
descr: ITS Co.
country: JP
admin-c: AY1568JP
tech-c: YH5793JP
remarks: This information has been partially mirrored by APNIC from
remarks: JPNIC. To obtain more specific information, please use the
remarks: JPNIC WHOIS Gateway at
remarks: http://www.nic.ad.jp/en/db/whois/en-gateway.html or
remarks: whois.nic.ad.jp for WHOIS client. (The WHOIS client
remarks: defaults to Japanese output, use the /e switch for for
remarks: English output)
changed: [email protected] 20050112
source: JPNIC
0818デフォルトの名無しさん
2005/07/24(日) 06:08:140819デフォルトの名無しさん
2005/07/24(日) 07:16:17AnsiStringは、Delphi形式の(長い)文字列。VCLとのやりとりはこれが使われる。
STLとは、(一般的には)C++標準ライブラリのうち、templateを使って構成された
コンテナ(vector,list等)とアルゴリズムの総称。
C++標準ライブラリであったとしても、例えtemplateで作られていたとしても
iostream,string,complex等は、(一般的には)STLとは呼ばない。
http://www005.upp.so-net.ne.jp/episteme/html/stlprog/
http://www005.upp.so-net.ne.jp/episteme/html/stlprog/string.html#string
0820デフォルトの名無しさん
2005/07/24(日) 13:01:210821805
2005/07/25(月) 17:44:15>>813に似てるかな(同じになるんかな?)
AnsiString aaa = TDateTime(〜, 〜, 〜, 〜);
ってな感じに使ってた
んで、これのaaaの中身が0時の時だと時分秒が
入ってないってことね
>>806が言ってる小数部が0だとこうなるんかな?
TDateTimeがdoubleだとはしらなんだ
�dクス
0822デフォルトの名無しさん
2005/07/25(月) 22:20:190823デフォルトの名無しさん
2005/07/25(月) 23:40:250824デフォルトの名無しさん
2005/07/26(火) 05:40:070825デフォルトの名無しさん
2005/07/26(火) 08:41:030826デフォルトの名無しさん
2005/07/26(火) 15:58:36分かりませんでした。
Sub Read(ByVal Code As String, [ByVal Delivery As Date], [ByVal Strike As Double])
このメソッドを後ろ2つのパラメータを省略して呼び出したいのですが
どうすればいいのでしょうか?
0827デフォルトの名無しさん
2005/07/26(火) 18:33:370828デフォルトの名無しさん
2005/07/26(火) 18:59:38ActiveX DLL のメソッドの説明がVB風になっていたという話です。
sub はsubroutineのことです。
0829デフォルトの名無しさん
2005/07/26(火) 20:22:22Delphiは>>826みたいのは省略できず、全部指定しないと駄目とどっかに書いてあった。BCBもそうかも?
0830デフォルトの名無しさん
2005/07/26(火) 20:25:530831デフォルトの名無しさん
2005/07/27(水) 01:30:370832デフォルトの名無しさん
2005/07/27(水) 06:08:48ユーザさん ですか ご教授下さいませ。
0833デフォルトの名無しさん
2005/07/27(水) 06:16:23なぜか大抵日本語が変。
0834デフォルトの名無しさん
2005/07/27(水) 17:16:06誤爆だろ
こちらへドゾ つ ttp://pc8.2ch.net/test/read.cgi/prog/1121498900/
0835デフォルトの名無しさん
2005/07/27(水) 19:11:47朝鮮人はどっか逝け。
0836デフォルトの名無しさん
2005/07/28(木) 00:27:370837デフォルトの名無しさん
2005/07/28(木) 00:37:51WinMain()から始まるプログラムには-Wオプションを指定する必要がある。
0838デフォルトの名無しさん
2005/07/28(木) 00:41:41タダで使えるBorland C++ Part4
http://pc8.2ch.net/test/read.cgi/tech/1091066805/l50
0839デフォルトの名無しさん
2005/07/28(木) 02:52:07普通のコントロールのツールヒントはできたんだけど・・・。
ShareはGUIも凝ってて凄いな。
0840デフォルトの名無しさん
2005/07/28(木) 03:52:030841デフォルトの名無しさん
2005/07/28(木) 11:57:180842デフォルトの名無しさん
2005/07/29(金) 15:20:040843デフォルトの名無しさん
2005/07/29(金) 17:17:320844デフォルトの名無しさん
2005/07/29(金) 19:09:01DoDragDrop()、IDropSource
0845デフォルトの名無しさん
2005/07/31(日) 11:33:24これらの異なるユニットで共有するグローバル変数は
どのように定義したら良いのですか
0846デフォルトの名無しさん
2005/07/31(日) 11:35:360847845
2005/07/31(日) 11:51:35早々とありがとうございます
すいません、具体例をいただけますか?
0848デフォルトの名無しさん
2005/07/31(日) 13:27:23D5+BCB5で何の不満もなくて来てたんだけど、
パソコンを 2000からXPのに買い換えたら(もはや2000の選択枝はない)
DLLのデバッグが出来なくなってしまった。 D5からもBCB5からも出来ない。
D5は出来ないというFAQがあったから覚悟してたしD7買ってHDDのこやしにしてたから
D7にゆっくり移動しようと思うのだけど、
BCBって最新バージョンが6だよね? Delphiとバージョンが合わないと不便そうに思うのだけど、
そこらへん大丈夫なんだろうか?
win2000に戻そうと別のHDDにMSDNからインストールしようとしたけど
許諾書が無いとかでインストールできないし、困ったなあ・・・・・
>>847
だから、スレッドってのはメモリについてはタスク全体で共有される=同じメモリ空間だから
特にややこしい定義が必要なわけじゃない。普通に定義すればいい。
ただ、両方から読み書きするようにはしないほうがいい。
volatile宣言して、片方からだけ読むように。
0849デフォルトの名無しさん
2005/07/31(日) 13:56:23ライセンス的に大いに問題ありそうだけどな⊂(。Д。⊂⌒`つ
0850848
2005/07/31(日) 14:53:00したけど、Win98インストール中にキーボードやマウスを認識しなくなる。
win2000はどうも俺のスキルじゃインストール出来ないや。
BCB6の英語版トライアルを落としてみて XPで DLLのデバッグが出来るようならBCB6を
購入するしかないか。
ってわけで、アップグレードの申込書捨てちゃった。 アップグレード代っていくらだったっけ?
アップグレードまで時間がかかりそうだから、
DLLのデバッグだけなんで、BCB6 Personal で間に合わせるとしたら、
「実行中のプロセスへのアタッチと・・・」 ってDLLデバッグはPersonal じゃ出来ないって事なのかな?
ああ、わからん
0851848
2005/07/31(日) 15:33:456ならXPでもDLLのデバッグが出来る様子。 HostApplicationを指定して確認した。
D5の http://www2.big.or.jp/~osamu/Delphi/Tips/key.cgi?key=37
>DLL にブレークポイントが設定できない
>今までWin2000 + Del5Entの環境で開発していました。
>OSをWinXPに変えたところ、DLLのデバッグができなくて困っています。
>D5 + WinXP では DLL のデバッグができないようです。
と同じ結果みたい。
0852asshole
2005/07/31(日) 16:01:30SHELLについて勉強してみてください
あとCOM(OLE)にも関係があります
インターフェイスって利用した事はあるでしょうか
比較的横の知識が要る部類に入ると思います
Delphiのテキストに参考になるものがありました
ttp://forum.nifty.com/fdelphi/samples/01406.html
0853asshole
2005/07/31(日) 16:40:40のですが
bcb6でindyを使うと TTCPServerがちゃんと動かない不具合があるのですが
何方か対処法ご存知ないでしょうか
こんなことがおきました
TTCPServer.Active := true/falseどちらでもいいです
オブジェクトインスペクタからのプロパティーの操作に関しては
ちゃんと実行時にもその値が反映されていて問題ないように見えるのですが
その状態より先は(いったん実行してしまうと)プロパティーにアクセスしても何の反応もしません
なので正常な終了は当然できません
もちろんそのインスタンスを作ってもやはり何も反映されていないようで(Activeにできない)
ただのメモリの塊ができるだけで どう利用したものか・・・
よろしくお願いします
0854800
2005/07/31(日) 16:42:42うお!できた。
ありがとうございます!
0855デフォルトの名無しさん
2005/07/31(日) 18:24:27一クラス分の表を表示するプログラムを作りたい。
しかし、「学生数は最初に入力するものとする」と
指定されているのです。
これって構造体をいくつ用意すればよいかわからないってこと??
こんな場合どうすれば??
0856デフォルトの名無しさん
2005/07/31(日) 18:33:13スレ違い宿題スレ池
#include <vector>
class Student { <略> };
std::vector<Student> s;
for(int i=0; i<student_num; i++) {
Student _s;
_s.name = "ひろゆき";
<略>
s.push_back(Student);
}
0857デフォルトの名無しさん
2005/08/01(月) 00:14:05とりあえずIndy作ってるとこに連絡
英語であれこれ書くよりも問題のコードを提示した上で
このコードはBCB5では動くけど6ではここが問題だとか書いておく。
コードは、例えばボタンクリックイベント内に必要なものを全部書いて、
向こうがそれだけでコンパイル/問題をチェックできるようにしておいた
ほうがいい。
0858デフォルトの名無しさん
2005/08/01(月) 01:17:450859デフォルトの名無しさん
2005/08/01(月) 22:26:19ぱらぱらめくったら結構良さそうだった。
つーか、BCB と作ってる人同じなんだから、
もうC#でもいいじゃんって気がしてきた。
このままではVS2005に乗り換えそうだYO!!
BCB9の続報でてないですかねぇ・・・orz
0860デフォルトの名無しさん
2005/08/02(火) 02:02:20大きな間違い。
しかし、いろんなツールを使うことは悪いことではないので、VS に乗り換えたら?
0861デフォルトの名無しさん
2005/08/02(火) 02:31:220862デフォルトの名無しさん
2005/08/02(火) 06:19:570863デフォルトの名無しさん
2005/08/02(火) 06:23:530864デフォルトの名無しさん
2005/08/02(火) 06:32:240865デフォルトの名無しさん
2005/08/02(火) 07:20:070866デフォルトの名無しさん
2005/08/02(火) 08:28:35道具を選べないような仕事をしてるやつもダメだ
結局は労働者じゃダメさ
0867デフォルトの名無しさん
2005/08/02(火) 08:48:390868デフォルトの名無しさん
2005/08/02(火) 09:19:27どのへんが?どっちも Anders Hejlsberg ちゃうの?
0869デフォルトの名無しさん
2005/08/02(火) 10:05:090870デフォルトの名無しさん
2005/08/02(火) 10:06:430871デフォルトの名無しさん
2005/08/02(火) 10:07:450872デフォルトの名無しさん
2005/08/02(火) 10:51:05画面にコンポーネントを貼り付けて、イベントドリブンな組み方をする所が、
DelphiはVBの猿まねだって言ってんだよ。
0873デフォルトの名無しさん
2005/08/02(火) 10:51:34×>>870
○>>871
0874848
2005/08/02(火) 11:24:37BCB6の英語版トライアルをインストールしてから
BCB5GUIでコンパイルしようとするとリンカでLME279・LME347が出るようになった。
直接 BCC32を呼び出せば出ないけど・・・・
0875デフォルトの名無しさん
2005/08/02(火) 20:09:46画面にコンポーネントを貼り付けて、イベントドリブンな組み方をする所が、
VBはFM-TOWNS Gearの(ry
…いや実際、TOWNS Gearは言語もBASICだったしボソボソ
0876デフォルトの名無しさん
2005/08/02(火) 20:17:080877デフォルトの名無しさん
2005/08/02(火) 21:02:26例えばWindowsは何のマネか、なんてどうてもいいこった。逆に
Macはそんな話に花が咲いてるこったろう。
そういう議論してる時点で、もうエピローグは始まってんだって。
0878848
2005/08/02(火) 21:51:50BCB.exeを ”互換モードでこのプログラムを実行する” にチェックを入れていた為に
起きた問題でした。
DLLのデバッグが出来ない為に、色々試していて元に戻すのを忘れていたようです
0879デフォルトの名無しさん
2005/08/03(水) 08:25:36Winアプリ作るのにイベントドリブンじゃない方法って何だろう(*´・ω・)(・ω・`*)ネー
0880デフォルトの名無しさん
2005/08/03(水) 08:35:53VBの構想自体誰でも思いつくものなので、猿真似とは俺は言わぬが。
0881デフォルトの名無しさん
2005/08/03(水) 10:55:22VC++でもダイアログベースで、画面に貼り付けるんだが。
ということは、
VC++もVBの猿真似になるわけかw
0882デフォルトの名無しさん
2005/08/03(水) 11:40:51何一つ言えなくなってAA荒らしに移行するだろうから
ほどほどにな。
0883デフォルトの名無しさん
2005/08/03(水) 12:55:530884デフォルトの名無しさん
2005/08/03(水) 13:04:58こうなれば理想郷だったのに、VC++は全くVisual系じゃなかた。
m$的にもC++を撃沈出来てブビチュウを増やせておk、だったらしい。
が、失敗はブビチュウが生育せずキラーアプリを作れない厨でしかなかったこと。
で、ドトネトでブビチュウを廃棄するんだって。
0885デフォルトの名無しさん
2005/08/03(水) 13:30:420886デフォルトの名無しさん
2005/08/03(水) 14:36:380887デフォルトの名無しさん
2005/08/03(水) 14:51:030888デフォルトの名無しさん
2005/08/03(水) 17:01:31放っておいたら「地球人が地球人の真似ですか」とか言いそうだね。
0889デフォルトの名無しさん
2005/08/03(水) 17:06:04ミ,,゚Д゚彡フサギコのフサフサDelphi談話室その24
http://pc8.2ch.net/test/read.cgi/tech/1120195090/
0890デフォルトの名無しさん
2005/08/03(水) 18:08:25必死すぎ(w
0891デフォルトの名無しさん
2005/08/03(水) 18:12:14○>>883
0892デフォルトの名無しさん
2005/08/04(木) 19:06:43作業しているディレクトリには、icon1.ico、test.cpp、test.exe、test.obj、test.rc
があります。
borland c++ builder 6.0 Professionalのbcc32とbrc32を使って
実行ファイルにリソースのリンクがうまくできないのはなぜですか?
Borland C++ builder 6.0 Professionalで
bcc32 -W test.c でコンパイルした後、
brc32 test.rc test.exeとリソースを実行ファイルに結合します。
リソースのコンパイル、リンクではエラーも何もなしに成功します。
test.exe で実行してみるとアイコンが表示されません。
しかし、Borlandの無料配布されているコンパイラで
同じようにコンパイルした後、リソースをbrc32 test.rc test.exeで結合
するとうまくタイトルバーにアイコンが表示されます。
Professionalで生成した実行ファイルもリソースがちゃんとリンクされていないのか
ファイルサイズも小さいです。
C++ builderのbcc32のバージョンは、5.6.4です。
無料のコンパイラの方は、5.5.1です。
OS:windows XPです。
0893デフォルトの名無しさん
2005/08/04(木) 21:55:19readme.txt > 注意事項: 一般 > リソーススクリプトファイル (.rc ファイル) を含むプロジェクトの構築時の問題
0894デフォルトの名無しさん
2005/08/05(金) 11:39:52C++Builder6(Update#4)でGIFファイルを扱おうと思い、
ttp://www.delphi32.com/vcl/673/
から取ってきた(有名らしい)Anders Melanderさん作のライブラリを
コンポーネントのインストールにてインストールしたのですが、
リンク時に下のようなエラーが出て実行できません。
[リンカ エラー] 未解決の外部参照 '__fastcall Gifimage::TGIFImage::~TGIFImage()' が C:\PROGRAM FILES\BORLAND\
CBUILDER6\PROJECTS\BITMAP\VCLUTILS.OBJ から参照されました
[リンカ エラー] 未解決の外部参照 'Gifimage::TGIFImage::' が C:\PROGRAM FILES\BORLAND\
CBUILDER6\PROJECTS\BITMAP\VCLUTILS.OBJ から参照されました
[リンカ エラー] 未解決の外部参照 '__fastcall Gifimage::TGIFImage::TGIFImage()' が C:\PROGRAM FILES\BORLAND\
CBUILDER6\PROJECTS\BITMAP\VCLUTILS.OBJ から参照されました
vclutls.cppは、Unit1.cppとは別のファイルで、プロジェクトに後から追加したものです。
この中でTGIFImageを使うと、このようなエラーが出ます。
Unit1.cppで使うとなぜかエラーが出ないのですが、分割コンパイルにしたくて、別ファイル
の中で使いたいのですが、無理なんでしょうか?
0895894
2005/08/05(金) 12:05:59置いてコンパイルして、リンカエラーを回避しています。
0896デフォルトの名無しさん
2005/08/05(金) 12:49:590897894
2005/08/05(金) 12:50:48#include "gifimage.hpp"の一行を書くだけで解決するようですので、
当分これで行こうと思います。
リンクの順番を変えたらうまく行くのかもしれませんが、こちらの方が簡単
そうですので。
それと、Unit1にダミーの関数を置かなくてもいいようでした。
0898894
2005/08/05(金) 12:53:09あそこ?すみません、ちょっとわかりません。
原因は、恐らく、元々のTGIFImageライブラリがDelphi用に書かれているため、
分割コンパイルに対応してないせいかと思ったりしています。
もしよろしかったらURLを教えてください。。
>>5のどれかだと思うのですが・・・・
0899デフォルトの名無しさん
2005/08/05(金) 13:21:34>分割コンパイルに対応してないせいかと思ったりしています。
???
0900デフォルトの名無しさん
2005/08/05(金) 16:21:41OpenDialog1->InitialDirに開かせたいパスを指定しているのですが、そのディレクトリを開いてくれるのは最初だけで、
二回目からは、前回ファイルを選択したディレクトリが開かれてしまいます。
OpenDialog1->Execute()をする前にInitialDirにパスを再度指定したり、SetCurrentDirectoryでカレントディレクトリを設定したりしても、
二回目以降は、前回開いたディレクトリが初期のディレクトリになってしまいます。
何か方法はないでしょうか?
0901デフォルトの名無しさん
2005/08/05(金) 16:25:02FileNameにフルパス入れればいけなかったっけかこれって
0902デフォルトの名無しさん
2005/08/05(金) 16:37:47FileNameに入れたら出来ました。ただし、
"C:\\1\\2"だと1が開かれて、入力欄に2が入ります。
"C:\\1\\2\\"だとファイルを開くダイアログボックス自体が起動しません。
なので、
"C:\\1\\2\\*"みたいな感じでやってますが、なんかスマートじゃないですよね。(*の部分は何でもいい)
ここら辺で妥協するしかないですか?
0903デフォルトの名無しさん
2005/08/05(金) 17:29:13MSDNのOPENFILENAME構造体のlpstrInitialDirの説明を見るといい。
Win2K/XPの場合、初期ディレクトリはInitialDirよりFileNameのパスが優先される。
だからFileNameに何か入れるんじゃなくて、消してから開けばInitialDirで指定したところが開くようになる。
0904デフォルトの名無しさん
2005/08/05(金) 17:47:53保存用。
>>903
返答ありがとうございます。試してみます。
0905デフォルトの名無しさん
2005/08/07(日) 00:44:17有料でもよいです
0906デフォルトの名無しさん
2005/08/07(日) 03:01:320907デフォルトの名無しさん
2005/08/07(日) 10:18:410908デフォルトの名無しさん
2005/08/07(日) 13:47:44Doxygenを試用して笑って捨てる気持ちでいないとな。
0909デフォルトの名無しさん
2005/08/07(日) 16:58:31分割コンパイルすると、リンカエラーが出ます。
具体的には、
class Class {
int get();
public:
__proprety int data[int x] = {read = get};
};
をfile2.h とし、file2.cppで、このクラスを定義します。
file1.hでfile2.hをインクルードし、file1.cpp内でこのプロパティdata[]を
使おうとすると、
[リンカ エラー] 未解決の外部参照 'Class:get(void)' が FILE1.OBJ から参照されました
と言われてしまい、先に進めません。どうすればうまく分割コンパイルできますか?
0910デフォルトの名無しさん
2005/08/07(日) 17:01:38○__property
ただのtypoですすみません。元のプログラムではちゃんと正しく書いています。
0911デフォルトの名無しさん
2005/08/07(日) 17:13:55いちいちリンク書くの面倒なら#pragma linkでもつかっとけ
0912デフォルトの名無しさん
2005/08/07(日) 19:09:38file2もプロジェクトに追加していますから、間違いなくリンクされているはずです。
file1からはfile2にある他の関数もいくつか呼び出しており、そちらはリンカエラー
にならない事から、リンクはされていると思います。
__propertyだけがおかしな動きをするので困ってました。もう少しぐぐって調べて
みます。ありがとうございました。
0913912
2005/08/07(日) 19:21:01初歩的ミスでした。inline定義してました。ごめんなさい。
それか、ClassをTObjectからpublic派生させ、__property宣言部分を
__published:部に入れ、get()を__fastcall呼び出し規約にしてもOKな
ようです。お騒がせしました。
0914デフォルトの名無しさん
2005/08/09(火) 15:49:18AnsiString buf = Format( "%d", ARRAYOFCONST((aa)) );
これでaaをunsigned intで文字列に変換したいのですが、キャストを行うとコンパイルエラーがでます。
どう記述したらいいですか?
0915デフォルトの名無しさん
2005/08/09(火) 15:58:470916デフォルトの名無しさん
2005/08/09(火) 16:05:310917デフォルトの名無しさん
2005/08/09(火) 16:09:37ありがとう!!
なるほど、そういえば%uってあったんだ・・
0918デフォルトの名無しさん
2005/08/09(火) 18:00:07CopyGrid = new TStringGrid(this);
CopyGrid->Assign( StringGrid );
としたのですが、実行時にエラーになります。
Assignみたいな感じでグリッドをまるまんまコピーする方法を教えてください
0919デフォルトの名無しさん
2005/08/10(水) 12:08:420920データボックス
2005/08/10(水) 12:10:410921デフォルトの名無しさん
2005/08/10(水) 13:22:51StringGridで表示させるにはどうしたらいいのでしょうか?
Utf8ToAnsiを使用しても文字化けが起こってしまうのですが
0922デフォルトの名無しさん
2005/08/10(水) 13:41:01>UTF-8でエンコードされているテキストファイルを
先頭2バイトはUTF-8であることを示す余分な文字コードが入っている。
0923デフォルトの名無しさん
2005/08/10(水) 16:08:09現在ダイアログに表示されているフォルダを変更する方法を教えてください
0924デフォルトの名無しさん
2005/08/10(水) 19:12:37VCLソース上ではException.CreateResFmtメソッドを読んでいる様なのですがBCBのヘルプ上ではCreateResFmtが載ってないようですorz
0925デフォルトの名無しさん
2005/08/10(水) 19:50:56例えば SAncestorNotFound なら、
#include <RTLConsts.hpp>
AnsiString hoge = Rtlconsts_SAncestorNotFound;
0927デフォルトの名無しさん
2005/08/12(金) 07:34:06MainMenu1のメニューデザイナで「バージョン情報」というのを作り、
「ファイル」→「新規作成」→「フォーム」→「バージョン情報」で作って
Unit2で保存しました。実行できたのですが
しかし、このUnit2関連のファイル全てを間違えて消してしまい
Unit1関連のものしかありません。
実行するとUnit2.hが開けないとのエラーがでます。
そこでUnit2だけ、作り直そうと思ってこの「バージョン情報」をMeinMenu
から消したり、ソースコード中のUnit2の名前がある部分を全て消したら、
もっと意味不明になりました・・・。
どうしたら「バージョン情報」の部分がなおるか教えてください。
0928927
2005/08/12(金) 08:42:04Unit2のファイルはUnit1とは違う別のフォルダに入ってて、そのフォルダを
消してしまった、ということです。
0929デフォルトの名無しさん
2005/08/12(金) 09:10:17というか、ソースファイル名は意味のある名前で作ろうよ
0930デフォルトの名無しさん
2005/08/12(金) 10:17:35bprファイルをエディット。BCBのプロジェクトは糞だから、これぐらいは
出来るようになっておくと幸せになれる。
0931デフォルトの名無しさん
2005/08/12(金) 10:30:310932927
2005/08/12(金) 12:22:32消すと
「The requested file does not exit. You may creat one of the following file tuypes instead」
ってでてきます、
これをキャンセルすると
「Cannot open file C:テスト\Unit2.cpp」
とでてきます・・・
よくわかりません・・・
0933デフォルトの名無しさん
2005/08/12(金) 13:11:31bprファイルをメモ帳などで開いて、
<PROJECT>
<MACROS>
<VERSION value="BCB.06.00"/>
<PROJECT value="Project1.exe"/>
<OBJFILES value="Project1.obj Unit1.obj Unit2.obj"/>
の Unit2.obj というのを削除してみろ。
0934927
2005/08/12(金) 14:33:57<!-- C++Builder XML Project -->
<PROJECT>
<MACROS>
<VERSION value="BCB.06.00"/>
<PROJECT value="Project1.exe"/>
<OBJFILES value="Project1.obj Unit1.obj ..\テスト\Unit2.obj"/>
自分の場合は↑のようのなってました・・
そして消したら
「project rule not found」
とエラーがでました・・・
0935デフォルトの名無しさん
2005/08/12(金) 15:01:06どんな風に消したか、編集後も見せてくれ
0936927
2005/08/12(金) 17:17:06ついでといってはなんですけど
新規作成→フォーム→バージョン情報で
バージョン情報フォームができますが、
実行後、保存して終了して、またこのフォーム
を編集したいのですが、
このバージョン情報フォームを開くには
どうすればいいのですか?
0937デフォルトの名無しさん
2005/08/12(金) 17:24:42知らん。どう解決したかも開示しない奴に教えない。
0939デフォルトの名無しさん
2005/08/12(金) 18:01:00脱!教えて君同盟でググれ。
0940デフォルトの名無しさん
2005/08/12(金) 18:01:48クレクレ厨は氏ね
0941デフォルトの名無しさん
2005/08/12(金) 18:19:18必死だなwwwpgr
0942デフォルトの名無しさん
2005/08/12(金) 18:57:250943936
2005/08/12(金) 20:43:57それとも誰も知らないんですか?
0944デフォルトの名無しさん
2005/08/12(金) 21:00:220945デフォルトの名無しさん
2005/08/12(金) 21:05:020946デフォルトの名無しさん
2005/08/12(金) 21:33:49一応日本語の読み書きは出来るようだし、IQが80以下というわけでもなさそうだし、
はて?
0947デフォルトの名無しさん
2005/08/12(金) 22:17:49思ってるのだろうか ;-)
0948デフォルトの名無しさん
2005/08/12(金) 22:36:10プロジェクトマネージャのフォームのアイコンダブルクリックして表示されるし。どれか1個ぐらいは気付きそうだけどな。
0949デフォルトの名無しさん
2005/08/12(金) 23:03:37で直接ユニットファイルを開いてもヲケ。
ま、少し調べるか試せば分かることを一々人に聞くなと。
0951デフォルトの名無しさん
2005/08/13(土) 00:15:38からかってなんかいないよ、偽者君。
0952デフォルトの名無しさん
2005/08/13(土) 01:54:42つまり・・・。
0953デフォルトの名無しさん
2005/08/13(土) 07:15:260954デフォルトの名無しさん
2005/08/13(土) 07:24:38プゲラ
0955デフォルトの名無しさん
2005/08/13(土) 10:20:590956デフォルトの名無しさん
2005/08/13(土) 10:26:130957デフォルトの名無しさん
2005/08/13(土) 11:13:430958デフォルトの名無しさん
2005/08/13(土) 11:22:52え、俺の勘違い?952の本物って何のことだ
0959デフォルトの名無しさん
2005/08/13(土) 11:43:06Borland C++ Compiler だけ組み込まれたパソコンでも使用することはできますか。
0960デフォルトの名無しさん
2005/08/13(土) 11:46:21からかうのはやめてください
0961デフォルトの名無しさん
2005/08/13(土) 11:52:55使えない
0962デフォルトの名無しさん
2005/08/13(土) 11:57:59vcl.hでもインクルードしたらどうかしら?
0963デフォルトの名無しさん
2005/08/13(土) 11:58:40あらご免遊ばせ。BCBが入ってないパソコン?それは無理ですわ。
0964デフォルトの名無しさん
2005/08/13(土) 12:18:59/ ̄  ̄ \
/ ヽ
l ● ● ハブ──!!
| ( l
| \ |
l ヾ_\ 。 。 ノ
⊂ 、 ` ヽ、 ,/ ヾ _ _ ,ノλ
`ヽ ソ ヾ _ _ ノ
l ヾ _ _ 丿
ヽ ヾ _ _ ,ノ
`` ‐ - ´
0965データボックス
2005/08/14(日) 12:57:12C++ Builder で Windows プログラムを作るときは、ほとんど C 言語スタイ
ルでコーディングしてるが、恥か?
0966初心者
2005/08/14(日) 21:11:49C++Buidlerで作成したTForm1などのClass関数からLinuxから移植した別ファイ
ルのC言語の関数を呼ぼうとするとリンクエラーが出てしまいBuildできませ
ん。TFormを含むUnit1.cppでローカルのC言語関数を定義した場合には、正常
にBuildできて実行できるのですが。。。
どなたか分かる方教えて頂けないでしょうか?
0967デフォルトの名無しさん
2005/08/14(日) 21:40:080968デフォルトの名無しさん
2005/08/15(月) 00:10:53最初の一行と最後の一行は要らなす。
0969デフォルトの名無しさん
2005/08/15(月) 02:53:40extern "C"
0970デフォルトの名無しさん
2005/08/15(月) 14:14:36すでに答は出ているけど、それは、C++Builderの問題ではなくて、
C++とC言語を混在させる場合に一般的に起こる問題。C++Builder固有の話
じゃないので、理由は説明しないけど、extern "C"でぐぐるとよいかも。
メンドクサイなら、Linuxから持ってきた .cファイルを .cpp に改名する。
.cなファイルをコンパイルしたときと、.cppなファイルのときでは、コンパイラが
出力するラベルの形式が違うのだ。なぜラベルの形式が違うかというと、
C++は同じ名前の関数を複数宣言して引数の型で区別するということを許して
いるから。
>>967,968
気持ちは分からんでもないけど、文句をつけるだけってのはよくないぞ。
0971デフォルトの名無しさん
2005/08/15(月) 17:57:25”名前マングリング”でぐぐってみ。
0972デフォルトの名無しさん
2005/08/15(月) 19:38:37エロネタかと思った……
0973デフォルトの名無しさん
2005/08/15(月) 21:23:480974デフォルトの名無しさん
2005/08/16(火) 11:09:17現在ダイアログに表示されているフォルダを変更する方法を教えてください
0975デフォルトの名無しさん
2005/08/16(火) 16:37:59例えば改行のない長い一行の文章があった場合、HTMLによっては
横方向にスクロールバーを表示せず、折り返して表示します。
仮にTCppWebBrowserのWidthが400であって、それでは足りない場合
折り返されるわけです。
そこでTCppWebBrowserのWidthがいくつであれば折り返されないのか?を
知りたい場合、それを調べる方法はないものでしょうか?
言い方を変えると、そのHTMLを表示するのに必要なWidthとHeightの値を
得る方法ということです。
IHTMLElement2 *el2;
el2->get_scrollWidth(&s);
el2->get_clientWidth(&c);
scrollWidthやclientWidthを参照してみましたが、これはWidth値が
設定されているTCppWebBrowserに描画されたHTMLに基づいた
数値でしたのでダメでした。
0976975
2005/08/16(火) 16:39:54イメージとしては、CalcHintRect のようなイメージです。
ナカーマ。
0978デフォルトの名無しさん
2005/08/21(日) 12:37:42TObject *Sender
この時Senderのハンドルはどうやって取得すればいいのでしょうか。
お願いします。
0979デフォルトの名無しさん
2005/08/21(日) 12:59:32if ( TWinControl* ptr = dynamic_cast<TWinControl*>( Sender ) )
HWND hndl = ptr->Handle;
キャストする先はケースバイケース。自分で考えるべし。
0980デフォルトの名無しさん
2005/08/21(日) 13:02:15なるほど、Handleが取れればTEditだろうがTLabelだろうが
関係ないって事ですね。サンクス。
0981デフォルトの名無しさん
2005/08/21(日) 15:01:44>なるほど、Handleが取れればTEditだろうがTLabelだろうが
>関係ないって事ですね。サンクス。
if ( TEdit* ptr = dynamic_cast<TEdit*>( Sender ) )
HWND hndl = ptr->Handle;
なことを言ってるんなら呼び出し元がTListViewとかだったりするとキャストに失敗して例外飛んでくるぞ。
単純にハンドル欲しいだけならTWinControlでもいいが
Senderを処理するってことは送られてくるSenderの実際の型はコーディング時に分かってるはずだからその型にキャストした方がいいかと。
0982979
2005/08/21(日) 15:37:51>なことを言ってるんなら呼び出し元がTListViewとかだったりするとキャストに失敗して例外飛んでくるぞ。
それは嘘。
例外が送出されるのはキャスト先が参照で、キャストに失敗した場合。
キャスト先がポインタなら、キャストできない場合、単にヌルポインタが返る。
てか、だから ifでくくってんだけど。
0983デフォルトの名無しさん
2005/08/21(日) 16:42:34背景色が灰色で表示されてしまいます。
Word 文書だから背景色を白で表示したいのですが、
どのようにしたらよいでしょうか。
よろしくお願い致します。
0984デフォルトの名無しさん
2005/08/21(日) 18:09:05次スレ
C++Builder相談室 Part15
ttp://pc8.2ch.net/test/read.cgi/tech/1124614110/
適当なところで移動してください。
0985デフォルトの名無しさん
2005/08/21(日) 20:15:210986デフォルトの名無しさん
2005/08/21(日) 22:20:260987デフォルトの名無しさん
2005/08/22(月) 14:15:29関係ないけど、実行時にダブルクリックしたらびびった。
編集できたりフォームに勝手にツールバーまでついたりして…なんかすごいなActiveXって。
0988デフォルトの名無しさん
2005/08/23(火) 11:52:03次スレ
C++Builder相談室 Part15
ttp://pc8.2ch.net/test/read.cgi/tech/1124614110/
レス数が950を超えています。1000を超えると書き込みができなくなります。