C++Builder相談室 Part15
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2005/08/21(日) 17:48:30過去スレ・関連サイトは>>2-7あたり。
0002デフォルトの名無しさん
2005/08/21(日) 17:49:03C++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(html化待ち)
http://pc5.2ch.net/test/read.cgi/tech/1099238936/l50
C++Builder相談室 Part13(html化待ち)
http://pc8.2ch.net/test/read.cgi/tech/1108468718/l50
C++Builder相談室 Part14(前スレ)
http://pc8.2ch.net/test/read.cgi/tech/1116460578/l50
0003デフォルトの名無しさん
2005/08/21(日) 17:49:35くだすれC++Builder(超初心者用)
http://pc8.2ch.net/test/read.cgi/tech/1117225464/l50
Borland C++ BuilderX
http://pc8.2ch.net/test/read.cgi/tech/1065260556/l50
タダで使えるBorland C++ Part4
http://pc8.2ch.net/test/read.cgi/tech/1091066805/l50
【Delphi】 Indyコンポーネント 【C++Builder】
http://pc8.2ch.net/test/read.cgi/tech/1093654251/l50
<VCL兄貴のDelphiスレ>
くだすれDelphi(超初心者用)その26
http://pc8.2ch.net/test/read.cgi/tech/1121249711/l50
ミ,,゚Д゚彡フサギコのフサフサDelphi談話室その24
http://pc8.2ch.net/test/read.cgi/tech/1120195090/l50
Delphi相談室(上級者用)その12
http://pc8.2ch.net/test/read.cgi/tech/1064766880/l50
【Delphi初心者】今から始めるDelphi Part01
http://pc8.2ch.net/test/read.cgi/tech/1062422335/l50
【大量・便利】Delphiコンポーネント【再利用】
http://pc8.2ch.net/test/read.cgi/tech/1051802300/l50
0004デフォルトの名無しさん
2005/08/21(日) 17:50:11公式サイト
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/
nifty/Delphi & Borland Users Forum
http://fdelphi.nifty.com/
<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/08/21(日) 17:50:58Borland 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/08/21(日) 17:51:40<<フリー>>
フリーカーソル無効化アドイン
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/
0007デフォルトの名無しさん
2005/08/21(日) 18:07:06C++Builder 6コンポーネント活用ガイド&実践プログラミング
Vol.1
http://www.amazon.co.jp/exec/obidos/ASIN/4877830618
Vol.2 実践テクニック編
http://www.amazon.co.jp/exec/obidos/ASIN/4877830626
Vol.3 データベーステクニック編
http://www.amazon.co.jp/exec/obidos/ASIN/4877830634
Vol.4 インターネット編1
http://www.amazon.co.jp/exec/obidos/ASIN/4877831061
Vol.5 インターネット編2
http://www.amazon.co.jp/exec/obidos/ASIN/4877831088
Vol.6 グラフィックス・画像処理編1
http://www.amazon.co.jp/exec/obidos/ASIN/4877831231
Vol.7 グラフィックス・画像処理編2
http://www.amazon.co.jp/exec/obidos/ASIN/487783124X
※BCBの定番解説書。BCBを購入したけど何から勉強したら良いか
判らないという人は取り合えずVol2から読みましょう。
※データベースやインターネット関連はDelphiの解説書も役に立ちます。
0008デフォルトの名無しさん
2005/08/21(日) 19:08:09(・∀・)乙カレー
0009デフォルトの名無しさん
2005/08/21(日) 19:24:02ちまたには、version 4 や 6 の本は普通に出版されているが、5 の本はほとんど
見たことが無い。
6 の本を買うと仮定すると、本の解説で 5 と 6 の違いが気になるわけだが、どこ
ら辺に違いがあるか気になるもんだ。
6 の本でもほとんど支障なく学習できるんだったらいいけど。
0010デフォルトの名無しさん
2005/08/21(日) 22:40:304→5のタイミングが短すぎたんだっけ?
別に6本でも問題無いでしょ。VCLはあんま変わってないし。
0011デフォルトの名無しさん
2005/08/22(月) 00:15:59と思う。
Delphi→BCBへの変換は、ほとんど一対一に対応しているので、一度Object
Pascalを読めるようになれば、Delphiの本で十分。
0012デフォルトの名無しさん
2005/08/22(月) 17:34:01ショートカットのイベントハンドラのようなものを実装するにはどうすればいいのでしょうか?
0013デフォルトの名無しさん
2005/08/22(月) 21:58:45Pascalは知ってる。一冊の本をよく読んで練習問題のプログラムを書いたりしてた。
正に、Delphiの基礎学力をつけるのが目的でPascalを学習してたからな。
Object Pascalの学習はまだこれからだけど。
そういえば、VCL相談室というスレであってもいいなあ。
でも、言語を区別しておかないと、Object Pascalの知識の無い人には困るか。
0014デフォルトの名無しさん
2005/08/22(月) 22:41:49なんかの難解なマクロを使わないといけない。
あれ初心者には絶対理解不可能だと思った。逆にDelphiとBCBを両方使ってる
と、「なんでmessageが無いんじゃゴルァ!」という事ですぐに見つけるわけだ。
BCBはC++の延長線上にある自然な拡張がされてない。全部Delphiの動作を
エミュレートするようにされてしまってる。VCLがObject Pascal用にしか作られていな
いので仕方ないとは言え、手抜きだなぁ。でもそのお陰で、Delphi用に作られた
コンポーネントの有り難みを享受できるのも確かだが。
0015デフォルトの名無しさん
2005/08/23(火) 00:10:00>BEGIN_MESSAGE_HANDLER
別に難解とは思わないが、その辺のBCB独自の拡張を簡単簡潔に網羅した
マニュアルが用意してあればいいんだがなぁ。
0016デフォルトの名無しさん
2005/08/23(火) 00:45:35付属のあのごついマニュアルなんて、中身はHELPと全く同じだしな。
Open配列を真似るARRAYOFCONSTマクロなんか、ソース見てみると、
苦心の跡というよりはやっつけ仕事のように見える。
0017デフォルトの名無しさん
2005/08/23(火) 00:52:32__classid, __closure, __declspec(の一部), __property, __publishedと。
messageはあれば便利って程度だから、追加されなかったんでない?必要最低限のだけ追加したって感じで。
BEGIN_MESSAGE_HANDLER〜のマクロは、なんかダサいから使わないで、ウィンドウプロシージャでディスパッチしてる。
関数にするまでもない短いコードもよくあるしね。
0018デフォルトの名無しさん
2005/08/23(火) 00:58:31プロパティはdefaultが使えないんだよね。もっともそれをやっちゃあ、
C++の名前照合規則をぶっ壊してしまうわけなんでやめたんだろうけど。
0019デフォルトの名無しさん
2005/08/23(火) 01:11:58え、使えない?
0020デフォルトの名無しさん
2005/08/23(火) 01:16:41ごめん。使えないというより、Delphiとの意味が違ってる。
Delphiだと、クラス変数名書いただけで、あるプロパティが使われたでしょ。
BCBは初期値設定の意味になってる。
0021デフォルトの名無しさん
2005/08/23(火) 01:35:12あ配列プロパティのdefaultか。普通のプロパティのは同じ意味だよね?
C++だとoperator[]があるからかな。ただBCBはVCLクラスがnewで作んなきゃいけないから、operator[]が定義されてても何か見た目がよくないね。
TStringList* pStrings = new TStringList();
:
(*pStrings)[0] = "hoge" は格好わるいから普通、pStrings->Strings[0] = "hoge" だろうね。
参照使えばDelphiぽくできるけど、いちいちちょっとね。
TStringList& strings = *pStrings;
strings[0] = "hoge";
0022デフォルトの名無しさん
2005/08/23(火) 01:44:57はい、そうですぅ。済みません。
じゃじゃ馬BCB6で遊んでます。コンパイル速度も、今時のCPUなら十分速いし、
ちょっとしたGUIツールを作るにはぴったりです。
でも新製品が出ませんねorz
0023デフォルトの名無しさん
2005/08/23(火) 04:16:53こんなんがあるせいで、理解が少し遅れた。
ひたすら無駄なマクロ。
0024デフォルトの名無しさん
2005/08/23(火) 04:32:16後は次の所に放り投げれば済む話なんですよね。
Windowsのメッセージがチェイン構造になっているのは、初めて知った時は
ひたすら気持ち悪かった。
0025デフォルトの名無しさん
2005/08/23(火) 12:33:10皆が何言ってるかさっぱりワカランorz
0026デフォルトの名無しさん
2005/08/23(火) 13:41:44冬に出るだろ。
Delphi2006が‥‥
0027デフォルトの名無しさん
2005/08/23(火) 16:17:12を使って300行のCプログラムをコンパイルしました。
しかしコマンドプロンプトからEXEファイルを実行しても全く動作しません。
試しにそのEXEファイルのソースのmainの一番最初に、print("check..");とか入れてみましたが、
こちらも表示されませんでした。
Cのプログラムでこんな事ってあるのでしょうか?
コンパイラに原因は無いですよね・・・?
0028デフォルトの名無しさん
2005/08/23(火) 16:18:27を使って300行のCプログラムをコンパイルしました。
しかしコマンドプロンプトからEXEファイルを実行しても全く動作しません。
試しにそのEXEファイルのソースのmainの一番最初に、print("check..");とか入れてみましたが、
こちらも表示されませんでした。
Cのプログラムでこんな事ってあるのでしょうか?
コンパイラに原因は無いですよね・・・?
0029デフォルトの名無しさん
2005/08/23(火) 16:22:58よくあるのが、「DOS窓が一瞬開いてすぐ閉じるんですけど」って質問だけど、DOS窓も表示されない?
あとBCCはこっちのスレね↓
タダで使えるBorland C++ Part4
http://pc8.2ch.net/test/read.cgi/tech/1091066805/
0030デフォルトの名無しさん
2005/08/23(火) 16:29:30いえ、
test.cppを以下のようにコンパイル、実行しました
C:\ディレクトリ>bcc32 test.cpp
C:\ディレクトリ>省略(コンパイルが通ります)
そこで、text.exe(exeまで打たないと何故か実行できない)を実行します。
C;\ディレクトリ>text.exe (enter押します
test
C:\ディレクトリ>
このように出て、main関数が実行されません。
上のURLのところ行ってみます。
0031デフォルトの名無しさん
2005/08/23(火) 17:00:27exeまで打たないと実行できないってヒジョーにアヤしげだなぁ
0032デフォルトの名無しさん
2005/08/23(火) 17:04:58testの間違いです。。。
怪しげって何が怪しいんでしょうKA。
0033デフォルトの名無しさん
2005/08/23(火) 17:10:10いや、何かそこに理由がありそうだなぁ、と。全然わかんないんだけどね。役立たずで申し訳ない
0034デフォルトの名無しさん
2005/08/23(火) 17:25:14分からないのにスレ違いのネタ引っ張るなよ。
0035デフォルトの名無しさん
2005/08/23(火) 17:28:070036デフォルトの名無しさん
2005/08/23(火) 17:31:05って何( ´∀`)?
ってか、本当にコンパイル通ってるのかYO!
#include <stdio.h>
int main()
{
print("check");
return 0;
}
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
test.cpp:
エラー E2268 test.cpp 5: 未定義の関数 'print' を呼び出した(関数 main() )
*** 1 errors in Compile ***
0037デフォルトの名無しさん
2005/08/23(火) 22:23:27タイプミスですた・・・ww
0038デフォルトの名無しさん
2005/08/23(火) 22:55:340039デフォルトの名無しさん
2005/08/24(水) 00:16:42実行しているのか? つーか、test をtextと書いたり、printとか何とか、
実際にやった内容と違うことばっかり書いて質問されてもなぁ・・・
問題の切り分けをするなら、300行のナントカは、ともかく、最低限、
printfが1行だけある main() をコンパイルしてみて、できた実行ファイルを、
ルートからフルパスで指定して動かしてみること。
変なパスが通っていて、ヨソにあるexeを実行していたりしないか?
あと、"check.." って、もしかして、改行マークなし? バッファのフラッシュを
しないなら、\nがいるんじゃないかな。
いずれにせよ、完全にスレ違いなので、続きは誘導先でやってくれ。
0040デフォルトの名無しさん
2005/08/24(水) 00:47:59004140
2005/08/24(水) 00:48:420042デフォルトの名無しさん
2005/08/24(水) 08:42:39なんてあるわけないし。 100%間違いなく、操作間違ってる。
0043デフォルトの名無しさん
2005/08/24(水) 11:35:30Transparentをtrueにするとたまにグラフが描画されなくなります。
なんとなく、Canvasからはみ出たときに起こるのですが
これの対処法を教えてください。
0044デフォルトの名無しさん
2005/08/24(水) 12:19:18まずは「なんとなく」の部分をはっきりさせるべし
0045デフォルトの名無しさん
2005/08/24(水) 12:22:03Transparentをtrueにしたとき透明表示される色は特に指定しなければ
確か一番左下のドットの色だっけか?
まずはsageようか。
0046デフォルトの名無しさん
2005/08/24(水) 13:20:48sage厨はスルーで
0047デフォルトの名無しさん
2005/08/24(水) 13:44:48ありがとうございます。
「一番左下のドットの色」で全ての謎がとけました。
グラフを描画する時にCanvasからはみだしてもちゃんと描画されるときと
されない時で描画されない時は左下のドットに描画してる時でした。
予めTransparentColorに色を与えておいて見事に解決しました。
0048デフォルトの名無しさん
2005/08/24(水) 17:32:45新党日本
0049デフォルトの名無しさん
2005/08/24(水) 18:08:290050デフォルトの名無しさん
2005/08/24(水) 18:14:300051デフォルトの名無しさん
2005/08/24(水) 22:05:150052デフォルトの名無しさん
2005/08/24(水) 22:16:57form->Show();
0053デフォルトの名無しさん
2005/08/27(土) 10:05:22MySQLのSSL通信機能はver4.1から正式にサポートされたものなんですが…。
005430
2005/08/30(火) 00:02:36あるグローバル変数を配列を数千×数千で定義していたので出来ませんでした。
百×百位にしてコンパイルしたら実行できました。
しかし実行には.EXEつけないと無理ですが・・・。
0055デフォルトの名無しさん
2005/08/30(火) 00:50:31うーん、まだまだあやしい。。。 けど、このスレで続けるのは変だから、
うだうだ書くのはやめておくね。
0056デフォルトの名無しさん
2005/08/31(水) 14:08:58『グローバル変数』なら配列の要素が大きくてもそこまで問題じゃないんじゃね?
仮にintで2000x2000だとしたら約15MBくらい
『オート変数』の間違いでは・・・
あと、exeつけないと実行できないんだったら、コマンドプロンプトで『notepad』は起動するんか?
0057デフォルトの名無しさん
2005/08/31(水) 22:03:56>>38を声に出して百回読め、このあきめくら。
0058デフォルトの名無しさん
2005/08/31(水) 22:53:550059デフォルトの名無しさん
2005/08/31(水) 23:16:09ファイル(F)-新規作成(N)のフォームタブに
自作のフォームを追加したいのですが、方法がよくわかりません。
プロジェクト(P)-リポジトリに追加(T)で追加できそうなのはわかったのですが、
フォームを新規作成した状態では、リポジトリに追加(T)は無効になっています。
どのようにすれば、自作フォームを追加できるでしょうか。
よろしくお願いします。
0060デフォルトの名無しさん
2005/09/01(木) 00:05:04フォーム右クリックで「リポジトリに追加」
0061デフォルトの名無しさん
2005/09/01(木) 00:52:43さんくすです。出来ました。
右クリックにあったんですね。気づきませんですた。
0062デフォルトの名無しさん
2005/09/03(土) 18:16:430063デフォルトの名無しさん
2005/09/03(土) 18:23:000064デフォルトの名無しさん
2005/09/03(土) 20:02:330065デフォルトの名無しさん
2005/09/04(日) 00:36:16http://thunder.prohosting.com/~cbdn/k009.htm
0066デフォルトの名無しさん
2005/09/04(日) 05:06:55サイズは48×48
DrawIconEx(Image1->Canvas->Handle, 0, 0, Application->Icon->Handle, 48, 48, 0, 0, DI_NORMAL);
0067デフォルトの名無しさん
2005/09/04(日) 12:28:100068デフォルトの名無しさん
2005/09/04(日) 12:31:170069デフォルトの名無しさん
2005/09/04(日) 12:55:46double 型の変数から Currency 型の変数に値を変換して設定するための
標準的な関数がありそうな気がします(いや、きっとあるはず)が、見つけ
られません・・・
おしえてくださいませ。m(_._)m
ちなみに・・・
文字列⇔Currency は、StrToCurr, CurrToStr
Currency → double は operator double()
など、その周辺はすぐ見つけられますね。
こういった逆引きって結構時間かかりまっすねぇ・・・
#Variant 型を経由しなきゃダメなんて落ちじゃないですよねー。
0070デフォルトの名無しさん
2005/09/04(日) 13:02:52__fastcall Currency(double val);
0071デフォルトの名無しさん
2005/09/04(日) 13:04:080072デフォルトの名無しさん
2005/09/04(日) 13:05:320073デフォルトの名無しさん
2005/09/05(月) 17:06:170074デフォルトの名無しさん
2005/09/07(水) 13:22:45メインフォームから動的に作成した子フォームを
MDI親フォームとする方法を教えてください。
0075デフォルトの名無しさん
2005/09/08(木) 01:08:11TFormはfsMDIChildeのとき、問答無用でメインフォームを親フォームにするみたいだな。
つうわけで無理っぽい。
0076デフォルトの名無しさん
2005/09/08(木) 01:48:16しないだろう。
ユーザは減っていくだけ!!
もし、DELPHI2006無償配布を多くしたら復活の道あるのに。。
0077デフォルトの名無しさん
2005/09/08(木) 06:13:33http://www.geocities.jp/octbery/program.html
・画像処理・エフェクトの準備
・グレースケール : 画像を白黒画像に変換
・2値化 : 特定のレベルをしきい値として、しきい値より明るいピクセルは白に、暗いピクセルは黒に変換
・階調の反転 : 画像の階調を反転
・ポスタリゼーション : 画像の階調を変える
・wipein : 画像をワイプイン
・wipeout : 画像をワイプアウト
・fadein : 画像をフェードインする
・fadeout : 画像をフェードアウトする
タイマー関連
・プログラムの実行時間を計測
その他
・コントロールの再描画時のちらつきを減らす
・midi音源から音を鳴らす
0078デフォルトの名無しさん
2005/09/08(木) 08:42:26やっぱりorz
ありがとうございました
0079デフォルトの名無しさん
2005/09/08(木) 09:33:19Windows API SystemParametersInfo()を使用します。
Example:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
TRect r ;
SystemParametersInfo(SPI_GETWORKAREA, 0, &r, 0);
Form1->Top = r.Top;
Form1->Left = r.Left;
Form1->Width = r.Right - r.Left;
Form1->Height = r.Bottom - r.Top;
}
0080デフォルトの名無しさん
2005/09/08(木) 10:04:590081デフォルトの名無しさん
2005/09/08(木) 10:55:02CreateParamsがオーバーライド出きる様に変更されてて、
生成処理差し替え出きると思ったが。
0082質問者
2005/09/08(木) 11:33:29MDIChildのフォームの親フォーム(MDIForm)はメインフォームの子フォーム
である事が絶対でありメインフォーム自体を変更するのは無しです。
この方法は可能ですか?
0083Image
2005/09/08(木) 11:44:47その際ScanLineを使いたいと思っています。
Delphiではできたのですが、C++Bulderではよくわかりません。
変数の宣言等等含め教えていただけたらと思います。
0084デフォルトの名無しさん
2005/09/08(木) 11:51:51たとえば24bit幅100pixelなビットマップの12行目を黒に塗りつぶす場合
int line = 12;
char* ptr = static_cast<char*>(Bitmap->Scanline[line]);
for(int i =0; i<100; i++)
{
*ptr = 0; ptr++; //青
*ptr = 0; ptr++; //赤
*ptr = 0; ptr++; //緑
}
あとは考えれ。
0085Image
2005/09/08(木) 12:34:43回答ありがとうございます。
ごめんなさい。理解が追いつかないです。
配列に読み込んだデータImage[100][100]があるとすると
それはどのように扱うのですか?
0086デフォルトの名無しさん
2005/09/08(木) 13:07:36ちょっとわからん
0087デフォルトの名無しさん
2005/09/08(木) 13:38:34Scanlineの返す値が何なのか理解してるか?
0088Image
2005/09/08(木) 13:44:09ちなみにDelphiでは以下のように書きました。
for y:=0 to ysize-1 do
begin
p:=bmp.ScanLine[y];
{y列めのデータのアドレスにポインタをセット}
for x:=0 to xsize-1 do
begin
c:=xy[y,x]-(wl-(ww div 2));
c:=(c*256) div ww;
if c > 255 then c:=255;
if c < 0 then c:=0;
p^[x].r:=c ;
p^[x].g:=c ;
p^[x].b:=c ;
end;
end;
form1.image1.Canvas.Draw(0,0,bmp);
end;
0089Image
2005/09/08(木) 14:22:23Bitmap->Scanline[line]
Bitmapの一列分のデータを返すものだとなんとなくですが
理解しています。
ただ、
BitMap.LoadFromFile('C:\Program Files\Common Files\Borland Shared\
Images\Splash\256color\factory.bmp');
みたいな感じに、先にBitmapに画像を読み込んでいるわけではないので
そのあたりがどのようになるか知りたかったわけです。
説明が悪くすみません。
0090デフォルトの名無しさん
2005/09/08(木) 17:40:38予め読み込んでいない Bitmap は真っ白なビットマップです。
Scanline[y] が返すポインタは型なしですが、その内容は PixelFormat に依存します。
pf32bit ---- PRGBQuad
pf24bit ---- PRGBTriple
pf8bit 以下 ---- PByte
ですから適切にキャストすると色データにアクセスできます。
逆にいうと ScanLine を使う前に PixelFormat が確定している必要があります。
0091デフォルトの名無しさん
2005/09/08(木) 21:26:17void __fastcall TForm1::Button1Click(TObject *Sender)
{
TRect r ;
SystemParametersInfo(SPI_GETWORKAREA, 0, &r, 0);
Form1->Top = r.Top;
Form1->Left = r.Left;
Form1->Width = r.Right - r.Left;
Form1->Height = r.Bottom - r.Top;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
Form1->Top = Screen->WorkAreaRect.Top;
Form1->Left = Screen->WorkAreaRect.Left;
Form1->Width = Screen->WorkAreaRect.Right - Screen->WorkAreaRect.Left;
Form1->Height = Screen->WorkAreaRect.Bottom - Screen->WorkAreaRect.Top;
}
0092デフォルトの名無しさん
2005/09/08(木) 21:37:37{
TRect r ;
r = Screen->WorkAreaRect;
Form1->Top = r.Top;
Form1->Left = r.Left;
Form1->Width = r.Right - r.Left;
Form1->Height = r.Bottom - r.Top;
}
0093デフォルトの名無しさん
2005/09/08(木) 21:56:560094デフォルトの名無しさん
2005/09/09(金) 00:52:13{
Caption = Screen->DefaultIme;
}
0095デフォルトの名無しさん
2005/09/09(金) 00:59:30Form1->BoundsRect = Monitor->WorkareaRect;
0096デフォルトの名無しさん
2005/09/09(金) 10:09:23{
Button1->Caption = "C++Builder";
}
void __fastcall TForm1::Button2Click(TObject *Sender)
{
Button1->Perform(BM_CLICK, 0, 0);
}
0097デフォルトの名無しさん
2005/09/10(土) 06:01:33OnIdleイベントはTApplicationのイベントなのです。
なので、Applicationに割り当てます。
場所はコンストラクタが良いでしょう。
//Formのコンストラクタで
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
Application->OnIdle = IdleHandler;
}
0098デフォルトの名無しさん
2005/09/10(土) 10:13:25.exe内の関数を.dllに入れて呼び出す場合は実行速度は
大して変わりないのでしょうか?
0099デフォルトの名無しさん
2005/09/10(土) 10:15:25変わらない
0100デフォルトの名無しさん
2005/09/10(土) 10:18:41010198
2005/09/10(土) 10:38:42なるほど、処理速度自体は変わらないけど起動時読み込みにより
遅くなるって事ですね。
起動が遅くなる度合いは関数の数に関係なく.dllの数によるものですか?
0102デフォルトの名無しさん
2005/09/12(月) 04:14:24http://blog.livedoor.jp/junki560/
0103デフォルトの名無しさん
2005/09/12(月) 05:38:10機動は早くなるよ
0104デフォルトの名無しさん
2005/09/12(月) 07:35:51どのような方法が、良いのでしょうか?
起動時にOSの言語を判定して、キャプションやフォントを変更していく以外に何はよい方法はないでしょうか?
0105デフォルトの名無しさん
2005/09/12(月) 11:15:28http://www.plustarnet.com/aspil/Programming/cpp01.htm
//コンストラクタ(constructor)とデストラクタ(destructor)
__fastcall ~TForm1();
__fastcall TForm1::~TForm1()
{
delete pBitmap;
delete pBitmap2;
delete tmpImage;
pixelinfolist->Clear();
delete pixelinfolist;
pixelinfolist2->Clear();
delete pixelinfolist2;
}
0106デフォルトの名無しさん
2005/09/12(月) 22:16:05リソースdllを丸ごとすげ替える方法がある。
ヘルプ読め
0107デフォルトの名無しさん
2005/09/12(月) 23:58:34ヘルプを読んでみたのですが、フォームの内容をDLLに保存する方法がよく分かりません
0108デフォルトの名無しさん
2005/09/13(火) 08:16:26http://makimo.to/2ch/piza2_tech/997/997074601.html
http://makimo.to/2ch/pc3_tech/1016/1016065855.html
http://makimo.to/2ch/pc2_tech/1035/1035596146.html
http://makimo.to/2ch/pc2_tech/1045/1045542179.html
http://makimo.to/2ch/pc5_tech/1054/1054280736.html
http://makimo.to/2ch/pc2_tech/1061/1061594556.html
http://makimo.to/2ch/pc5_tech/1080/1080541814.html
http://makimo.to/2ch/pc5_tech/1089/1089299158.html
http://makimo.to/2ch/pc5_tech/1094/1094749339.html
http://makimo.to/2ch/pc5_tech/1099/1099238936.html
http://makimo.to/2ch/pc8_tech/1108/1108468718.html
0109デフォルトの名無しさん
2005/09/13(火) 18:19:07テキストファイルからボタンのキャプションなどを読み込めばいいのでは?
0110デフォルトの名無しさん
2005/09/13(火) 20:25:41リソースdllウィザードとかその類いのが新規作成の中に無いか?
0111デフォルトの名無しさん
2005/09/14(水) 00:22:18行ったことは、まず
SDL-1.2.9.zipをダウンロードして展開。
中に入っていたBorland.zipを展開。(Borlandディレクトリができる)
Borland\bcb6にlibSDL.bpgをダブルクリックする。
プロジェクトメニューからすべてのプロジェクトをメイクをしました。
そうすると、パッケージのインポートライブラリーが見つかりませんと出ました。
これは、同梱されていたBorland.htmlというファイルを参考に実行しましたが
うまくできません。
どうやったらうまく導入できるんでしょうか?
0112デフォルトの名無しさん
2005/09/14(水) 12:57:16試してみたけどプロジェクトが出鱈目な感じだった。一応できたので以下やってみた手順。
・aliens.exeプロジェクトは、aliens.cが見当たらないのであきらめる。libSDLプロジェクトグループからaliensを削除。デモゲームらしい。
・SDL.dllプロジェクトにSDL-1.2.9/src/cpuinfo/SDL_cpuinfo.cを追加する。
・SDLmain.libプロジェクトのSDL_main.cを削除して、代わりにSDL-1.2.9/src/main/win32/SDL_win32_main.cを追加する。
・IDEを閉じた状態で、SDL.bprとgraywin.bprをメモ帳等の適当なエディタで開いて、「<PACKAGES value=vcl.bpi rtl.bpi…略」となってる部分を、「<PACKAGES value=""/>」とするかこのノード自体を削除して保存する。
・libSDLを開いて、「すべてのプロジェクトを再構築」を実行。
・途中で何回かコンパイルエラーが出るので、その都度userWindowProcを(FARPROC)userWindowProcという風にキャストして再度コンパイル。
で、コンパイルはできた。
0113デフォルトの名無しさん
2005/09/14(水) 14:06:30どうも試してくれありがとう。
あれから、色々検索しまして、簡単な導入方法がわかりました。
SDL-1.2.9-win32.zipの中のSDL.DLLをc:\windows\systemディレクトリに入れて
SDL-1.2.9.zipの中のborland.zipを展開した中に入っているものを全部borland C++ builder
をインストールした場所の各ディレクトリに入れました。
ヘッダファイルもinclude\SDKに入れまして、ライブラリもlib\SDKに入れてしまい
bcc32.cfgとilink32.cfgにパスを通して終わりです。
実際にSDLのテストプログラムをコンパイルしてみましたら、うまく実行できました。
0114デフォルトの名無しさん
2005/09/14(水) 19:49:33やっぱランタイムだけでよかったのね。DLLをソースからビルドしたい理由があったのかと思った。
0115デフォルトの名無しさん
2005/09/15(木) 09:28:31TImageに表示するにはどうすればいいのでしょうか?
そのままTBitmap::ScanLineで読み込んでも変な表示がされるのみでしてorz
0116デフォルトの名無しさん
2005/09/15(木) 10:22:570117デフォルトの名無しさん
2005/09/15(木) 10:23:26TImage::Picture::Bitmap::KiadFromStream使えば?
0118デフォルトの名無しさん
2005/09/15(木) 10:24:09ScanLine でコピーするならパレットもグレースケール化しないとね。
0119115
2005/09/15(木) 11:14:29LoadFromStreamでは「ビットマップイメージが不正です」と言われてしまいます。
DIBフォーマットってTBitmapでは直接読めないのでしょうか?
この辺りの処理をちゃんとやってないからScanLineでもダメなのでしょうねorz
0120デフォルトの名無しさん
2005/09/15(木) 11:25:42読み込み先の PixelFormat はどうなってます?
pf8bit なら、パレットをグレイスケール化することは必須
pf24bit なら ScanLine は TRGBTriple へのポインタだから RGB に同じ値を与えてグレースケールにする
pf32bit なら ScanLine は TRGBQuad 以下同上
0121デフォルトの名無しさん
2005/09/15(木) 14:16:14Graphics:TBitmap::PixelFormatをいじったか?
pfDeviceにでもなってんじゃないの?pf1bitに変更汁。
0122デフォルトの名無しさん
2005/09/15(木) 14:42:13pf8bit だろ、グレイスケールといえば普通。pf1bit ならスケールなんてない。黒白
0123デフォルトの名無しさん
2005/09/15(木) 15:22:080124デフォルトの名無しさん
2005/09/15(木) 15:27:550125115
2005/09/15(木) 16:04:38さっぱりワケわかめです。どうも読み込もうとしているDIBが画像データのみで、
ヘッダ情報が含まれていないようです。
ググっても、微に入り細に渡るBitmapフォーマットについての説明(勉強しているのなら
ありがたいですが、それは時間のある時に…)はあっても「だからこうしろゴルァ!」という
ズバッとしたサンプルソースがありませんorz
0126デフォルトの名無しさん
2005/09/15(木) 16:17:40データにWindowsBitmapのヘッダ付いてないならScanlineで書き込むしかない。
0127115
2005/09/15(木) 17:28:17上記のようにTBitmap::PixelFormatはpf8bitに設定して
TBitmap::Canvas::Pixels[x][y]にDIBの画像データをちまちまと入れたら出来ました。
お騒がせしました。
0128デフォルトの名無しさん
2005/09/15(木) 18:28:340129デフォルトの名無しさん
2005/09/15(木) 18:29:11Pixelsは猛烈に遅くなるからやめい。
0130デフォルトの名無しさん
2005/09/15(木) 18:29:15Pixels 使うのは最低だな
0131デフォルトの名無しさん
2005/09/16(金) 01:06:17だからScanLineを使って入れろというに。
Pixels使うと、一ドット毎にシステムコール起こるの知ってる?
0132デフォルトの名無しさん
2005/09/16(金) 05:22:48どうしたらいいでしょうか。当然NULLで文字が切れてしまいます。
0133デフォルトの名無しさん
2005/09/16(金) 08:33:351バイトづつIntToHex
0134デフォルトの名無しさん
2005/09/16(金) 09:07:480135デフォルトの名無しさん
2005/09/18(日) 18:04:00方法がわかりません。
Excelに数字を保存する方法はわかったのですが、グラフの書き方がわからないので、
知っている人がいれば教えてください。
0136ミ,,゚Д゚彡 ◆A6VzDeLphI
2005/09/18(日) 20:38:29グラフが描かれるテンプレートを用意して
xltとして保存しておいて
Excelをコントロールするとき
Excel起動後、新規シートではなく
xltを読み込んで動作させてはいかがかと。
0137デフォルトの名無しさん
2005/09/18(日) 22:03:550138デフォルトの名無しさん
2005/09/18(日) 22:17:03投稿日 : 2005/08/01(Mon) 10:35
投稿者 : lovez00
RichEditにはCanvasプロパティがないので、
使い捨てCanvasを作れば解決です。
練習がんばってねー。
//-------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
//使い捨てCanvas
TCanvas *RECanvas = new TCanvas;
RECanvas->Handle = GetDC( RichEdit1->Handle );
//ペン設定
RECanvas->Pen->Color = clBlack;
RECanvas->Pen->Width = 2;
//線を引く
RECanvas->MoveTo( 0, 20 );
RECanvas->LineTo( RichEdit1->ClientWidth, 20 );
//使い終わったら消す
delete RECanvas;
}
0139デフォルトの名無しさん
2005/09/19(月) 14:39:17void __fastcall TForm1::Button1Click(TObject *Sender)
{
TCanvas *c=new TCanvas;
c->Handle= GetDC(0);
//ここから好きな処理をする
c->Font->Size= 100;
c->TextOut(10,10,"いろは");
c->MoveTo(100,100);
c->LineTo(500,500);
//ここまで
ReleaseDC(0,c->Handle);
delete c;
}
0140デフォルトの名無しさん
2005/09/20(火) 05:30:42処理に困っているのは 0x00 だけ?
バイナリデータって聞くとそれ以外にも普通に表示されないコードが
あると思っちゃうけど無いの?
もしあるならどういう風に表示させるつもり?
TFileStream::Read() を使って unsigned char の配列に入れて
表示したいように加工してから表示・・・?
0141デフォルトの名無しさん
2005/09/21(水) 00:21:17LPDISPATCH *ppDisp, VARIANT_BOOL *Cancel)
{
一部省略
*ppDisp = CppWebBrowser->Application;
}
*ppDisp = CppWebBrowser->Application;
ってどういう意味なのですか?一般的に
0142デフォルトの名無しさん
2005/09/21(水) 00:56:000143デフォルトの名無しさん
2005/09/21(水) 02:41:420144デフォルトの名無しさん
2005/09/21(水) 03:22:06パッケージを使ってビルドすれば、BPLに対応するリソースdll(日本語ならJPN)が自動で選ばれる。リソースdllが無ければVCL内のメッセージについては英語のはず。
静的ビルドのときは、CDに入ってる(←バージョンによっては)英語版VCLでビルドするか、最悪でもやはりリソースとして.exeに埋めこまれてるのでリソース編集ツールで置き換えられる。
0145デフォルトの名無しさん
2005/09/21(水) 03:23:280146デフォルトの名無しさん
2005/09/21(水) 11:19:32強制的に最初のタブがアクティブになってしまうけど、
私はその削除するタブの一個前をアクティブにしたいのだが、
どうすれば良いのですかね。今現在ページの移動が見苦しい
<現在の擬似コーディング>
//現在のページ数
int PageNum = PageCtrl->PageCount;
//削除するページを得る(最後のページ)
TTabSheet *pDelPage = PageCtrl->Pages[PageNum - 1];
//次にアクティブにするページ
TTabSheet *pNextActivePage = PageCtrl->Pages[PageNum - 2];
//ページ削除(一旦先頭のページに移動)
delete pDelPage;
//次にアクティブにするページに移動(仕方なく入れてる)
PageCtrl->ActivePage = pNextActivePage;
0147デフォルトの名無しさん
2005/09/21(水) 13:08:12削除前に移動してもだめ?
0148デフォルトの名無しさん
2005/09/21(水) 13:51:16TPageControl::RemovePageをオーバライドするしか無いような‥‥
てかそこで削除したページの次を検索してそのページに切り替え動作やってるようだ。
0149146
2005/09/21(水) 14:05:24>>148 TPageControl::RemovePageは、privateにあって難しいかも。
VCLのソースそのものの書き換えが必要?
0150デフォルトの名無しさん
2005/09/21(水) 14:44:55ヘッダ書き換えで行けないかね‥‥
0151デフォルトの名無しさん
2005/09/21(水) 17:01:36TPageControlを継承した派生クラス作って、
RemovePage()をオーバーライドでどう?
0152デフォルトの名無しさん
2005/09/21(水) 18:33:370153146
2005/09/22(木) 09:03:530154デフォルトの名無しさん
2005/09/22(木) 09:18:59class Base {
private:
virtual void func() { cout << "Base::func()\n"; }
public:
virtual void funca() { func(); }
};
class Ext : public Base {
public:
virtual void func() { cout << "Ext::func()\n"; }
};
main() {
Ext a;
a.funca();
cout << endl;
}
0155デフォルトの名無しさん
2005/09/22(木) 13:40:32並べてみると壮観だね
A list of features in Dexter
http://groups.google.co.jp/group/borland.public.cppbuilder.non-technical/msg/901d7e5f9cb15e40?hl=ja&
0156デフォルトの名無しさん
2005/09/22(木) 15:31:150157デフォルトの名無しさん
2005/09/23(金) 23:37:18二郎 90
一郎 70
太郎 80
点数をソートして、名前を点数順に取得する方法がわかりません。
知っている人がいれば教えてください。
0158デフォルトの名無しさん
2005/09/23(金) 23:44:00TStringList
0159デフォルトの名無しさん
2005/09/23(金) 23:59:49158じゃないけど、TStringListで良いんじゃないの?
その場合、090という風に桁数を合わせないとダメだけど。
090二郎
070一郎
080三郎
という感じにして、Sort()で昇順になるから、逆順(高い者順)なら
下から取ってくれば良い。
0160デフォルトの名無しさん
2005/09/24(土) 01:55:00//構造体を定義
struct name_value {
String name;
int value;
name_value( String n=EmptyStr, int v=0 ) : name(n), value(v) {};
};
bool operator<( const name_value& lh, const name_value& rh ) {
return lh.value < rh.value;
}
//こんなふうにつかう
#include <set>
void some_function()
{
typedef std::set<name_value> name_value_set;
name_value_set nvset;
nvset.insert( name_value("二郎",90) );
nvset.insert( name_value("一郎",70) );
nvset.insert( name_value("太郎",80) );
...
//あとは頭からでもけつからでも好きな方から読み出せばいい。
}
0161デフォルトの名無しさん
2005/09/24(土) 12:31:08IDEの起動に物凄い時間がかかってメモリもありえないほど喰うけどな
0163デフォルトの名無しさん
2005/09/24(土) 13:15:18そうか。
で、それがどうかしたか?
>>160のソースに問題はないのでリンカエラーを起こしたのは君の責任だ。
0164デフォルトの名無しさん
2005/09/24(土) 13:20:21俺は>>160さんのソースを打ち込んで、適当にアレンジしてMemoに
中身を貼り付けるようにしてみたが、ちゃんと動いたぞ。
Windows用のPeekMessageとGDIを使った簡単なアニメーションと言うかゲームみたいなプログラムのソースを読んだんですが、C++Builderのプログラムに移植したいと思ったんですけど、PeekMessageを使っててメッセージループ中に他の自作関数を呼んだりしないといけません。
でもC++Builderのプログラムにはメッセージループがありません。どこにあるのですか?どうしたらカスタマイズできますか。
0166デフォルトの名無しさん
2005/09/24(土) 14:09:07BEGIN_MESSAGE_MAP
0167デフォルトの名無しさん
2005/09/24(土) 14:25:09http://www.borland.co.jp/qanda/cbuilder/c0002864.html
0168デフォルトの名無しさん
2005/09/24(土) 14:32:46TApplicationクラスのprivate関数ProcessMessageにメッセージループはある
0169デフォルトの名無しさん
2005/09/24(土) 14:59:01strA = "Button1"
From1.controls(strA).Visible = True
みたいにBCBで
Form1 -> strA -> Visible = True
みたいには出来ますか。
0170デフォルトの名無しさん
2005/09/24(土) 15:21:08String strA = "Button1";
Form1->FindChildControl(strA)->Visible = True;
ただし、実際はifでくくったほうが良い。
if ( TControl* ctrl = Form1->FincChildControl(strA) )
ctrl->Visible = True;
0171デフォルトの名無しさん
2005/09/24(土) 15:24:05さすがだね。ありがとう
0172デフォルトの名無しさん
2005/09/24(土) 15:24:51×True
○true
×FincChildControl
○FindChildControl
0173デフォルトの名無しさん
2005/09/24(土) 15:53:51boostを使えるようにする方法を教えてく浅い。
0174デフォルトの名無しさん
2005/09/24(土) 15:57:42binフォルダ中のbcc32.cfgに
-I"C:\boost_1_33_0"等を追加。既に-Iがあると思うので、セミコロンで
区切って後ろに追加する。
buildは・・・・・諦めた方がいいかもね。
0175デフォルトの名無しさん
2005/09/24(土) 17:43:20http://groups.google.co.jp/group/borland.public.cppbuilder.non-technical/msg/901d7e5f9cb15e40?hl=ja&
Here's a list of things I got out of it for Dexter.
- Conformance for Boost and ACE. Almost 100% ANSI conformance.
※直訳
Delphi2006買ってください><
0176デフォルトの名無しさん
2005/09/24(土) 17:54:27- Updates for BCB6
orz
0177デフォルトの名無しさん
2005/09/24(土) 21:30:340178デフォルトの名無しさん
2005/09/24(土) 23:27:46先頭の0を取り除く方法がわかりません。
0179デフォルトの名無しさん
2005/09/24(土) 23:30:32z = AnsiString(z.ToInt());
0180デフォルトの名無しさん
2005/09/24(土) 23:32:29AnsiString z = "070";
Caption = IntToStr( StrToInt(z) + 0 );
0181デフォルトの名無しさん
2005/09/24(土) 23:37:060182デフォルトの名無しさん
2005/09/25(日) 00:03:21char *p=new char[z.Length()+1];
if(p){
strcpy(p,z.c_str());
z=AnsiString(p+1);
delete[] p;
}
0183デフォルトの名無しさん
2005/09/25(日) 00:20:32void __fastcall TForm1::Button1Click(TObject *Sender)
{
TStringList* MyList = new TStringList();
AnsiString a = "070二郎";
AnsiString b = "100一郎";
AnsiString c = "080三郎";
MyList->Add(a);
MyList->Add(b);
MyList->Add(c);
MyList->Sort();
Memo1->Lines->Add(MyList->Count);
Memo1->Lines->Add(MyList->IndexOf(a));
Memo1->Lines->Add(MyList->IndexOf(c));
Memo1->Lines->Add(MyList->IndexOf(b));
Memo1->Lines->Add(MyList->Strings[0]);
Memo1->Lines->Add( ( (MyList->Strings[0]).SubString(1,3)).ToInt() );
Memo1->Lines->Add( ((WideString)MyList->Strings[0]).SubString(4,2) );
delete MyList;
}
0184デフォルトの名無しさん
2005/09/25(日) 00:24:01ま、なんだ。こういうところで安易に質問する前に
自分でもちっと勉強しろって事だな。
説明がわるかったけど、独自メッセージを処理したいというより
リアルタイム処理のためにGetMessageじゃなくてPeekMessageをつかったメッセージループとそのループ中に関数呼び出しを挿入したいということだけど、やっぱり分かりにくいか。
>>170
private関数じゃどうにもならないね。
0186デフォルトの名無しさん
2005/09/25(日) 02:00:470187165
2005/09/25(日) 05:39:28>>166 >>167 >>168
失礼しました。そしてありがとう。
>>168 >>186
メインループは書き換えられないけど、時間のかかるループの中でこれを呼べばいいみたいですね。
どうもありがとうございました。
0188デフォルトの名無しさん
2005/09/25(日) 08:49:05タイマースレッド作ってSleepなりSetTimerなりでループ回してやれば?
0189デフォルトの名無しさん
2005/09/25(日) 12:26:41ここではAPIを使用して自ウインドウへのメッセージ(WM_MOVE、WM_SIZE、WM_CLOSE)をフックする方法を説明します。このメッセージフックの方法は結構使えるので知らない人は覚えておきましょう。
■使用するAPI関数
SetWindowLong(ウインドウに関する情報を設定する)
CallWindowProc(Windowsメッセージをデフォルトのウインドウ プロシージャに渡す)
■メッセージ
WM_MOVE(ウインドウが移動した時に送られる)
WM_CLOSE(ウインドウを終了しろと言われた時に送られる)
WM_SIZE(ウインドウのサイズが変更した時に送られる)
0190165
2005/09/25(日) 12:28:11うん、その方法もあるね。
たまたま見たプログラムがメッセージループをいじくるやつだから、Builderだとどうなるかと思ったんです。
0191デフォルトの名無しさん
2005/09/25(日) 15:24:55>>189
WndProcオーバーライドしろと
0192デフォルトの名無しさん
2005/09/25(日) 17:26:37http://thecoadletter.com/article/0,1410,17819,00.html
if (msg == WM_VSCROLL)
ShowMessage("The vertical scrollbar is scrolling!"); //ここでカーソルが固まる
カーソルが固まるのを防ぐ方法がわかりません。
0193デフォルトの名無しさん
2005/09/25(日) 17:27:28休まずかき混ぜ続けるんだ
0194デフォルトの名無しさん
2005/09/25(日) 18:15:13そりゃ、スクロールイベントをShowMessageで止めてるんだからそうなるでしょ
0195デフォルトの名無しさん
2005/09/25(日) 18:37:24if (msg == WM_VSCROLL)
OutputDebugString("The vertical scrollbar is scrolling!")
これで解決
0196デフォルトの名無しさん
2005/09/25(日) 20:49:46そして、ダイアログボックスの嵐の罠(´Д`)
0197デフォルトの名無しさん
2005/09/25(日) 21:11:430198デフォルトの名無しさん
2005/09/26(月) 00:12:18http://www.geocities.com/fekinci37/vol.htm
0199デフォルトの名無しさん
2005/09/26(月) 10:22:21//#include <windows.h>
//Setting Master Volume
//http://www.geocities.com/fekinci37/vol.htm
void __fastcall TForm1::Button1Click(TObject *Sender)
{
DWORD Vollevel;
Vollevel = GetMixerVolume(GetMixerControlID (MIXERLINE_COMPONENTTYPE_DST_SPEAKERS));
//Vollevel = GetMixerVolume(GetMixerControlID (MIXERLINE_COMPONENTTYPE_SRC_WAVEOUT));
//Vollevel = GetMixerVolume(GetMixerControlID (MIXERLINE_COMPONENTTYPE_SRC_SYNTHESIZER));
if (Vollevel)
SetMixerVolume(GetMixerControlID (MIXERLINE_COMPONENTTYPE_DST_SPEAKERS), 0);
else
SetMixerVolume(GetMixerControlID (MIXERLINE_COMPONENTTYPE_DST_SPEAKERS), 65535);
}
0200デフォルトの名無しさん
2005/09/26(月) 13:46:27//WOutLine.dwComponentType = MIXERLINE_COMPONENTTYPE_DST_SPEAKERS;
//WOutLine.dwComponentType = MIXERLINE_COMPONENTTYPE_SRC_SYNTHESIZER;
http://www.gbuilder.times.lv/mixer.htm
http://www.gbuilder.times.lv/bcb_tips/MIXER_DEMO.rar
WinRAR
RAR/ZIPファイルの圧縮・解凍
http://www.vector.co.jp/soft/win95/util/se100730.html
0201デフォルトの名無しさん
2005/09/26(月) 18:11:59Form1->TrackBar1->Max = 65535;
0202デフォルトの名無しさん
2005/09/26(月) 23:37:110203デフォルトの名無しさん
2005/09/26(月) 23:39:07BCBに未来があるかどうかは、俺にはわからない。
0204デフォルトの名無しさん
2005/09/27(火) 09:10:260205デフォルトの名無しさん
2005/09/27(火) 20:35:380常駐系のアプリケーションを作成する場合など、タスクバーにアプリケーションのアイコンを表示したくない場合があります。
そんな時は、プロジェクトファイル(*.bpr)のソース(*.cpp)に以下のように追加します。
Project1.cpp
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
try
{
Application->Initialize();
Application->ShowMainForm = false; //これを追加
Application->CreateForm(__classid(TForm1), &Form1);
Application->Run();
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
return 0;
}
ただしこのままだと終了させる術がないので、タスクトレイにアイコンを表示するなどの処置はしておきましょう(^^;
ただしShowMainFormプロパティはアプリケーションの起動時に表示するかしないかを決めています。
そこで、フォームを表示させたい場合はForm1->Show()などとして表示させましょう。
0206デフォルトの名無しさん
2005/09/27(火) 20:56:2200207デフォルトの名無しさん
2005/09/27(火) 21:23:36ID:0仕事で使いたいなと思っているんだけど
もう新製品が出ませんとかだとなかなかね〜
0208デフォルトの名無しさん
2005/09/27(火) 21:41:52ID:0移行のテストも新バージョンの隠れたバグにも悩まされない
でも正直、環境入れ替えの移行テストもしたいし、SPが配布
されるのを心待ちにもしい・・・・・・・・・・・・・・・・・・・・・・
0209デフォルトの名無しさん
2005/09/27(火) 22:02:03ID:0年末に出ますよ。
2007年にはwin64対応版も出るとの事です。
Delphi RoadMap
http://blog.marcocantu.com/blog/ekondelphiroadmap.html
> Delphi/C++ for win64 (circa 2007): the name says it all My Comment
0210デフォルトの名無しさん
2005/09/27(火) 22:52:45EKon 9 Delphi Product Address
http://81.70.196.39:4242/Weblog/Blog.aspx?RootId=5:156
0211デフォルトの名無しさん
2005/09/27(火) 22:54:41Delphi談話室と間違えました
マルチポスト御免なさい mOm
0212デフォルトの名無しさん
2005/09/28(水) 10:40:38同じくらいならどっちを使うのがいいですか?
0213デフォルトの名無しさん
2005/09/28(水) 10:43:50急ぎじゃなければDelphi2006待ってから決めるのが吉
0214デフォルトの名無しさん
2005/09/28(水) 10:47:25SubItemがCaptionと同じ色で表示されてしまいます。
void __fastcall TForm1::ListView1DrawItem(
TCustomListView *Sender, TListItem *Item, TRect &Rect,
TOwnerDrawState State)
{
TCanvas *canvas = Sender->Canvas;
if (Item->Selected)
{
canvas->Brush->Color = clHighlight;
}
else
{
canvas->Brush->Color = clBlack;
}
canvas->Font->Color = clWhite;
canvas->TextOutA(0, Item->Top, "Caption");
canvas->Font->Color = clFuchsia;
canvas->TextOutA(ListView1->Columns->Items[0]->Width, SubItem);
}
どこがいけないのでしょうか。
0215デフォルトの名無しさん
2005/09/28(水) 11:45:59急ぎではないですが、それはいつ発売されますか?
0216デフォルトの名無しさん
2005/09/28(水) 12:26:44年末くらい
0217デフォルトの名無しさん
2005/09/28(水) 16:54:11最近BCB触ってないからアレなんだが・・・↓のコードでいけないか?
void __fastcall TForm1::ListView1DrawItem(
TCustomListView *Sender, TListItem *Item, TRect &Rect,
TOwnerDrawState State)
{
TCanvas *canvas = Sender->Canvas;
if (Item->Selected)
{
canvas->Brush->Color = clHighlight;
}
else
{
canvas->Brush->Color = clBlack;
}
SetTextColor(canvas->Handle, clWhite); // ← 変更
canvas->TextOutA(0, Item->Top, "Caption");
SetTextColor(canvas->Handle, clFuchsia); // ← 変更
canvas->TextOutA(ListView1->Columns->Items[0]->Width, SubItem);
}
0218デフォルトの名無しさん
2005/09/28(水) 17:14:31最後の行はcanvas->TextOutA(ListView1->Columns->Items[0]->Width, Item->Top, "SubItem");
の打ち間違い?だとして、それでちゃんと色分けされたけどな。
0219デフォルトの名無しさん
2005/09/28(水) 18:24:03void __fastcall TForm1::Button1Click(TObject *Sender)
{
Graphics::TBitmap *mBitMapA; //ビットマップオブジェクトの宣言
Graphics::TBitmap *mBitMapB; //A:ソース B:オブジェクト
mBitMapA = new Graphics::TBitmap();
mBitMapB = new Graphics::TBitmap();
mBitMapA->LoadFromFile("C:\\Program Files\\Common Files\\Borland Shared\\Images\\Splash\\256color\\factory.bmp"); //ソースファイルを読み込む
mBitMapA->PixelFormat = pf24bit; //24ビットのビットマップにする
mBitMapB->LoadFromFile("C:\\Program Files\\Common Files\\Borland Shared\\Images\\Splash\\256color\\factory.bmp");
mBitMapB->PixelFormat = pf24bit;
#define kR 2//RGBのオフセット値
#define kG 1//ビットマップの中では、B G Rの順に並んでいます。
#define kB 0
{
int x,y,w,h;
unsigned char*pA,*pB;
w = mBitMapA->Width;
h = mBitMapA->Height;
for(y=0; y<h; y++) {
pA = (unsigned char *)mBitMapA->ScanLine[y];
pB = (unsigned char *)mBitMapB->ScanLine[y];
for(x=0; x<w; x++) {
pB[x*3+kR] = (unsigned char)(255 - pA[x*3+kR]);
pB[x*3+kG] = (unsigned char)(255 - pA[x*3+kG]);
pB[x*3+kB] = (unsigned char)(255 - pA[x*3+kB]);
}
}
}
Form1->Canvas->Draw(0,0,mBitMapB);
}
0220デフォルトの名無しさん
2005/09/28(水) 23:36:37delphi2006でC++が使えるの?
0221デフォルトの名無しさん
2005/09/28(水) 23:49:01http://blog.marcocantu.com/blog/ekondexter.html
0222デフォルトの名無しさん
2005/09/28(水) 23:58:43ほ〜 ありがとう
もうMFC使ってのGUIアプリ作るのは疲れたよ。
0223デフォルトの名無しさん
2005/09/29(木) 10:23:32そんな目的なら現行 BCB6 を買っておきなよ。D2006 なんか期待しちゃだめ
0224デフォルトの名無しさん
2005/09/29(木) 10:41:460225デフォルトの名無しさん
2005/09/29(木) 10:42:360226デフォルトの名無しさん
2005/09/29(木) 14:16:21http://pc8.2ch.net/test/read.cgi/tech/1117225464/l50
0227デフォルトの名無しさん
2005/09/29(木) 23:44:08[リンカ 致命的エラー]fatal:オプションの間違い:2045;
0228デフォルトの名無しさん
2005/09/30(金) 11:01:40そのフォーム内のイベントでフレーム無いのラベル等のキャプションを変更しようとするとエラーになります。
Frame1->Label1->Caption = "aaa";
上記のコードを実行するときはすでにフレームのコンストラクタは呼ばれていますが
0229デフォルトの名無しさん
2005/09/30(金) 11:23:02とりあえずオブジェクトインスペクタでフォームに乗っかってるフレームのNameを確認する。
0230デフォルトの名無しさん
2005/09/30(金) 11:28:08貼り付けたフレームはフォームに貼り付けられたフレームにしかアクセスできませんか?
Frame11->Label1->Caption = "aaa";
たしかにこれならできますが、設計時にフレームを修正するとフォームに貼り付けてるフレームの内容も
同時に修正されるので、Frame1->Label1->Caption = "aaa";みたいに直接フレームないのラベル等の変更ができるかなっておもったんですが
これはできないってことですか?
0231デフォルトの名無しさん
2005/09/30(金) 11:34:29できません
0232デフォルトの名無しさん
2005/09/30(金) 11:40:02あ、できないんですか。納得です。
しかしフォームに貼り付けたフレームのボタンのクリックイベントを作成すると
Frame21->BitBtnClick(Sender);
みたいに、フレームのボタンクリックイベントを呼んでるんですよね。
何故これを呼ぶことができるのにキャプションの変更が出来ないのかが謎だなあ
ちなみに、フレーム内のボタンのクリックイベントでラベルの変更を行うのは可能なんですよね。
なんでだろ・・
0233デフォルトの名無しさん
2005/09/30(金) 11:45:50あんた頭悪すぎ。
0234デフォルトの名無しさん
2005/09/30(金) 11:46:23あなたはこっち
くだすれC++Builder(超初心者用)
http://pc8.2ch.net/test/read.cgi/tech/1117225464/
0235デフォルトの名無しさん
2005/09/30(金) 12:00:040236デフォルトの名無しさん
2005/09/30(金) 12:01:17煽らずに説明してやればいいのに。俺はできないけど。
0237デフォルトの名無しさん
2005/09/30(金) 12:30:48(ry
0238デフォルトの名無しさん
2005/09/30(金) 13:56:11ageてバカっぽい質問してきたら気をつけろ!!
0239デフォルトの名無しさん
2005/09/30(金) 13:59:47DBGridはDataSourceを指定せずにStringGridみたいにCellsのようなプロパティーで文字を設定することはできるのでしょうか?
0240デフォルトの名無しさん
2005/09/30(金) 14:09:410241デフォルトの名無しさん
2005/09/30(金) 19:31:24形式の日時をTDateTimeに変換する方法を教えて下さい。
0242デフォルトの名無しさん
2005/09/30(金) 20:39:31TXSDateTime* xsDateTime = new TXSDateTime();
xsDateTime->XSToNative("2005-06-09T13:43:13+09:00");
xsDateTime->AsDateTime でTDateTimeとして取り出し。
0243241
2005/09/30(金) 21:47:31ありがとうございます、ただこのTXSDateTimeというのを使うには
何をincludeする必要があるんですかね?
BCB6Proを使っているのですが。
ヘルプ見たんですが、XSBuiltIns.hとかなさそうですし。
0244デフォルトの名無しさん
2005/09/30(金) 22:07:10XSBuiltins.hpp
0245241
2005/09/30(金) 22:23:50どうもありがとうございました。
hppだったんですね、hとcppと試して、hppを失念してました。
お陰で希望通り動作しました。
0246デフォルトの名無しさん
2005/09/30(金) 22:55:47そんなクラスがあったのか。勉強になったよ。
自作する必要なかったじゃんか・・・orz
0247デフォルトの名無しさん
2005/10/01(土) 06:40:410248デフォルトの名無しさん
2005/10/01(土) 13:05:38TListViewの以下のイベントで処理を行いたい
のですがどうすればいいですか?
1:横スクロールバーを操作した時
2:ViewStyle = vsReportの時のカラム幅を変更中
お願いします。
0249デフォルトの名無しさん
2005/10/03(月) 11:21:440250デフォルトの名無しさん
2005/10/03(月) 19:19:03MyBase、具体的にはTClientDataSet。
0251デフォルトの名無しさん
2005/10/04(火) 10:40:19隊長!!
5にはTClientDataSetがありませんが!!
0252デフォルトの名無しさん
2005/10/04(火) 11:04:250253デフォルトの名無しさん
2005/10/04(火) 11:35:03三等兵の分際で意見するな!!
0254デフォルトの名無しさん
2005/10/04(火) 15:13:410255デフォルトの名無しさん
2005/10/04(火) 21:28:280256デフォルトの名無しさん
2005/10/05(水) 02:50:51void __fastcall TMainForm::CreateNewForm(String Name)
{
TForm *NewForm = new TForm2(Application);
NewForm->Caption = Name;
NewForm->Show();
}
0257デフォルトの名無しさん
2005/10/05(水) 07:55:15ここまでくるのに長かった・・
0258デフォルトの名無しさん
2005/10/05(水) 08:08:06ダブルクリックで起動すると数秒で終わるものなのですが、
パッとDos窓が立ち上がるのが分かります
出来たらこのDos窓が見えないように実行できるとすごくうれしいです
よろしくお願いいたします
0259デフォルトの名無しさん
2005/10/05(水) 10:31:53ShellExecuteで最後の引数をSW_HIDEにすればいいと思う
0260デフォルトの名無しさん
2005/10/05(水) 13:38:14教えていただけないでしょうか?
よろしくお願いいたします。
0261デフォルトの名無しさん
2005/10/05(水) 13:42:33Application->OnMessage
WM_KEYDOWN
WM_LBUTTONDBLCLK マウスの左ボタンをダブルクリックした
WM_LBUTTONDOWN マウスの左ボタンが押された。
WM_LBUTTONUP マウスの左ボタンが離された。
WM_RBUTTONDBLCLK マウスの右ボタンをダブルクリックした
WM_RBUTTONDOWN マウスの右ボタンが押された
WM_RBUTTONUP マウスの右ボタンが離された
WM_MBUTTONDBLCLK マウスの中央ボタンをダブルクリックした
WM_MBUTTONDOWN 中央のマウス ボタンが押された
WM_MBUTTONUP 中央のマウス ボタンが離された
0262デフォルトの名無しさん
2005/10/05(水) 14:01:08WM_KEYFIRST から WM_KEYLAST までと WM_MOUSEFIRST から WM_MOUSELAST までを
無視させる
0263デフォルトの名無しさん
2005/10/05(水) 14:06:530264デフォルトの名無しさん
2005/10/05(水) 22:04:27MSG msg;
// キーボード
while( PeekMessage( &msg, Handle, WM_KEYFIRST, WM_KEYLAST, PM_REMOVE ) );
// マウス
while( PeekMessage( &msg, Handle, WM_MOUSEFIRST, WM_MOUSELAST, PM_REMOVE ) );
0265デフォルトの名無しさん
2005/10/06(木) 01:53:400266デフォルトの名無しさん
2005/10/06(木) 04:27:22bool &Handled)
{
//http://thunder.prohosting.com/~cbdn/anmessag.htm
//additional applicationEvents1
if(Msg.message == WM_MOUSEMOVE)
{
Caption = "Moved to " + IntToStr(LOWORD(Msg.lParam))
+ " : " + IntToStr(HIWORD(Msg.lParam));
Handled = true;
}
}
0267デフォルトの名無しさん
2005/10/06(木) 09:59:22RichEdit1
Handled = true;
どのようにコードを書けばいいのでしょうか?
0268デフォルトの名無しさん
2005/10/06(木) 10:28:12procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
var Handled: Boolean);
begin
if Msg.hwnd = RichEdit1.Handle then
case Msg.message of
WM_KEYFIRST..WM_KEYLAST, WM_MOUSEFIRST..WM_MOUSELAST: Handled := true;
end;
end;
0269デフォルトの名無しさん
2005/10/06(木) 11:54:50>>262さん >>265さん >>268さん
ご教授有難うございます。
void __fastcall TForm1::ApplicationEvents1Message(tagMSG &Msg,
bool &Handled)
{
//RichEdit1でキー・マウス入力禁止(ReadOnly プロパティは使用しない)
//additional applicationEvents1
if (Msg.hwnd == RichEdit1->Handle)
{
if ( (WM_KEYFIRST <= Msg.message) && (Msg.message <= WM_KEYLAST) )
{
Handled = true;
}
else if( (WM_MOUSEFIRST <= Msg.message) && (Msg.message <= WM_MOUSELAST) )
{
Handled = true;
}
}
}
0270デフォルトの名無しさん
2005/10/06(木) 13:35:18{
RichEdit1->Lines->Text = "12345\nabcde";
RichEdit1->SelStart = SendMessage(RichEdit1->Handle, EM_LINEINDEX,
2 - 1, 0) + 4;
SendMessage(RichEdit1->Handle, EM_SCROLLCARET, 0, 0);
RichEdit1->SetFocus();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
RichEdit1->Lines->Text = "あいうえお\nかきくけこ";
RichEdit1->SelStart = SendMessage(RichEdit1->Handle, EM_LINEINDEX,
2 - 1, 0) + 4;
SendMessage(RichEdit1->Handle, EM_SCROLLCARET, 0, 0);
RichEdit1->SetFocus();
}
Button1は二行目の「d」と「e」の間でカーソルが点滅しますが、
Button2は二行目の「き」と「く」の間でカーソルが点滅します。
共通コードで二行目の四文字目と五文字目の間でカーソルを
点滅させる事は出来ないのでしょうか?
0271デフォルトの名無しさん
2005/10/06(木) 13:40:370272デフォルトの名無しさん
2005/10/06(木) 13:41:39widestring
0273デフォルトの名無しさん
2005/10/06(木) 15:10:18Delphiだとこれでうまくいきます。
function CharactersToBytes(const s: string; posi: integer): integer;
var
w: WideString;
t: string;
begin
w := s;
t := Copy(w,1,posi);
result := Length(t);
end;
procedure TForm1.Button1Click(Sender: TObject);
var
p: integer;
begin
RichEdit1.Lines.Text := '12345'#13#10'abcde';
p := CharactersToBytes(RichEdit1.Lines[2-1], 4);
RichEdit1.SelStart := RichEdit1.Perform(EM_LINEINDEX,2 - 1, 0) + p;
RichEdit1.Perform(EM_SCROLLCARET, 0, 0);
RichEdit1.SetFocus;
end;
0274デフォルトの名無しさん
2005/10/06(木) 15:11:10procedure TForm1.Button2Click(Sender: TObject);
var
p: integer;
begin
RichEdit1.Lines.Text := 'あいうえお'#13#10'かきくけこ';
p := CharactersToBytes(RichEdit1.Lines[2-1], 4);
RichEdit1.SelStart := RichEdit1.Perform(EM_LINEINDEX,2 - 1, 0) + p;
RichEdit1.Perform(EM_SCROLLCARET, 0, 0);
RichEdit1.SetFocus;
end;
0275デフォルトの名無しさん
2005/10/06(木) 15:51:260276デフォルトの名無しさん
2005/10/06(木) 16:05:280278デフォルトの名無しさん
2005/10/06(木) 20:28:230279デフォルトの名無しさん
2005/10/06(木) 20:41:000280デフォルトの名無しさん
2005/10/07(金) 00:38:03>>272さん >>273-274さん
ご教授有難うございます。
int CharactersToBytes0(const AnsiString s, int posi)
{
WideString w;
AnsiString t;
w = (WideString)s;
t = (AnsiString)w.SubString(1, posi);
return t.Length();
}
int CharactersToBytes(const String s, int posi)
{
WideString w;
String t;
w = (WideString)s;
t = (String)w.SubString(1, posi);
return t.Length();
}
0281デフォルトの名無しさん
2005/10/07(金) 00:39:52void __fastcall TForm1::Button1Click(TObject *Sender)
{
int p;
RichEdit1->Lines->Text = "12345\nabcde";
p = CharactersToBytes(RichEdit1->Lines->Strings[2-1], 4);
RichEdit1->SelStart = SendMessage(RichEdit1->Handle, EM_LINEINDEX,
2 - 1, 0) + p;
SendMessage(RichEdit1->Handle, EM_SCROLLCARET, 0, 0);
RichEdit1->SetFocus();
}
//---------------------------------------------------------------------------
0282デフォルトの名無しさん
2005/10/07(金) 00:42:09void __fastcall TForm1::Button2Click(TObject *Sender)
{
int p;
RichEdit1->Lines->Text = "あいうえお\nかきくけこ";
p = CharactersToBytes(RichEdit1->Lines->Strings[2-1], 4);
RichEdit1->SelStart = SendMessage(RichEdit1->Handle, EM_LINEINDEX,
2 - 1, 0) + p;
SendMessage(RichEdit1->Handle, EM_SCROLLCARET, 0, 0);
RichEdit1->SetFocus();
}
//---------------------------------------------------------------------------
0283デフォルトの名無しさん
2005/10/07(金) 00:44:18void __fastcall TForm1::Button3Click(TObject *Sender)
{
int p;
RichEdit1->Lines->Text = "12345\nabcde";
p = CharactersToBytes0(RichEdit1->Lines->Strings[2-1], 4);
RichEdit1->SelStart = SendMessage(RichEdit1->Handle, EM_LINEINDEX,
2 - 1, 0) + p;
SendMessage(RichEdit1->Handle, EM_SCROLLCARET, 0, 0);
RichEdit1->SetFocus();
}
//---------------------------------------------------------------------------
0284デフォルトの名無しさん
2005/10/07(金) 00:48:44{
int p;
RichEdit1->Lines->Text = "あいうえお\nかきくけこ";
p = CharactersToBytes0(RichEdit1->Lines->Strings[2-1], 4);
RichEdit1->SelStart = SendMessage(RichEdit1->Handle, EM_LINEINDEX,
2 - 1, 0) + p;
SendMessage(RichEdit1->Handle, EM_SCROLLCARET, 0, 0);
RichEdit1->SetFocus();
}
//-------------------------
0285デフォルトの名無しさん
2005/10/07(金) 01:21:18ここはお前の日記帳ですね
http://www.tt.rim.or.jp/~rudyard/torii009.html
0286デフォルトの名無しさん
2005/10/07(金) 02:05:30(名)スル
(1)0 1 (ア)児童・生徒に知識・技能を与え、そこからさらに知識への興味を呼び起こすこと。
(イ)専門的な学問・技芸を教えること。
「国文学を―する」「書道―」
(2)0 大学などの高等教育機関において、専門の学問・技能を教え、また自らは研究に従事する人の職名。助教授・講師の上位。
0287デフォルトの名無しさん
2005/10/07(金) 02:08:29問題解決したコードを
掲示板にフィードバックしなくていいのでしょうか?
0288デフォルトの名無しさん
2005/10/07(金) 02:16:58気にするな。フィードバック感謝!
0289デフォルトの名無しさん
2005/10/07(金) 02:18:490290258
2005/10/07(金) 04:40:15急な用事で出かけてしまいネットもなかなか見れなくて御礼が遅くなってすみません
帰り次第試してみたいと思います ありがとうございました
0291デフォルトの名無しさん
2005/10/10(月) 17:20:06せめてVCLはともかく、コンパイラだけでも新しくしてほしい。
0292デフォルトの名無しさん
2005/10/10(月) 17:42:53次のバージョンでboostとか使えるらしいよ
0293デフォルトの名無しさん
2005/10/10(月) 18:35:570294デフォルトの名無しさん
2005/10/10(月) 20:30:23http://groups.google.co.jp/group/borland.public.cppbuilder.non-technical/msg/901d7e5f9cb15e40?hl=ja&
World Premiere: DeXter IDE at EKON 9
http://delphi-notes.blogspot.com/2005/09/world-premiere-dexter-ide-at-ekon-9.html
EKon 9 Delphi Product Address
http://81.70.196.39:4242/Weblog/Blog.aspx?RootId=5:156
Delphi Roadmap 2005 - 2006
http://blogs.borland.com/dcc/archive/2005/09/27/21361.aspx
Delphi RoadMap
http://blog.marcocantu.com/blog/ekondelphiroadmap.html
0295デフォルトの名無しさん
2005/10/10(月) 20:41:57- Conformance for Boost and ACE. Almost 100% ANSI conformance.
いままで対応してなかったのが驚き
0296デフォルトの名無しさん
2005/10/10(月) 21:10:25追加情報としては2007年頃、Delphi/C++ for win64のあたりが注目点かな。
それからオフィシャルがC++Builder 2006に変わっている
http://www.borland.com/us/products/cbuilder/index.html
単体販売はあるのだろうか?
0297デフォルトの名無しさん
2005/10/10(月) 21:57:500298デフォルトの名無しさん
2005/10/10(月) 22:48:42Delphi も for Win32 と for .NET を分けて欲しい。C# はいらん。
0299デフォルトの名無しさん
2005/10/11(火) 01:30:54These are not planned.
- Updates for BCB6
( ゚Д゚)ゴルァ!!約束が違うだろうが。
0300デフォルトの名無しさん
2005/10/11(火) 03:57:440301デフォルトの名無しさん
2005/10/11(火) 04:01:540302デフォルトの名無しさん
2005/10/11(火) 04:17:55頼むぜ某さん。
0303デフォルトの名無しさん
2005/10/11(火) 04:33:08商品としてはDelphi2006, C++Builder2006, C#Builder2006が用意されるが
中 身 は 同 じ 。
FAQに書いてある。
特定言語だけのインストールはできるらしい。
0304デフォルトの名無しさん
2005/10/11(火) 04:36:370305デフォルトの名無しさん
2005/10/11(火) 04:43:59・・・・・BCB6からのアップデートパスが無い時点でもう(´Д⊂ モウダメポ
また10万とか用意せにゃいかんのか
0306デフォルトの名無しさん
2005/10/11(火) 04:58:540307デフォルトの名無しさん
2005/10/11(火) 06:51:07ボーランドはコンパイラ製作の人間を大量解雇したらしいですよ
新しいコンパイラは期待できないでしょう
0308デフォルトの名無しさん
2005/10/11(火) 07:13:36Delphiにinlineや演算子オーバーロードが加わったり
C++のWIN64ネイティブ対応が予定されているなど
コンパイラも新しくなってますよ。
0309デフォルトの名無しさん
2005/10/11(火) 08:24:55プロダクツが多量のバグの悪寒。Updateに次ぐUpdateかよ('A`)
0310デフォルトの名無しさん
2005/10/11(火) 09:02:51あまり短いサイクルだとアップグレードの負担が大きいけど、
逆に長すぎると最新技術に乗り遅れ。
MSの様にある程度定期的にリリースしてくれればいいのに。
0311デフォルトの名無しさん
2005/10/11(火) 11:08:40予定するのは勝手だが、まともに動くかどうかは予定に入ってるのか?(笑
0312デフォルトの名無しさん
2005/10/11(火) 14:15:020313デフォルトの名無しさん
2005/10/11(火) 17:22:090314デフォルトの名無しさん
2005/10/11(火) 17:41:130315デフォルトの名無しさん
2005/10/11(火) 22:30:450316デフォルトの名無しさん
2005/10/12(水) 05:43:440317デフォルトの名無しさん
2005/10/12(水) 16:47:31TStream* sourcestream = sourcetable->CreateBlobStream(sourcetable->FieldByName("blobfield"), bmRead);
desttable->Edit();
TStream* deststream = desttable->CreateBlobStream(desttable->FieldByName("blobfield"), bmWrite);
deststream->CopyFrom(sourcestream, 0);
desttable->Post();
delete wrtstrmp;
delete sourcestream;
一行目、読み込み時に既にデータが足りないのですが、なにかおかしいでしょうか?
0318317
2005/10/12(水) 18:50:550319デフォルトの名無しさん
2005/10/12(水) 23:24:55mosaic.dllという渡された*TCanvasに描画するdllを作りました。
extern "C" __declspec(dllexport) void mosaic(TCanvas *Canvas,DynamicArray<TRect> &Rect,int rectnum,int pixelsize){
ほげほげ
}
そして、呼び出し側のプロジェクトにその際に出来たmosaic.libを追加し、
プロジェクトのオプションの遅延ロードするdllにmosaic.dllを追加、
呼び出し側に
extern "C" __declspec(dllimport) void mosaic(TCanvas *Canvas,DynamicArray<TRect> &Rect,int rectnum,int pixelsize);
と記述して、
Graphics::TBitmap *MyBitmap;
MyBitmap=new Graphics::TBitmap;
このへんでビットマップ初期化〜描画
MosaicRectはRectクラスの動的配列
mosaic(MyBitmap->Canvas,MosaicRect,MosaicRect.Length,8);
などと呼び出しています。
一見うまくビットマップが処理されるのが画面でもわかるのですが、
一度でもdllの中で関数が渡す*Canvasのプロパティを変更したりメソッドを
使ったりすると
(例えば、Canvas->Brush->Style=bsSolid; の一行だけ実行してreturnするようにdllを書き換えても)
呼び出し側で
delete MyBitmap;
のところで例外が発生してしまいます。
ここであえて解放しなければプログラムは所定の目的どおりの動作をするのですが、
気持ち悪くてしょうがありません。
どうしてこうなってしまうのでしょうか?
0320デフォルトの名無しさん
2005/10/13(木) 01:07:41DLL と exe を同じ環境・バージョンでコンパイルしても、それぞれ別個のライブラリ
を参照していることになるのですよ。
0321デフォルトの名無しさん
2005/10/13(木) 01:58:30オブジェクトはやりとりできない。動くこともあるけど、たまたま VMT の
相対アドレスが一致していた偶然と考えるべき。FAQ ですね。
0322デフォルトの名無しさん
2005/10/13(木) 08:31:01Delphi2まではIDEにインストールしたコンポーネントはdllにコンパイルされてたぞ?
一般的にダメというならCOMなんか成立しない。条件による。
VMTはふつーにPEローダーによって再配置されるし。
現に>>319も
> 一度でもdllの中で関数が渡す*Canvasのプロパティを変更したりメソッドを
> 使ったりすると
と、わかってる。
このケースがダメな理由は、TBitmapがグローバル変数を参照するから。具体的にはCanvasやBrush等のGDIオブジェクトがキャッシュされているから。
メモリマネージャを共有して、Canvasを使ったらFreeMemoryContextsを呼ぶようにして、Brushなんかは変更しないようにすれば良さげ。(VCLソースをざっと見た限り。他になんかあるかも)
ただ、別個に注意点が沢山出来て面倒なのと、コンパイラ・ライブラリが同じバージョンであることを保証できないのとで、普通はやらないから格言になってるけれど…。
無条件にダメとか偶然とかそんなのでは無い。
このケースなんかだと、Bitmap.Canvas.Handleだけ渡して、.dllの中で別にテンポラリのTCanvas作って、そのHandleに渡されたHandleを代入して使えばどう?
0323デフォルトの名無しさん
2005/10/13(木) 10:34:21見え見えですね。
> このケースなんかだと、Bitmap.Canvas.Handleだけ渡して、.dllの中で別にテンポラリのTCanvas作って、
> そのHandleに渡されたHandleを代入して使えばどう?
TCanvas は、ペンやブラシなどリソースマネージャが関与するデバイスコンテキストハンドル
のラッパです。DLL と exe とで別々のマネージャを持ってるのにハンドルだけ渡して
うまくいくわけ無いでしょ。一見うまくいくとしても、一方での内容変更が他方での
変更に自動的に反映するわけじゃないので齟齬が生じます。
TCanvas.Handle を DLL と exe で渡せないことは Delphi-ML でも過去に話題になりました。
VCL オブジェクトは、exe 内、 dll 内 で作成してその中で使う分には問題ないです。
やり取りはできません。
0324デフォルトの名無しさん
2005/10/13(木) 12:47:16PC−ネットワーク(TCP/IP)−装置
という構成でPCと装置間で、データの送受信を行いたいのですが、
PC上の制御ソフトではネットワーク通信を行うために必要なコンポーネント(ライブラリ?)はどのようなものでしょうか?
根本的にネットワーク通信のイロハのイの字も知らないため、ネット上でヒント等を探したりはしているのですが、なかなか要領を得られません・・・。orz
尚、制御ソフトの設計はC++Builder5を使用し、RS232CやGPIB通信プログラムの設計を行ったことはあります。
よろしくお願いします。
0325デフォルトの名無しさん
2005/10/13(木) 13:24:350326デフォルトの名無しさん
2005/10/13(木) 13:53:39dll と exe は同一の仮想メモリ空間なんだから、mosaic がなにをするのか知らない
けど、ビットマップのピクセルをいじるんだったら、Scanline[] をポインタの配列
として渡したらどうでしょうか?
または、TCanvas で行き来できないので、TBitmap の SaveToStream() でメモリイメージ
としてやり取りするとか。
0327デフォルトの名無しさん
2005/10/13(木) 15:41:58http://members3.jcom.home.ne.jp/jellyjam/pages/Del/graph.html
※半透明コピーのサンプルコード(500KB)
Bmp1 に Bmp2 をコピーします。 Bmp2 が Bmp1 の大きさを超えるときは、はみでた部分は描画しません。 なお、強制的にフルカラーにしてしまうので気をつけてください……というかビットマップの PixelFormat は pf32bit にしておいてください。
●そのいち
Type
0328デフォルトの名無しさん
2005/10/13(木) 15:58:180329319
2005/10/13(木) 18:46:10dll自体がよくわかっていないのですが、dllとexeはメモリは共有するがインスタンスを
共用できないのでしょうか。それが共通パッケージを使うとそれができる?
今回の目的は、dllファイルを削除することによって関数が無効になる処理を入れること
ですので、共有ライブラリを使用する方法で試したらきちんとTBitmapが解放できました
のでこれでいこうと思います。ありがとうございました。
0330デフォルトの名無しさん
2005/10/13(木) 21:30:25は?
TCanvasは色々キャッシュされたりはするけれど結局単なるDCのラッパーで、たとえばHandleにGetDC(0)とかで取ってきたデスクトップ全体のデバイスコンテキストなんか代入して使えちゃったりするわけなんだが…。
できないのであれば、そもそもTCanvasのHandleが書き込み可能になってないだろ。
TCustomControl.PaintWindowなんか、Windowsから渡されたDCをCanvasのHandleに代入してるだけだぞ。
勿論、TCanvasは色々キャッシュしたりするので、その点は気を使う必要がある。
あと、オブジェクトそのものも、同バージョン同ライブラリが確実なのであれば、メモリマネージャ共有すれば、グローバル変数とかRTTIがexeとdllで別になることさえ気をつけてれば、渡せるよ。諸々の条件クリアがめんどくさいが。
0331デフォルトの名無しさん
2005/10/14(金) 01:56:00手動で変数名変えるのに疲れました・・・orz
0332デフォルトの名無しさん
2005/10/14(金) 07:12:560333デフォルトの名無しさん
2005/10/14(金) 09:52:00BCB2006
0334デフォルトの名無しさん
2005/10/15(土) 23:58:58Memo1->Lines->Count
がそうだと思ってやってみたのですがどうも違うみたいで・・・
よろしくお願いします
0335デフォルトの名無しさん
2005/10/16(日) 00:06:56いやそれでいいとおもいますけど?
WordWrapがonだとうまくいかないかも
0336デフォルトの名無しさん
2005/10/16(日) 02:14:010337デフォルトの名無しさん
2005/10/16(日) 08:58:35{
//http://www.borland.co.jp/tips/cbuilder/cb006/vcldat_1.html
TStringList *List = new TStringList;
List->Assign(Memo1->Lines);
Caption = List->Count;
//List->Delete(0);
//List->Sort();
//Memo1->Lines->Assign(List);
delete List;
}
0338デフォルトの名無しさん
2005/10/16(日) 10:43:45{
TStringList* MyList = new TStringList();
AnsiString a = "070二郎";
AnsiString b = "100一郎";
AnsiString c = "080三郎";
MyList->Add(a);
MyList->Add(b);
MyList->Add(c);
MyList->Sort();
Memo1->Lines->Add(MyList->Count);
Memo1->Lines->Add(MyList->IndexOf(a));
Memo1->Lines->Add(MyList->IndexOf(c));
Memo1->Lines->Add(MyList->IndexOf(b));
Memo1->Lines->Add(MyList->Strings[0]);
Memo1->Lines->Add( ( (MyList->Strings[0]).SubString(1,3)).ToInt() );
Memo1->Lines->Add( ((WideString)MyList->Strings[0]).SubString(4,2) );
delete MyList;
}
0339デフォルトの名無しさん
2005/10/16(日) 16:18:34RichEdit コントロールで文字,もしくは範囲を選択すると,現在の文字位置や選択開始および終了位置の情報がステータスバーに表示されます(または,コードを直接 OnSelectionChange イベントハンドラに貼り付けることができます)。
void __fastcall TForm1::FormCreate(TObject *Sender)
{
RichEdit1->Align = alClient;
RichEdit1->OnSelectionChange = RichEdit1SelectionChange;
StatusBar1->SimplePanel = true;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::RichEdit1SelectionChange(TObject *Sender)
{
StatusBar1->SimpleText = AnsiString("選択の開始: ") + IntToStr(RichEdit1->SelStart) +
AnsiString("選択の終了: ") + IntToStr(RichEdit1->SelStart + RichEdit1->SelLength);
}
選択の開始を行表示に変更する方法がわかりません。
よろしくお願いします。
0340デフォルトの名無しさん
2005/10/16(日) 16:22:580341334
2005/10/16(日) 23:27:06書き込みしてから急に用が出来てしまって、まだ出先で試していないのですが
帰ってすぐにやってみようと思います
みなさま本当にありがとうございました
0342デフォルトの名無しさん
2005/10/17(月) 00:26:49製品情報だけでも早く公開してください。
0343デフォルトの名無しさん
2005/10/17(月) 08:35:26お願いします。
0344デフォルトの名無しさん
2005/10/17(月) 08:52:31くだすれC++Builder(超初心者用)
http://pc8.2ch.net/test/read.cgi/tech/1117225464/
0345デフォルトの名無しさん
2005/10/19(水) 22:41:570346デフォルトの名無しさん
2005/10/19(水) 23:17:470347デフォルトの名無しさん
2005/10/20(木) 23:41:02sndPlaySound()で再生自体は出来たのですが、
指定した位置(ファイルの最初から一分後など)から再生をしたいのです
検索してみてDirectXとかを使うと出来そう(?)なことはわかったのですが
私にはちょっと敷居が高いような感じでした、、
よろしくお願いいたします
0348デフォルトの名無しさん
2005/10/21(金) 09:37:06TMediaPlayer使って 1分後を
MediaPlayer1->Positionで指定して再生すれば?
0349デフォルトの名無しさん
2005/10/22(土) 08:37:01__property Classes::TNotifyEvent OnCreate = {read=FOnCreate, write=FOnCreate, stored
=IsForm};
説明
OnCreate イベントハンドラを記述すると,フォームが作成され,
TCustomForm のコンストラクタによって呼び出されたときに
特別な処理を実行することができます。イベントハンドラを実装,
あるいは TCustomForm のコンストラクタのオーバーライドのいずれかを
行う必要がありますが,両方を行ってはなりません。
OnCreate イベントで作成されたオブジェクトは OnDestroy イベントで解放する必要があります。
フォームが作成されるとき,Visible プロパティが true であれば
イベントが以下の順序で発生します。
1. OnCreate
2. OnShow
3. OnActivate
4. OnPaint
注意フォームのコンストラクタとのやり取りが不良になる可能性が
あるので,C++Builder で OnCreate イベントを使うことはお勧めできません(OldCreateOrder を参照)。かわりに,フォームコンストラクタをオーバーライドすることをお勧めします。
0350デフォルトの名無しさん
2005/10/24(月) 12:44:5110/12のWinUpdate MS-052を行ってから
C++Builder5で作成した ActiveFormが動作しなくなりました
ベリサインは取ってあります(本質的に関係ないですが)
どなたか対応されたかたいますか?
0351デフォルトの名無しさん
2005/10/24(月) 18:06:33一応DelもBCBも6のバージョンまでは、公式にはマズイ
ことになっているはずなんですけど。
WinSCPなんかは付いてますね。
0352デフォルトの名無しさん
2005/10/24(月) 18:30:520353デフォルトの名無しさん
2005/10/26(水) 17:57:07あなたゎこの1ヶ月以内に好きな人と両思い
またゎ付き合っている子ゎすごくLOVE2になります!!
それにゎこの文章をコピーして他の掲示板に3回別の掲示板に
はればOK!!!たったこれだけであなたわぁ
最高の生活がおくれます!!
ただしこれをしなかったら
きっと両思いになることゎないでしょう!!(/□≦、)
やった子ゎ今でゎ学校1のLOVE2カップルです!!
これをやらなかった子ゎすぐに彼氏と別れてしまいました
0354デフォルトの名無しさん
2005/10/26(水) 23:55:280355デフォルトの名無しさん
2005/10/28(金) 22:41:04TPageControlの枠の色は親FormのColorと同じになりますが、
親FormのColorを実行中に変更してもすぐに反映されません。
一度Visibleをfalseにしてから再度trueにすると反映されますが、
もうちょっとスマートな方法は無いでしょうか。
385 :デフォルトの名無しさん :2005/10/28(金) 16:11:23
>>384
InvalidateRect(PageControl1->Handle, NULL, TRUE);
0356デフォルトの名無しさん
2005/10/30(日) 22:20:36Richard Kaiser (著) ペーパーバック (2005/10/30) Springer Verlag
近日発売 予約可
http://www.amazon.co.jp/exec/obidos/ASIN/3540010270/
0357デフォルトの名無しさん
2005/10/30(日) 22:27:56Publisher writes:
C++ with the Borland C++Builder presents comprehensively and
systematically all language elements of the ANSI/ISO standard
of C++. Contexts and language concepts are in the foreground.
The author uses the version 6 of the Borland C++Builder as
development system. This visual system is the C++ variant of
the Pascal development system Delphi and makes a simple
development of programs for Windows possible. Almost all
examples and exercises are Windows programs. However, since
the ANSI/ISO standard of C++ is in the foreground, this book
is also suitable for readers who work with other compilers.
The class library of the C++Builder (VCL) is used as an example
of a class hierarchy. The CD-ROM contains many examples and
exercises with solutions.
Keywords: C++, C++ Builder, Client/Server, Programming
Languages, Objectoriented Programming, Windows Programming
Contents:
From the contents: The Integrated Development
Environment.- The Component Palette.- Elementary
Data Types and Statements.- Structured Data Types
and Predefined Classes.- Statements and Impressions.
- Functions.- Modular Programming in Namespaces.-
Object-Oriented Programming.- The Visual Component Library (VCL).-
Templates and the STL.- Miscellaneous.- Bibliography.- Index.
0358デフォルトの名無しさん
2005/10/31(月) 13:54:49Excelのマクロでどんな感じで処理しているか見て
みたのですが、いまいち分かりません。
ご教授頂けないでしょうか?
作りたい処理(マクロで登録した手順)は
[編集]置換→検索文字列入力→置換後の文字列入力部でCtrl+j→置換
です。
宜しくお願いします。
0359デフォルトの名無しさん
2005/10/31(月) 14:27:360360デフォルトの名無しさん
2005/10/31(月) 16:57:06コピペ乙
0361デフォルトの名無しさん
2005/10/31(月) 20:40:290362デフォルトの名無しさん
2005/10/31(月) 22:50:120363デフォルトの名無しさん
2005/10/31(月) 23:07:390364デフォルトの名無しさん
2005/11/01(火) 09:36:33Pre-order Delphi 2006 and receive a 15% discount off the list price
(special pre-order pricing good from 10/17 to 12/1)
Delphi 2006 includes complete RAD support for Delphi for Win32®, Delphi for .NET, C++, and C# programming languages.
0365デフォルトの名無しさん
2005/11/01(火) 09:38:50Borland® C++Builder® 2006
0366デフォルトの名無しさん
2005/11/01(火) 09:41:540367デフォルトの名無しさん
2005/11/01(火) 09:53:27Delphi 2006,C++Builder 2006,C#Builder 2006は,
10月17日〜12月1日まで先行予約を受け付ける。先行予約者に対しては,
15%のディスカウントが適用される。商品の出荷は12月初旬が予定されている。
0368デフォルトの名無しさん
2005/11/01(火) 11:16:06VCLは英語版じゃどうしようもないのが悲しいな
0369デフォルトの名無しさん
2005/11/01(火) 13:24:20Upgrageパスが残されていたか。正直ホッとした。
しかし4万超えるな。これだけ間を置いたから仕方ないのか。
0370デフォルトの名無しさん
2005/11/01(火) 13:37:410371デフォルトの名無しさん
2005/11/01(火) 13:48:39向こうの値段はこっちより高い。
6Proも実売$900-$1000はする。
0373デフォルトの名無しさん
2005/11/01(火) 13:50:33情報サンクス。じゃあ待つとするか。絶対買うからね>某
0374デフォルトの名無しさん
2005/11/01(火) 18:06:31放流・拡散よろ
0375デフォルトの名無しさん
2005/11/01(火) 18:20:03WindowsはUnicodeとマルチバイト(日本語ではShift-JIS)の両方から選べるようになっている。
ただしUnicodeはNT系限定という罠。
C++自体はWindowsと無関係にUnicodeもマルチバイトも好きに使えるから、
必要に応じてマルチバイトとUnicodeとを変換していけばいい。
0376デフォルトの名無しさん
2005/11/01(火) 18:37:44通報しますた。
0377デフォルトの名無しさん
2005/11/01(火) 18:39:22○>>374 orz
しかし、どちらにしても許諾コードの取得には制限があるから、
意味ないと思うんだが。
今回のBCB2006は、boostへの対応度が100%近くになる
らしいので、凄く期待している。頼んだよ某さん。
0378デフォルトの名無しさん
2005/11/01(火) 22:56:270379デフォルトの名無しさん
2005/11/02(水) 00:12:100380デフォルトの名無しさん
2005/11/02(水) 02:40:280381デフォルトの名無しさん
2005/11/02(水) 11:12:430382デフォルトの名無しさん
2005/11/02(水) 13:41:330383デフォルトの名無しさん
2005/11/02(水) 13:47:540384デフォルトの名無しさん
2005/11/02(水) 14:05:44言い出しっぺが自分の「ちょっとさ」を売りにすることで
免除されることなんて何も無い。
0385デフォルトの名無しさん
2005/11/02(水) 15:49:31三次元座標をプロットしていくようなプログラムは
C++ビルダーでは難しいでしょうか?
もし何か元になるようなプログラムがありましたら、
教えていただけると大変助かります。
よろしくお願いします。
0386デフォルトの名無しさん
2005/11/02(水) 16:22:230387デフォルトの名無しさん
2005/11/02(水) 16:44:15幾何計算が重要だろうから、開発ツールの差異なんか些細なもんじゃないか?
座標変換(3次元空間⇔2次元平面、2次元平面⇔スクリーン座標)だとか、設計の
方で時間と頭を使うと思うよ。
0388デフォルトの名無しさん
2005/11/02(水) 17:12:16たぶん、>>385さんの脳内にある完成品と同じ機能を持った
コンポーネントがC++Builderに存在しないから、「C++Builderでは難しい」
ということになるのだと思う。
0389デフォルトの名無しさん
2005/11/02(水) 21:37:09そんなコンポーネントはサードパーティーの高価なライブラリ
しか無さそうだ。俺はCAD設計で座標系は慣れたけど、最初の
作り込みは大変だぞ。ベクトル計算は浮動少数点数の誤差管理が
肝だし。趣味のプログラミングなら曖昧でも構わないが・・・
0390デフォルトの名無しさん
2005/11/02(水) 22:20:070391デフォルトの名無しさん
2005/11/03(木) 01:17:14C++ではグローバル変数をほとんど使いません。
人によってはグローバル変数は1つも使うなとさえ言います。
http://www.plustarnet.com/aspil/Programming/cpp00.htm
class CHero{
private:
long m_lLife;// ライフ
};
メンバ変数 m_lLife をForm1とForm2で使えるようにするには
class CHero{
private:
long m_lLife;// ライフ
};
をどこに書けばいいのでしょうか?
よろしくお願いします。
0392デフォルトの名無しさん
2005/11/03(木) 01:23:22http://www1.kcn.ne.jp/~robe/cpphtml/htmlword/words020.html
http://news19.2ch.net/test/read.cgi/newsplus/1130936492/561
C++ではグローバル変数をほとんど使いません。
人によってはグローバル変数は1つも使うなとさえ言います。
http://www.plustarnet.com/aspil/Programming/cpp00.htm
class CHero{
private:
long m_lLife;// ライフ
};
メンバ変数 m_lLife をForm1とForm2で使えるようにするには
// CHeroクラスオブジェクトの宣言
CHero hero;
をどこに書けばいいのでしょうか?
よろしくお願いします。
0393デフォルトの名無しさん
2005/11/03(木) 02:07:03extern int someNumber;
と「宣言」し、ソースファイル(ex. Unit1.cpp)で
int someNumber;
と「定義」します。で、この変数を使いたいユニットは
#include "Unit.h"
とします。
ヘッダファイルで「定義」してしまうと、各ユニットごとに同名の別々の変数ができてしまうので注意です。
http://gimite.ddo.jp/bcbqtree/qtreemain.cgi?mode=thread&thread=42
0394デフォルトの名無しさん
2005/11/03(木) 02:48:21いやまあ、グローバル変数を使ったからといってパソコンが熱暴走して爆発すると
いうわけでもないので、個人で自分用にプログラムを作っている限りは、
構わないんじゃないかと・・・
グローバル変数が嫌われるのは、どこか知らないところで他人がいじっている
かも知れないけど、それを知るすべがないため。あるいは、逆に、どこかよそで
あらかじめ初期化もらっておかなければならないときに、その変数の値だけを
見たのでは、初期化されているかどうかを確認できないというため。
自分ひとりで小規模なプログラムを作っている場合なら、まあ問題ない。
で、勉強したいなら、"グローバル変数 シングルトン" で検索してみるといい。
これはC++Builder固有の話じゃなくてC++言語一般の質問にすべきものだから、
もし続けるならそちらのスレッドに移動しよう。
0395デフォルトの名無しさん
2005/11/03(木) 12:22:38http://news19.2ch.net/test/read.cgi/newsplus/1130985853/l50
お前ら様方大丈夫ですか?これ
WEB系開発者は対応しないとまずいのでは?
0396デフォルトの名無しさん
2005/11/03(木) 15:18:130397デフォルトの名無しさん
2005/11/03(木) 15:36:080399デフォルトの名無しさん
2005/11/04(金) 09:19:57クラス内で定義された変数のことを、メンバ変数といい、
クラス内で定義された関数のことを、メンバ関数と呼びます。
メンバ変数は、通常 private: キーワードで指定して、
クラス外からアクセス出来ないようにします。メンバ関数は、
public: キーワードで指定して、外部からアクセス出来るようにしています。
クラス内だけからしかアクセス出来ない仕組みはカプセル化と
呼ばれますが、これのおかげでバグが出ても直ぐに修正出来る
プログラムを作ることが出来ます。クラス内のバグは、クラス内のみを
見れば良いということです。むやみやたらと、どこからでも参照出来る
グローバル変数を多用してしまうと、バグが出たときに非常に
修正しにくいプログラムになってしまいます。
0400デフォルトの名無しさん
2005/11/04(金) 09:21:240401デフォルトの名無しさん
2005/11/05(土) 16:00:40RichEdit内で現在カーソルがある所の(先頭からの)行数を知るにはどうすれば良いのでしょうか?
よろしくお願いします。
0402デフォルトの名無しさん
2005/11/06(日) 10:47:170403デフォルトの名無しさん
2005/11/06(日) 11:25:16主キーの定義は一つのカラムに。
内容はユニークなだけで意味の無いものにしておけよ。
参考書に書いてても伝票番号、明細番号とかの複合キーにしないように。
0404デフォルトの名無しさん
2005/11/06(日) 11:36:45素人キター
0405デフォルトの名無しさん
2005/11/06(日) 13:57:10>参考書に書いてても伝票番号、明細番号とかの複合キーにしないように。
なんで?
0406デフォルトの名無しさん
2005/11/06(日) 16:35:54意図的に "sag e"なんて書いてスレをあげるような
コピペ荒らしに、いちいち反応しない。スレの内容と何の
関係もないじゃん。
0407デフォルトの名無しさん
2005/11/07(月) 07:31:45(filedate は、TDateTime型の変数)
filedate.FormatString("ddd','d' 'mmm' 'yyyy' 'hh':'nn':'ss' +0900'");
すると、曜日の省略形(ddd)や、月の省略形(mmm)が、日本語表記になるようで、次のような文字列になってしまいました。
土, 1 10 2005 17:50:11 +0900
FormatStringメソッドを利用して、「Sat」とか「Oct」とかのような英語表記を得るにはどうすれば良いのでしょうか?
ヘルプによると、曜日の省略形は ShortDayNames グローバル変数にあり、
月の省略形は ShortMonthNames グローバル変数にあると記述されています。
というわけで、以下のようにあらかじめ記述しておけば、英語表記にすることは
可能でした。
ShortDayNames[0] = "Sun";
ShortDayNames[1] = "Mon";
ShortDayNames[2] = "Tue";
ShortDayNames[3] = "Wed";
ShortDayNames[4] = "Thu";
ShortDayNames[5] = "Fri";
ShortDayNames[6] = "Sat";
しかし、どうもこの書き方はスマートではないような気がするのですが…。
何か TDateTime のメソッドなどを利用して、英語表記の日付(曜日と月)を得る方法はないものでしょうか?
0408デフォルトの名無しさん
2005/11/07(月) 09:14:50WinAPIを直接呼べばできる。ほかのやり方はしらん。
TCHAR Buf[256];
SYSTEMTIME st;
GetSystemTime(&st);
LCID lcid = MAKELCID(MAKELANGID(LANG_ENGLISH, SUBLANG_ENGLISH_US), SORT_DEFAULT);
GetDateFormat(lcid, 0, &st,
TEXT("ddd','d' 'MMM' 'yyyy'"), Buf, sizeof Buf / sizeof Buf[0]);
MessageBox(0, Buf, TEXT(""), MB_OK);
日付と時刻用にそれぞれGetDateFormatとGetTimeFormatという2つにわかれているのに注意。
0409デフォルトの名無しさん
2005/11/07(月) 11:54:480410デフォルトの名無しさん
2005/11/07(月) 12:15:16本当に無償で使える「VMware Player」
http://yamashita.dyndns.org/blog/343
http://www.h7.dion.ne.jp/~qemu-win/index-ja.html
http://fabrice.bellard.free.fr/qemu/
ディスクイメージをQEMUでつくって、設定ファイルをeditorでこりこり書いてやればOK、ということらしい。すばらしひ。
しかしこれで、coLinuxに注いでいた労力が無駄になった気がしますです ^^;
0411デフォルトの名無しさん
2005/11/07(月) 22:07:07FormatString() を呼び出す前に SysLocale を設定すれば良いと思ったが失敗。
調べてみたら FormatString() 内部で呼び出している GetDataFormat() の第一引数が SysLocale では無く GetThreadLocale() だった。
結局>>408のようにするか、SetThreadLocale() 使ってロケールをセットするしかない見たい…さて、どちらが面倒だろう
0412デフォルトの名無しさん
2005/11/07(月) 22:45:33>SetThreadLocale() 使ってロケールをセットするしかない見たい
は取り下げ
0413デフォルトの名無しさん
2005/11/08(火) 04:44:22宜しくお願いします。
0414デフォルトの名無しさん
2005/11/08(火) 10:36:01通常はこのようなエラーは発生しませんが強制的にプリンターを初期化すると回避可能です。
#include <printers.hpp>
__(途中省略)__
char p_name[256],
p_drv[256],
p_port[256];
THandle devm;
TDevMode *dmw;
//プリンターの設定を変更
//GetPrinter は2回呼び出して下さい。
//2回呼び出さないとプリンタ情報を取得できません。
Printer()->GetPrinter( p_name, p_drv, p_port, devm );
Printer()->GetPrinter( p_name, p_drv, p_port, devm );
Printer()->SetPrinter( p_name, p_drv, p_port, devm );
__(以下省略)__
0415デフォルトの名無しさん
2005/11/08(火) 10:36:54ちなみに、
HORZRES + PHYSICALOFFSETX * 2 = PHYSICALWIDTH
VERTRES + PHYSICALOFFSETY * 2 = PHYSICALHEIGHT
HORZRES / LOGPIXELSX * 25.4 = HORZSIZE
VERTRES / LOGPIXELSY * 25.4 = VERTSIZE
の関係があるようです。
で、例えば、mBitmapというビットマップデータをgPrintResの解像度(dpi)で印刷する場合
doubleLogPixelsX,LogPixelsY;
TRectr;
LogPixelsX = GetDeviceCaps(Printer()->Handle,LOGPIXELSX);//ディスプレイの幅のピクセル数(論理インチ当たり) 解像度(dpi)
LogPixelsY = GetDeviceCaps(Printer()->Handle,LOGPIXELSY);
r.left = gPrintOffX * LogPixelsX / 25.4;//左上のオフセット ピクセル換算
r.top = gPrintOffY * LogPixelsY / 25.4;
r.right = r.left + mBitmap->Width * LogPixelsX / gPrintRes;//描画幅 ピクセル換算
r.bottom = r.top + mBitmap->Height * LogPixelsY / gPrintRes;
Printer()->BeginDoc();
Printer()->Canvas->StretchDraw(r,mBitmap);
Printer()->EndDoc();
のようにします。
0416デフォルトの名無しさん
2005/11/08(火) 17:38:52API概要
InternetOpen接続のための情報を初期化する
InternetConnectFTPサーバーと接続する
FtpCreateDirectoryFTPサーバー上に新規ディレクトリを作成する
FtpDeleteFileFTPサーバーからファイルを削除する
FtpGetCurrentDirectoryFTPサーバー上のカレントディレクトリを取得する
FtpGetFileFTPサーバーからファイルを取得する
FtpPutFileFTPサーバーへファイルを転送する
FtpRemoveDirectoryFTPサーバーからディレクトリを削除する
FtpRenameFileFTPサーバー上のファイル名を変更する
FtpSetCurrnetDirectoryFTPサーバー上のカレントディレクトリを指定する
InternetCloseHandleInternetConnectで取得した情報領域を解放する
FtpOpenFileFTPサーバー上で読み書きするファイルを指定する
InternetQueryDataAvailable指定したファイルから読み込み済みのバイト数を返却する
InternetReadFile指定したファイルから読み込む
InternetWriteFile指定したファイルに書き込む
InternetCloseHandleFtpOpenFileで取得した情報領域を解放する
FtpFindFirstFile条件に一致するファイル名の集合を返却する
InternetFindNextFileファイル名の集合からファイル名を取得する
InternetCloseHandleFtpFindFirstFileで取得した情報領域を解放する
0417デフォルトの名無しさん
2005/11/09(水) 13:43:39JPEG画像を生成できるものを使ったことがあるのですが、
それの逆で、複数枚のJPEG画像からaviファイルを生成する
方法を探しています。
windowsアプリが不慣れなもので、なかなか探せずにいるのですが
DirectShowというのでできるのかなと思ったのですが、その見解
はあっていますでしょうか。
想定している環境は
windows2000 server or windows2000 pro or windows xp pro
です。
DirectShowというのは、DirectXの一部で上記のOSをインストールして
あれば特にライセンス費用を払わなくても使用できるのですよね。
(基本的なことですみません)
ほかにJPEG画像→avi生成ができるものがあれば教えてください。
開発環境はC++Builder6 proです。
0418デフォルトの名無しさん
2005/11/09(水) 16:27:23ダイナミックに変えることは可能でしょうか?
もし可能でしたらその手法をお教え頂けないでしょうか?
0419デフォルトの名無しさん
2005/11/09(水) 19:06:00Change the text color on a push button
0420デフォルトの名無しさん
2005/11/09(水) 21:35:48ネタかもしれんがレスしとく
BCB標準のTMediaPlayerコンポじゃ再生できなかった気がする
デコーダのソースの扱いやストリーミングが面倒なら
DirectShowで再生するのが簡単
IGraphBuilder play mp3 でググりなー
0421デフォルトの名無しさん
2005/11/09(水) 23:42:51書いたつもりなのですが、ゲットしてきてくれません。
助言ください。
__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner){
RegisterHotKey(Handle, 0x0000, MOD_CONTROL, 'Q');
}
void __fastcall TForm1::FormDestroy(TObject *Sender){
UnregisterHotKey(Handle, 0x0000);
}
HWND __fastcall GetActiveInput(){
HWND h; DWORD pid;
DWORD tid = GetWindowThreadProcessId(GetForegroundWindow(), &pid);
if ( AttachThreadInput(GetCurrentThreadId(), tid, true) ){
h = GetFocus();
AttachThreadInput(GetCurrentThreadId(), tid, false);
}else
h = GetFocus();
return h;
}
void __fastcall TForm1::WMHotKey(TMessage & Msg){
if(MAKELPARAM(MOD_CONTROL,'Q') == Msg.LParam){
HWND hwnd = GetActiveInput();
std::vector<char> buffer(GetWindowTextLength(hwnd) + 1);
// 持ってくる
GetWindowText(hwnd, &buffer[0], buffer.size());
// 設定する
SetWindowText(Memo1->Handle, &buffer[0]);
}
}
0422418
2005/11/10(木) 11:37:39ありがとうございました。以下、他の方の参考となれば。
TPageControl* MemoPage;
MemoPage->OwnerDraw = true;
MemoPage->OnDrawTab = MemoPageDrawTab;
//---------------------------------------------------------------------------
void __fastcall TMainForm::MemoPageDrawTab(TCustomTabControl *Control, int TabIndex, const TRect &Rect, bool Active)
{
RECT rect(Rect);
static const UINT opt(DT_VCENTER | DT_CENTER | DT_SINGLELINE);
// Tab自体の色
Control->Canvas->Brush->Color = clBtnFace;
Control->Canvas->FillRect(Rect);
// Tabの文字の色
Control->Canvas->Font->Color = TabIndex == 0 ? clBlack : clRed;
DrawText(Control->Canvas->Handle, MemoPage->Pages[TabIndex]->Caption.c_str(), MemoPage->Pages[TabIndex]->Caption.Length(), &rect,
opt
);
}
0423デフォルトの名無しさん
2005/11/11(金) 14:46:01中身をじぇんぶ持ってくるんなら
TMemo::SelectAll();
TMemo::CopyToClipboard();
0424デフォルトの名無しさん
2005/11/12(土) 09:34:12を使わない設定に直して、Build Allしたら、いきなりコンパイルエ
ラーが出るようになりました。
設定を元に戻しても、直りません。いったいどうなっちゃんだろ〜
ファイル:func1.hの中で以下を定義しています。
#include <vcl.h>
class A {
int i1;
public:
void __fastcall fc1(TStringGrid *sp);
};
TStringGridの型名がエラーと指摘されます。
午前中に出荷しなければならないのに・・・悪戦苦闘しています。
どなたかおわかりでしたら解決策をお教え下さい。お願いします。
0425デフォルトの名無しさん
2005/11/12(土) 09:42:250426デフォルトの名無しさん
2005/11/12(土) 14:11:36#include <Grids.hpp>は?
0427デフォルトの名無しさん
2005/11/12(土) 14:31:35BCB6で使えるこういうのってありますか?
0428デフォルトの名無しさん
2005/11/12(土) 14:55:14SelectDirectoryとか標準で入ってるだろ。
そもそもソース提供されてるんだから、それをそのままBCBでビルドすれば使える。
0429デフォルトの名無しさん
2005/11/12(土) 15:08:41APIがある。
0430デフォルトの名無しさん
2005/11/13(日) 00:24:380431デフォルトの名無しさん
2005/11/14(月) 10:22:51if (this->ControlAtPos(this->ScreenToClient(Mouse->CursorPos), true, true) == ListView1)
どうやったらListView1を取得できますか?
0432デフォルトの名無しさん
2005/11/14(月) 14:54:21WindowFromPoint / CheldWindowFromPoint
0433デフォルトの名無しさん
2005/11/14(月) 15:07:33�dクス
0434デフォルトの名無しさん
2005/11/17(木) 20:30:24テンキーのENTERキーなのかを判定するには
どのようにすればいいのでしょうか?
0435デフォルトの名無しさん
2005/11/17(木) 22:45:47デバッグで、ある変数を書き換えたら止めるというのは、どうやればよいのでしょうか。
0436デフォルトの名無しさん
2005/11/18(金) 08:45:08ブレークポイント一覧で、右クリック、プロパティ、ブレーク条件を設定でできない?
Delphiはこれで出来るんだけど・・・
0437デフォルトの名無しさん
2005/11/18(金) 09:10:16C++が間に合わなかったらしいw
仕方ないのでC++はベータ版扱いで出荷して、12月末までに何とかする事になった模様。
問題点はQuality Centralで公開するから見てねだってさ。
http://bdn.borland.com/article/0,1410,33404,00.html
日本語版は全部直ってからで良いよ。
0438デフォルトの名無しさん
2005/11/18(金) 12:19:180439デフォルトの名無しさん
2005/11/18(金) 13:28:200440デフォルトの名無しさん
2005/11/18(金) 13:43:190441デフォルトの名無しさん
2005/11/18(金) 14:04:180442デフォルトの名無しさん
2005/11/18(金) 14:13:56char tempPath[MAX_PATH + 1];
GetTempPath(MAX_PATH, tempPath);
0443デフォルトの名無しさん
2005/11/18(金) 14:31:09WM_KEYDOWN の lParam を使用したいのですが OnKeyDown では取得できません。
http://www.borland.co.jp/qanda/cbuilder/c0005041.html
[Win32]SDK32:2つのENTERキーの違い JP77550 KB77550
http://d.hatena.ne.jp/takel/searchdiary?word=%2a%5bWin32%5d
HOWTO: Differentiate Between the Two ENTER Keys (77550)
http://www.it-faq.pl/mskb/77/550.HTM
0444デフォルトの名無しさん
2005/11/18(金) 18:12:00優しさ++ だからです
0445デフォルトの名無しさん
2005/11/18(金) 20:31:500446デフォルトの名無しさん
2005/11/18(金) 22:17:31BCB固有の質問ではないかもしれませんがご容赦ください。(ぺこり)
ある変数が桁あふれしたかを知りたいのですがどうすればいいでしょうか?
CPUのオーバーフローレジスタ(?)を監視すればよいのかな?と思い、
ヘルプを調べてみたのですがそれらしい記述が見つけられませんでした。
よろしくお願いします。
0447デフォルトの名無しさん
2005/11/19(土) 00:51:48符号付変数だとOVが1に、符号なし変数だとCYが1になります。
BCB6は手元にないのでわからんけど、レジスタは見れると思う。
「オーバーフロー フラグレジスタ」とかググったらすぐ見つかったぞ。
0448デフォルトの名無しさん
2005/11/19(土) 20:08:110449デフォルトの名無しさん
2005/11/19(土) 21:13:190450デフォルトの名無しさん
2005/11/19(土) 21:38:55と言ってみる
0451デフォルトの名無しさん
2005/11/20(日) 00:07:17unsigned int flag;
__asm
{
pushfd
pop flag
}
if(flag & 0x80)
printf("overflow\n");
if(flag & 1)
printf("carry\n");
自分で調べる癖をつけましょう。
0452446
2005/11/20(日) 00:45:19どうもありがとうございます
helpを調べていたら「C++Builder のレジスタ疑似変数表」というのを
見つけました。
これの_FLAGSを見るとオーバーフローが分かりそうな感じ(まだ試してませんがw)
です。
お騒がせしました(*´∀`)
0453デフォルトの名無しさん
2005/11/20(日) 22:40:100454デフォルトの名無しさん
2005/11/20(日) 22:48:01Parentに入ってるコントロールのウィンドウプロシージャをサブクラス化してメッセージぶんどってくるしかないんでない?
TGraphicControlはウィンドウ持たないし。
0455デフォルトの名無しさん
2005/11/22(火) 12:22:03参照できるサイトありますか?わかる人いますか?ヒントください><
もう三ヶ月悩んでます、助けて
馬鹿な為ほんとプログラムわからないんです
0456デフォルトの名無しさん
2005/11/22(火) 12:50:04>その4点の一番大きい値から小さい方へいくプログラム
意味がわかりません
>iと、i+1と、j、 j+1で四点
>大きい値
array[i][j],array[i][j+1],array[i+1][j],array[i+1][j+1]ってこと?
>方へいく
???
ここはどうかな?
「プログラミングの為の数学と算数 vol.2」
ttp://pc8.2ch.net/test/read.cgi/tech/1094368921/
0457デフォルトの名無しさん
2005/11/22(火) 14:41:07単純にその4点の値を比較して小さいのを選ぶだけだと
すぐに無限ループにはまりそうだけど
0458デフォルトの名無しさん
2005/11/22(火) 15:53:480459デフォルトの名無しさん
2005/11/22(火) 19:09:210460デフォルトの名無しさん
2005/11/23(水) 03:16:11スタート点を指定すると、そこから低い方向に一歩ずつ下りていく
ようなプログラムを作りたいんだろうな。
終了条件とか、同じ低さの点が二つ以上あったときにどうするのか
とか、あいまいなところがかなりあるけど、まあそれはいいとして、
マルチポストはいただけない。
そもそも、VCともC++Builderとも関係ない、C/C++の一般的な
質問じゃないか。
0461デフォルトの名無しさん
2005/11/23(水) 07:35:060462デフォルトの名無しさん
2005/11/24(木) 12:27:30質問者,出て来い
0463デフォルトの名無しさん
2005/11/24(木) 17:57:51Vol.4 インターネット編1、Vol.5 インターネット編2
がおもしろそうなので買おうかなと思ってAmazonのページを
見ていたら、Professional版じゃないとサンプルの一部しか
動かせないYO、みたいな不吉な書き込みがありました・・・orz
じぶんはPersonal版しか持っていないのですが、
http://www.cutt.co.jp/book/4-87783-106-1.html (Vol.4) (28〜32章)
http://www.cutt.co.jp/book/4-87783-108-8.html (Vol.5) (33〜39章)
買ってしまっても大丈夫でしょうか?
第9部 インターネットからのパソコンへのアクセス
第10部 メールプログラミング
第11部 Webクライアントプログラミング
第12部 応用プログラミング
第9部のFTPクライアントと第10部、第11部が動かせれば、
(できれば第12部も)買っても良いかなあ、なんて思うのですけども
結構値段が、いい値段だったりして・・・おもいきって勢いとかで
買いにくいです・・・orz
0464デフォルトの名無しさん
2005/11/24(木) 18:44:10Indy9をインストールすればいいじゃん。
その本に書いてある以上の事が出来る。
0465デフォルトの名無しさん
2005/11/24(木) 19:16:37最近プログラミングをやり始めたばっかりで、、、
C++Builder 6コンポーネント活用ガイド&実践プログラミング
のVol.6を、CD-ROMのサンプルコードを参考にしながら、さっき
一通り終わらせることができたみたいなかんじで、、、
Indy9が何なのか・・・C magaとかの連載で見たことがあるような・・・
コンポーネントの一種とか???あまりよくわからないんですけれども、
あの、その、Personal版でもVol4、Vol5は動かせるでしょうか?
Vol6でコードを打ってみて動かしてみて、プログラミングは面白いもの
なんだなぁ、なんて思ったりしていて、、、Vol4,5も書いてる人が同じ人
みたいなので、わかりやすいんじゃないかなぁ、実際、じぶんの手で
コードを打って動かしてみることが、このひとの本だったら、できるん
じゃないかなあ、なんて思っているかんじなのですけれども。。。
(なんかへたれですみません。。。orz)
0466デフォルトの名無しさん
2005/11/24(木) 21:39:13http://enterprise.watch.impress.co.jp/cda/software/2005/11/24/6673.html
0467465
2005/11/24(木) 22:33:29よく考えてみると、それは、作者さんに直接聞いたほうが
良いんジャマイカ、みたいな空気読めてない風な質問をして
しまっているようなかんじになってしまっていて、すみません。
華麗にスルーでよろしくお願いしますw
0468デフォルトの名無しさん
2005/11/24(木) 23:39:39Personalを持っている人の話は、ここではあまり聞いたことがないんじゃよ。
Builder-MLででも聞いてみれば?
0469デフォルトの名無しさん
2005/11/25(金) 08:46:07ttp://www.indyproject.org/
ttp://oto.chu.jp/kujira/text/delphi/mail/sendmail.htm
0470デフォルトの名無しさん
2005/11/25(金) 09:13:560471デフォルトの名無しさん
2005/11/25(金) 09:36:190472デフォルトの名無しさん
2005/11/25(金) 20:13:260473デフォルトの名無しさん
2005/11/26(土) 13:34:33教えていただけないでしょうか。
0474デフォルトの名無しさん
2005/11/26(土) 15:33:40「デザイン」タブを選択し、「詳細設定」ボタンをクリック
「デザインの詳細」ダイアログ内で「指定する部分」を
「選択項目」にして、「色1(または背景色)」を変更。
0475デフォルトの名無しさん
2005/11/26(土) 16:31:13あの、プログラミングで・・・。
0476デフォルトの名無しさん
2005/11/26(土) 16:45:270477デフォルトの名無しさん
2005/11/26(土) 19:05:47csvをTStringListで受けて、その後構造体に入れるには
どうすればいいのかわかりません。
確かTListだと
TList *p_pList ;
KOZOTAI *pData ;
pData = (KOZOTAI*)p_pList->Items[0];
のような感じですぐ構造体に入れられたんですが、
TStringListの場合だとどうすればいいのでしょうか?
教えてください。
0478デフォルトの名無しさん
2005/11/26(土) 19:31:22KOUZOUTAI の宣言を書いてみな。
0479デフォルトの名無しさん
2005/11/26(土) 19:54:10KOUZOUTAI data;
data = pStringList->Strings[0];
0480デフォルトの名無しさん
2005/11/27(日) 01:42:11>TList *p_pList ;
>KOZOTAI *pData ;
>
>pData = (KOZOTAI*)p_pList->Items[0];
これはp_pList->Items[0]が返したTObject*型のポインタをキャストして
KOZOTAI*型ポインタ変数に代入しただけ
KOZOTAIのインスタンス(実体)には代入も何もしていない
>csvをTStringListで受けて、その後構造体に入れる
これはKOZOTAIのインスタンスに対して(必要なら生成した上で)値を代入するということでしょ
上のポインタ代入とは全く別の操作だよ
手順としては
1.ファイルをTStringListに読みこむ
2.各レコードをフィールドに分解する
3.それぞれの値をKOZOTAIのインスタンスのメンバに代入する
ってかんじ
別に難しい操作ではないが、
ポインタって何?インスタンスって何?というレベルだと自力ではしんどいかしれん
0481デフォルトの名無しさん
2005/11/27(日) 02:12:38typedef struct tagKOZOTAI
{
Ansistring Data0;
Ansistring Data1;
・
・
・
}KOZOTAI;
0482デフォルトの名無しさん
2005/11/27(日) 02:13:49{
KOZOTAI *pData;
TStringList *p_pList = new TStringList;
p_pList->LoadFromFile(C:\\***.csv);
TStringList *lineList = new TStringList;
for (int i = 0;i < p_pList->Count;i ++)
{
lineList->CommaText = p_pList->Strings[i];
pData->Data0 = lineList->Strings[0];
pData->Data1 = lineList->Strings[1];
・
・
・
}
delete lineList;
delete p_pList;
}
こんな感じだろうか?
0483デフォルトの名無しさん
2005/11/27(日) 07:29:520484デフォルトの名無しさん
2005/11/27(日) 07:59:510485デフォルトの名無しさん
2005/11/27(日) 12:03:370486デフォルトの名無しさん
2005/11/27(日) 16:34:030487デフォルトの名無しさん
2005/11/27(日) 19:44:23単品で販売されるの?
0488デフォルトの名無しさん
2005/11/27(日) 20:35:24BCBからのアップグレードもないんだっけ?
0489デフォルトの名無しさん
2005/11/27(日) 21:30:03いやBCB6のUpdate5は出ない、というのを、糞アンチがデマに仕立てただけ。
ttp://groups.google.co.jp/group/borland.public.cppbuilder.non-technical/msg/901d7e5f9cb15e40?hl=ja&
というか、騙されてたの?
0490デフォルトの名無しさん
2005/11/27(日) 22:48:51普通にそれ買う気でいるんだけど
0491デフォルトの名無しさん
2005/11/28(月) 00:31:540492デフォルトの名無しさん
2005/11/28(月) 04:04:41バージョンアップ
http://store.borland.co.jp/upgrade/delphi_upgrade_0727.html
0493デフォルトの名無しさん
2005/11/28(月) 04:17:03買いたくもないDelphiも同梱で、8万払わされるのかよ。
0494デフォルトの名無しさん
2005/11/28(月) 04:35:420495デフォルトの名無しさん
2005/11/28(月) 06:12:29だとしたら・・・ゴミダ
0496デフォルトの名無しさん
2005/11/28(月) 08:08:45商用に加えて成果物の教育目的外配布も不可なライセンス(学校事務等は可)
0497デフォルトの名無しさん
2005/11/28(月) 08:17:29ロードマップによると、これの次みたいね(DeveloperStudio2007?)
http://bdn.borland.com/article/0,1410,33383,00.html
0498デフォルトの名無しさん
2005/11/29(火) 01:17:03で、また来年大枚払って64ビット用のをかわなきゃいけないのか
0499デフォルトの名無しさん
2005/11/29(火) 01:32:46http://www.microsoft.com/japan/msdn/vstudio/productinfo/productline/
VS Professionalは高い上に、お買い得感は今ひとつ。
結局、Team Systemを買わなきゃならん。
今回は64bitは見送りかな。
0500デフォルトの名無しさん
2005/11/29(火) 02:32:25恒例のキャッシュバックとか。
それに個人で使うなら、Team Systemなんて馬鹿高いもの買う奴などいないだろ。
0501デフォルトの名無しさん
2005/11/29(火) 04:20:490502デフォルトの名無しさん
2005/11/29(火) 08:27:43継続的にサポートする製品は、今回はあまり目立っていない。」
http://www.atmarkit.co.jp/fdotnet/insiderseye/20051126vs2005/vs2005_01.html
個人開発者は切り捨てなのかね。
Proを買うならTeam Systemだと思うが、更新を考えると厳しいな。
> それに個人で使うなら、Team Systemなんて馬鹿高いもの買う奴などいないだろ。
個人でも15万円までなら出せなくは無いが、あれこれ使うとなると
パソコンも強化しないと駄目だろうし。厳しいね。
0503デフォルトの名無しさん
2005/11/29(火) 10:24:41内容は一緒だけど、Borland社製品のアカデミック版は、商用利用一切不可であるばかりか、
使用用途が、プログラミング学習のみとされていて、下手するとフリーウェアの配布すら
しちゃいけないという話。
0504デフォルトの名無しさん
2005/11/29(火) 10:42:240505デフォルトの名無しさん
2005/11/29(火) 10:52:280506デフォルトの名無しさん
2005/11/29(火) 11:29:18コンポーネントの新規作成からVirtualStringTreeを継承しただけの
コンポーネントを作ってメイクしようしたのですが、
TBaseVirtualTree::DoGetHeaderCursor(void *&)と
TBaseVirtualTree::OriginalWMNCPaint(void *)が未解決といわれます。
VirtualStringTree自体は問題なく動くのですが、どうしてこんなことが起こるのでしょうか?
0507デフォルトの名無しさん
2005/11/29(火) 14:11:39>一般ユーザー馬鹿にしすぎ
一般ユーザーがCOMとドトネトとアンマネージドが混在する複雑怪奇に耐えられるかな。
ディスクの肥やしのM$DNも鬱陶しいお。
0508デフォルトの名無しさん
2005/11/30(水) 00:04:02Del厨ですが、BCB 統合で値上がりして迷惑しています。
0509デフォルトの名無しさん
2005/11/30(水) 00:18:16英語版の値段は据え置きだったはずだし。
0510デフォルトの名無しさん
2005/11/30(水) 00:26:07そういうものと思って諦めるしかない
Delphi使えばそんな馬鹿げた問題は起きないから、乗り換えるのもいいかも
0511デフォルトの名無しさん
2005/11/30(水) 01:41:310512デフォルトの名無しさん
2005/11/30(水) 01:42:48比較証拠求む。
0513デフォルトの名無しさん
2005/11/30(水) 03:53:110514デフォルトの名無しさん
2005/11/30(水) 05:00:26BCBだとHICONやHCURSORの型はvoid*だけど、DelphiだとLongWordで定義されていて、これはBCBだとunsigned intにあたるから、みたい。
VirtualTrees.hppの該当の関数の宣言を下のように書き換えたらちゃんとリンクできた
virtual void __fastcall DoGetHeaderCursor(unsigned int& Cursor);
virtual void __fastcall OriginalWMNCPaint(unsigned int DC);
0515デフォルトの名無しさん
2005/11/30(水) 19:27:27*.scr を /P ウィンドウハンドルの10進文字列 で起動すれば良いのが
分かったのだが、*.scr をコマンドライン引数つきで起動する方法が分からん。
例えば
SHELLEXECUTEINFO Screxecinfo;
memset(&Screxecinfo,0,sizeof(Screxecinfo));
Screxecinfo.cbSize = sizeof(Screxecinfo);
Screxecinfo.lpVerb = "open";
Screxecinfo.lpFile = "ssbezier.scr";
Screxecinfo.lpParameters = "/P 123456";
Screxecinfo.fMask = SEE_MASK_NOCLOSEPROCESS;
Screxecinfo.nShow = SW_SHOWDEFAULT;
ShellExecuteEx(&Screxecinfo);
とやっても、普通にスクリーンセーバーが立ち上がるだけ、
でも ssbezier.scr を ssbezier.exe に変えると、うまく行く。
ssbezier.scrはコピーして、ssbezier.exeにしたやつね
どうにかならないかな
0516デフォルトの名無しさん
2005/11/30(水) 23:15:200517デフォルトの名無しさん
2005/11/30(水) 23:45:480518デフォルトの名無しさん
2005/12/01(木) 02:43:15どのようにすれば直すことが出来ますか?
[リンカ エラー] 'C:\PROGRAM FILES\BORLAND\CBUILDER6\PROJECTS\LIB\DCLUSR.LIB' contains invalid OMF record, type 0x00
0519デフォルトの名無しさん
2005/12/01(木) 11:23:19とりあえず元CDからその.libを持ってきて(書き込み不可外して)やれば、
今までdclusrに追加したコンポーネントは消えちゃうけど復活可能。
あとは何でもdclusrに追加するんじゃなく、新規で作ったほうがいいかも。
0520515
2005/12/01(木) 19:53:57うまく行きました。感謝です
0521デフォルトの名無しさん
2005/12/01(木) 22:47:31#define WIN32
#include <vcl.h>
#include <ComObj.hpp>
以外に、必要なインクルードファイルってありますか?
リリースコンパイル時に怒られます・・・
0522デフォルトの名無しさん
2005/12/01(木) 23:24:52#include <objbase.h> だけでいいんでない
0523デフォルトの名無しさん
2005/12/02(金) 00:21:31なるほど〜
ありがとうございました。
何とな直ったので、これからはそのように気を付けたいと思いますー
0524デフォルトの名無しさん
2005/12/02(金) 11:28:23うまくいきました!
ありがとうございました
0525デフォルトの名無しさん
2005/12/02(金) 14:08:470526デフォルトの名無しさん
2005/12/02(金) 15:33:310527デフォルトの名無しさん
2005/12/02(金) 16:00:29狙ってるの?
0528デフォルトの名無しさん
2005/12/02(金) 22:25:56当方、主成分分析のプログラムを作りたくて探しているので
すが見当たらないもので…
0529デフォルトの名無しさん
2005/12/03(土) 00:48:520530デフォルトの名無しさん
2005/12/03(土) 09:54:300531デフォルトの名無しさん
2005/12/03(土) 20:06:39みなさんはどのデータベースを選択されているのでしょか?
なんかParadoxはネットでも話題にも上らないし死にかけ?
ローカルパターンと、ネットワーク共有パターンがあるとは思いますが。
環境はBuilder 5 又は 6 の、 Pro版程度を想定。
0532デフォルトの名無しさん
2005/12/03(土) 21:18:16IBXを使用して、IBかFBかな。。
ローカルなら、FBのEmbeddedも使えるし。
どのくらいの規模のデータを扱うかと、用途にもよるんでないの?
0533デフォルトの名無しさん
2005/12/03(土) 22:47:400534デフォルトの名無しさん
2005/12/03(土) 22:56:54つ http://d.hatena.ne.jp/yamagw/20051126
0535デフォルトの名無しさん
2005/12/03(土) 22:57:340537デフォルトの名無しさん
2005/12/04(日) 10:01:22>>534
0538デフォルトの名無しさん
2005/12/04(日) 17:36:18開発部の偉い人の発言
http://groups.google.co.jp/group/borland.public.delphi.non-technical/msg/a844101a1d331291
0539537
2005/12/04(日) 17:39:04Delphiには付いているという可能性はあるけど
機能表が間違っているのは毎年恒例だから
たぶん付いているんではないかと。
期待を込めて現在確認中。
0540538
2005/12/04(日) 17:40:110541デフォルトの名無しさん
2005/12/04(日) 18:28:360542デフォルトの名無しさん
2005/12/04(日) 19:03:09HAT_99_99 (*): 森雪はいりませんがコスモクリーナーDは搭載されていますか。もし搭載
されているなら落札価格に含まれますか? 6月27日 18時53分. 答え. yamato_captain_okita (*):
コスモクリーナーDは搭載されていますが、組み立てられていません。 ...
0543デフォルトの名無しさん
2005/12/05(月) 03:48:040544デフォルトの名無しさん
2005/12/05(月) 20:28:580545デフォルトの名無しさん
2005/12/05(月) 21:34:32おかしくなるって言うか、VCL関連のバグが露呈する場合があるな。
ま、だから助かってるんだけど。
0547デフォルトの名無しさん
2005/12/06(火) 02:50:48やり方書いてあるページありますか?
探しても見つからないっす。
0548デフォルトの名無しさん
2005/12/06(火) 05:31:20ライブラリのビルド
1. ilink32.cfgにC:\Program Files\Borland\CBuilder5\Lib\PSDKを追加(BCB5の場合)
2. コマンドプロンプトを起動し、以下のコマンドを。
cd C:\Program Files\OpenCV\_make
make /f makefile.bcc
3. C:\Program Files\OpenCV\binにできたDLLを%SYSTEMROOT%\SYSTEM32へコピー
サンプル
1. コマンドプロンプトで
cd C:\Program Files\OpenCV\samples\c
make /f makefile.bcc
BCBでやるには
インクルードパス
C:\Program Files\OpenCV\cxcore\include
C:\Program Files\OpenCV\cv\include
C:\Program Files\OpenCV\otherlibs\highgui 他にもあるけど省略。
ライブラリパス
C:\Program Files\OpenCV\lib
を設定し、C:\Program Files\OpenCV\lib内のlibファイルをリンクする
0549デフォルトの名無しさん
2005/12/06(火) 09:56:14>>480
>>482
レスありがとうございます。
時間空いてしまってすいませんでした。
なんとか解決できました。
0550デフォルトの名無しさん
2005/12/06(火) 13:23:23そこでちょい疑問が…
Professional版でもUML開発出来るのでしょうか?
それ以前に他バージョンとの違いがわかっていないのだが…
0551550
2005/12/06(火) 13:31:02Architectでしか対応していないね…
それ以前にUML(Together)はC/C++には対応していないね…
0552デフォルトの名無しさん
2005/12/06(火) 21:06:18すげー安いんだけど!
BCBは6のできが悪かったから優遇されてんのかな?
0553デフォルトの名無しさん
2005/12/06(火) 21:14:48普通にD2005からと同じ値段だぞ。
なにせBCBは6が最新版だからな( ノ∀`)
0554デフォルトの名無しさん
2005/12/06(火) 21:33:46けど、Builder党な人は年明けまで申し込むべきじゃない?
0555デフォルトの名無しさん
2005/12/06(火) 22:52:46交通工学分野で、料金所混雑について調べています。
料金所利用車を、ETC利用車と人による料金支払いをする車に分けて、後者の車による渋滞にETC利用車が
巻き込まれる事象をシミュレートしたいと思っています。
到着率やETC普及率を変化させ、車の平均滞在時間がどのように変化してゆくのかを調べるために、プログラム
を書こうとしているのですが、Visual C++で表現できるのでしょうか?
滞在時間を2次元のグラフィックで表したいのですが。
0556デフォルトの名無しさん
2005/12/06(火) 22:56:00お前もサンセット署に異動だ
0557デフォルトの名無しさん
2005/12/06(火) 22:58:530558デフォルトの名無しさん
2005/12/06(火) 23:00:594マソオーバーを覚悟していたけど、速攻で申し込んだぜ!!
で、問題は、このスレのテンプレにあるフリーのコンポーネントが使えるかどうか。
年末年始の休みはこいつと戯れよう。
早く来ないかな? チン☆⌒ 凵\(\・∀・)
0559デフォルトの名無しさん
2005/12/06(火) 23:03:01年末くらいにアップデートがダウソできるから、無問題。
0560デフォルトの名無しさん
2005/12/07(水) 00:10:07ちなみになんぼ? proからアップグレード
0561デフォルトの名無しさん
2005/12/07(水) 00:22:50弐万九千四百
0562デフォルトの名無しさん
2005/12/07(水) 00:26:57確かに安いなぁ
0563デフォルトの名無しさん
2005/12/07(水) 00:40:550564デフォルトの名無しさん
2005/12/07(水) 00:42:29Borland Developer Studio 2006
てか日本語版はBDSに一本化されてる
0565デフォルトの名無しさん
2005/12/07(水) 00:46:29サンクス。それで安くなったんかなあ。ちとビックリ。
アップグレード案内は俺の所にはまだ来てないけど、明日ぐらいには
届くだろう。もちろんすぐに申し込む。Delphiイラネなんだが。
BCB2006は、アップデート#1を当てるまで動作を保証しないって噂
があるけど、本当なんだろうか。
0566デフォルトの名無しさん
2005/12/07(水) 00:52:350567デフォルトの名無しさん
2005/12/07(水) 00:54:03度々ありがとう。年末にパッチ出るのね。安心した。まあ、年末がもしかしたら
来年初頭にずれるぐらいは覚悟しているが・・・・
0568デフォルトの名無しさん
2005/12/07(水) 00:57:19ご注意あれ。
0569デフォルトの名無しさん
2005/12/07(水) 08:57:37カスタムコントロールをパッケージ化し、
フォームに貼り付けたのですが、
自分で作ったプロパティが、いくら設定しようとしても、リセットされてしまいます
TEditに、InputCountというプロパティを追加し、
オブジェクト インスペクタのプロパティで、変更しようと思ったけれど、
LeftやTextといった元々あったプロパティしか変更できない
拡張クラスに、以下のコード入れて、後はGetとSetで引数のValueに
FInputCountを代入・読出しているだけですが、他に何か必要なのでしょうか?
よろしくお願いします
private:
void __fastcall SetInputCount(short Value);
short __fastcall GetInputCount(void);
short FInputCount;
__published:
__property short InputCount = {read=GetInputCount, write=SetInputCount};
0570569
2005/12/07(水) 09:21:35クラスエクスプローラで入れたら、変更してました
if文が一個増えただけで、何が変わったのかよく分かりませんが、解決しました
お騒がせしました
0571デフォルトの名無しさん
2005/12/07(水) 11:20:58アップデート案内。
BCB6組は、今回は本当にお得だなぁ。C#やDelphiが必要ない人に
取ってはやや負担増だが、それはC#組やDelphi組にも言える事なんで、
目をつぶろう。
さっそく申し込んできまーす!
0572デフォルトの名無しさん
2005/12/07(水) 11:56:37>目をつぶろう。
被害者が増えるんなら尚更気にしないと
0573デフォルトの名無しさん
2005/12/07(水) 11:58:180574デフォルトの名無しさん
2005/12/07(水) 12:17:02教師「みんな寒いんだから我慢しろ!!」
生徒「だったらなんとかしろよ!!!」
0575デフォルトの名無しさん
2005/12/07(水) 13:18:130576デフォルトの名無しさん
2005/12/07(水) 14:01:470577デフォルトの名無しさん
2005/12/07(水) 15:47:44VC並になってたら買う。
0578デフォルトの名無しさん
2005/12/07(水) 15:57:31>>561
BCB5pro→BCB6proが3年前で25200円だったから
BCB単独アップグレードと考えても別に高くはないわな
Delphi C#がついてくると思えば安いし、
それが必要ない人間にとっては普通の値段じゃね?
0579デフォルトの名無しさん
2005/12/07(水) 16:18:12いらんものを買わされる感がイヤ。買うけど。
0580デフォルトの名無しさん
2005/12/07(水) 16:25:59買うけど。
0581デフォルトの名無しさん
2005/12/07(水) 16:29:230582デフォルトの名無しさん
2005/12/07(水) 16:36:25Object PascalはBorlandだけの専売特許ですね(クス
0583デフォルトの名無しさん
2005/12/07(水) 16:39:49君は意味を取り違えてる。
0584デフォルトの名無しさん
2005/12/07(水) 19:51:56Builder5ユーザにはバージョンアップはないってことなのか
Builder6はバージョンアップするメリット皆無だったから見送ったけど今回はバージョンアップしようと思ってたのにな
0585デフォルトの名無しさん
2005/12/07(水) 20:04:30この一緒についてくる腐れDelphiやC#は、
やっぱり.NET Framework 1.1対応で2.0は次バージョンで対応だと思って良い?
0586デフォルトの名無しさん
2005/12/07(水) 20:09:31BCB Pro(BCB6を除く)は、37,800と書いてあるけど。送られてきた
バージョンアップ案内に。
0587デフォルトの名無しさん
2005/12/07(水) 20:21:47そのとおり。ちなみに腐れDelphiではなく、Delphi に腐れBCBがついたものです。
0588デフォルトの名無しさん
2005/12/07(水) 20:24:370589デフォルトの名無しさん
2005/12/07(水) 20:26:43そうそう、パッチがないとたんなるプレビュー版なんだよな
0590デフォルトの名無しさん
2005/12/07(水) 20:36:590591デフォルトの名無しさん
2005/12/07(水) 20:38:16てか、このバージョンアップって全部一緒にしてみましたって以外に何か意味あるの?
0592デフォルトの名無しさん
2005/12/07(水) 20:43:02知らん。多分このスレは某の人も覗いているだろうから、俺の予想では
今回BCBを切り捨てる予定だったのが、無理矢理統合しちゃったって感じ?
別々に売るとかえってコストがかかるからかもね。
0593デフォルトの名無しさん
2005/12/07(水) 20:48:15これはほんとだよ。
0594デフォルトの名無しさん
2005/12/07(水) 21:01:26オレの興味を全く引き付けない冊子を作るセンスがすごいね。
6から長いこと待ったが、次のバージョンまで待ちでいいか。
0595デフォルトの名無しさん
2005/12/07(水) 21:14:13全部一緒にしたことによってバグ増える
0596デフォルトの名無しさん
2005/12/07(水) 21:32:230597デフォルトの名無しさん
2005/12/07(水) 22:20:50実現する画期的なデバイスが出たけど、あれダメダメだったなぁ。
お互いが足引っ張り合ってもぅ。(今もあるのかな)
あの時、機能はそれぞれ独立させた方が良いと思い知った。
0598デフォルトの名無しさん
2005/12/07(水) 22:26:45Intel(R) Pentium(R) III/M 1.4 GHzまたはPentium IV 1.4 GHz以上
(Intel Pentium III/M 1.4 GHz以上またはPentium IV 2 GHz以上を推奨)
512 MBのRAM(1 GB以上を推奨)
0599デフォルトの名無しさん
2005/12/07(水) 22:27:390600デフォルトの名無しさん
2005/12/07(水) 22:32:420601デフォルトの名無しさん
2005/12/07(水) 22:38:08Pentium/90(推奨Pentium/166以上)のCPU
48MBのメモリ(推奨64MB以上)
10倍重いんじゃないだろか >BDS2006
0602デフォルトの名無しさん
2005/12/07(水) 22:51:00> 512 MBのRAM(1 GB以上を推奨)
俺のPCはAthlon64 3200+だが、メモリが1GBで推奨最低ラインだ orz
0603デフォルトの名無しさん
2005/12/07(水) 23:37:26http://www.delphipraxis.net/bds2006videos
0604デフォルトの名無しさん
2005/12/07(水) 23:41:090605デフォルトの名無しさん
2005/12/07(水) 23:45:07Borland Developer Studio 2006 と自分のプログラムと
両方のデバッグやらされる訳か。
0606デフォルトの名無しさん
2005/12/08(木) 00:42:41ありがとうございます。大変助かりましたっす。
0607デフォルトの名無しさん
2005/12/08(木) 00:56:24年が明けてから買うことにするよ
0608デフォルトの名無しさん
2005/12/08(木) 08:29:47オマケっぽい扱いは変わってないから、VCL周りで不具合続出しそうで怖い。
0609デフォルトの名無しさん
2005/12/08(木) 08:48:04RAMがいるのかな。1G積んでるけど2Gにしようかな。多分、呼び出す
DLLの数が増えているので、ディスクキャッシュ用に出来るだけ多く積ん
どけ、って事だろうと思うけど。
PaintShopじゃあるまいし、そんなに多量のリソース何に使うんだろうか。
0610デフォルトの名無しさん
2005/12/08(木) 09:17:160611デフォルトの名無しさん
2005/12/08(木) 09:18:460612デフォルトの名無しさん
2005/12/08(木) 09:22:300613デフォルトの名無しさん
2005/12/08(木) 09:47:23ちょwwwwwwwwwww PaintShopも一応そこそこの人気ソフトだぞwwwwwwwwwww
0614デフォルトの名無しさん
2005/12/08(木) 09:59:26どうも嫌な予感がしてならないんだが。
0615デフォルトの名無しさん
2005/12/08(木) 10:30:16ないんじゃないの
0616デフォルトの名無しさん
2005/12/08(木) 10:31:310617デフォルトの名無しさん
2005/12/08(木) 10:35:41ソースは?
随分前のアナウンスでは対応すると逝ってたが。
0618デフォルトの名無しさん
2005/12/08(木) 10:39:47ソースプリーズ
0619デフォルトの名無しさん
2005/12/08(木) 10:41:29ソースプリーズ
0620デフォルトの名無しさん
2005/12/08(木) 10:45:15ttp://www.itmedia.co.jp/enterprise/0202/19/02021907.html
0621デフォルトの名無しさん
2005/12/08(木) 10:51:34Delphi はともかくBCB はキャンセルなのでは?
ロードマップにもないし。
0622デフォルトの名無しさん
2005/12/08(木) 10:53:44つ BDS2006(Del、BCB、C丼)
0623デフォルトの名無しさん
2005/12/08(木) 10:58:11ロードマップ
http://blogs.borland.com/davidi/archive/2005/10/03/21548.aspx
http://blogs.borland.com/dcc/archive/2005/09/27/21361.aspx
0624デフォルトの名無しさん
2005/12/08(木) 11:41:18http://bdn.borland.com/article/0,1410,33383,00.html
> this release will introduce managed C++ support as well as ECO support for C++,
0625デフォルトの名無しさん
2005/12/08(木) 12:19:16おおっ、見逃してた。すまぬ。
次の次の次ってことね。
0626デフォルトの名無しさん
2005/12/08(木) 12:23:00これって、VCL.NET 使えるとか(あまり意味ないけど)ないんだったら、あんまり BCB にこだわ
らなくてもすでに VC++ あるし。
0627デフォルトの名無しさん
2005/12/09(金) 01:08:210628デフォルトの名無しさん
2005/12/09(金) 10:52:17っていうか、使わない方がいいから、VCL を使える C++ である現行の BCB のメリット
は .NET ではなくなるね。同じことは Delphi にも言えるけど。だから Delphi.NET は
苦戦してる。Pascal であって MS と競合してない分は Delphi はまだマシだけど。
0629デフォルトの名無しさん
2005/12/09(金) 11:46:54当分はWin32アプリが主流なんだから、それがC++BuilderとDelphiの強みでしょ
Borlandはそれがわかってないぽいけど
0630デフォルトの名無しさん
2005/12/09(金) 11:51:25そのために今 VerUp するのは、ほんと馬鹿らしい。
Win32 はもう追っかける価値なんてないのに。
0631デフォルトの名無しさん
2005/12/09(金) 11:54:040632デフォルトの名無しさん
2005/12/09(金) 11:59:05.NETがネイティブサポートされて(Vistaの次バージョン)、
そのOSのシェアが50%を超えるまでは.NETアプリがメインにはならんよ
0633デフォルトの名無しさん
2005/12/09(金) 12:03:43もうもっさり動作だもん
Win32だと一瞬で起動するようなツールが、.NETだと一呼吸待たされる
MSも普及させたいならこのへんどうにかしろよ
0634デフォルトの名無しさん
2005/12/09(金) 12:09:28開発者としてはも、現行以上追っかける必要はない。
むしろ、Win32 がメインでなくなった後を考えておく方がよっぽど建設的。
0635デフォルトの名無しさん
2005/12/09(金) 12:17:02いまだにVista発売されず。
0636デフォルトの名無しさん
2005/12/09(金) 12:20:560637デフォルトの名無しさん
2005/12/09(金) 12:28:04Del厨がきいたら猛り狂うぞ。
C++ ユーザは、言語仕様が国際基準なので視野が広いね。
一社仕様のDelphi言語(Object Pascal)ユーザは、それしか見えてないから
万一(笑).NET がメインになったら、それで行くつもりらしいよ。
0638デフォルトの名無しさん
2005/12/09(金) 12:34:03俺はDelphiメインだけど、Web や ML 見てる限り、
Delphi .NET と心中するようなのはそうそういないぞ
つーか、C++Builder も言語仕様については独自拡張しすぎだろ
__closure とかアレ何よ。便利だけど
0639デフォルトの名無しさん
2005/12/09(金) 12:41:52別にC++にあるべき機能を削って増やしてるわけじゃないんだから問題ないだろ。
0640デフォルトの名無しさん
2005/12/09(金) 13:05:48ふむふむ、ということは Delphi の寿命ももう少しで終わりだね
0641デフォルトの名無しさん
2005/12/09(金) 13:12:45某で生き残りそうなのは C# だけ。でも、もろに MS とカブッテルのでこれも
終わり。
よい兆候はないものか? Win64?
0642デフォルトの名無しさん
2005/12/09(金) 13:30:30コンパイラはMS製だよ。しいて言えば IDE だけが生き残るかも。まだ VS に負けてるけど。
0643デフォルトの名無しさん
2005/12/09(金) 13:31:47C#やJavaの良い部分を取り込んで、
BCBとdelphの間を統一的に行き来出来る今時のコンポーネントに作り直したら魅力的だと思う。
もちろんネイティブで。
某を使ってるのはネイティブでポトペタ最高!な部分を支持しているわけで。
.NETに魅力を感じるような人間は元々某を使わないと思う。
まぁ…開発者がMSに移籍してC#作ってるというのが今の某の迷走を物語る。
0644デフォルトの名無しさん
2005/12/09(金) 13:34:56魅力がどうのじゃなくて、これがネイティブになった(?)ら某の開発環境は
終わりってことだよね。そうなるかどうかは未知だけど。
0645デフォルトの名無しさん
2005/12/09(金) 13:37:250646デフォルトの名無しさん
2005/12/09(金) 13:39:39だから、あながち「ならんだろう」とはいえないよ。ハードがどれだけ
追いつくかにかかってる。
0647デフォルトの名無しさん
2005/12/09(金) 13:43:27結果的に早すぎて失敗したけど。
0648デフォルトの名無しさん
2005/12/09(金) 13:45:44X86アーキから変わる前兆が全く無いからハードは関係ないだろうね。
0649デフォルトの名無しさん
2005/12/09(金) 13:47:180650デフォルトの名無しさん
2005/12/09(金) 13:50:16当分は無理そうだな。
0651デフォルトの名無しさん
2005/12/09(金) 13:53:020652デフォルトの名無しさん
2005/12/09(金) 13:54:430653デフォルトの名無しさん
2005/12/09(金) 13:59:25ソースはどこなんでしょ。
0654デフォルトの名無しさん
2005/12/09(金) 19:37:28164秒が15秒になったwww
0655デフォルトの名無しさん
2005/12/09(金) 19:49:140656デフォルトの名無しさん
2005/12/09(金) 19:50:460657デフォルトの名無しさん
2005/12/09(金) 19:58:120658デフォルトの名無しさん
2005/12/09(金) 19:59:240659デフォルトの名無しさん
2005/12/09(金) 20:14:02これを入れるとコンパイル時間が超速くなる。
0660デフォルトの名無しさん
2005/12/09(金) 20:38:150661デフォルトの名無しさん
2005/12/09(金) 22:31:020662デフォルトの名無しさん
2005/12/09(金) 22:32:190663デフォルトの名無しさん
2005/12/10(土) 02:30:210664デフォルトの名無しさん
2005/12/10(土) 05:31:160665デフォルトの名無しさん
2005/12/10(土) 06:31:280666デフォルトの名無しさん
2005/12/10(土) 06:52:40関係あるよ。入れてみ。正直びっくりした。
ウィルスの可能性を疑うなら、付属のソースを自分でビルドして
インストールすればいいし。
0667デフォルトの名無しさん
2005/12/10(土) 06:54:33http://tinyurl.com/chcr9
0668デフォルトの名無しさん
2005/12/10(土) 08:42:470669デフォルトの名無しさん
2005/12/10(土) 12:06:35相変わらずJCBカード使えネー
0670デフォルトの名無しさん
2005/12/10(土) 12:28:570671デフォルトの名無しさん
2005/12/10(土) 12:32:16インストールすればいいし。
↑こういう香具師って付属のソースがウイルスのソースだったらまんまとひっかかるんだろうか?
0672デフォルトの名無しさん
2005/12/10(土) 12:40:280673デフォルトの名無しさん
2005/12/10(土) 12:51:07窓から投げ捨てるべき
0674デフォルトの名無しさん
2005/12/10(土) 13:13:35bcc32にdelphiコンパイラ内蔵なのは知ってたが、
dcc32にもC++コンパイラ内蔵だったのか…
0675デフォルトの名無しさん
2005/12/10(土) 13:16:20今の時期にこんなの出たらBDS2006売れなくなっちゃうよ(wwwwwwwwwwwww
0676デフォルトの名無しさん
2005/12/10(土) 13:22:23んなこたぁーない。
もう振り込んできてしまったよorz
0677デフォルトの名無しさん
2005/12/10(土) 13:37:25>>654
それマジかよw
0678デフォルトの名無しさん
2005/12/10(土) 13:46:14まじでヤバイ。
0679デフォルトの名無しさん
2005/12/10(土) 13:52:42vc++6並に速くなるね。
0680デフォルトの名無しさん
2005/12/10(土) 13:53:28ソースに一通り目を通さないとでも思ってるのだろうかこのバカは。
0681デフォルトの名無しさん
2005/12/10(土) 14:22:340682デフォルトの名無しさん
2005/12/10(土) 16:25:490683デフォルトの名無しさん
2005/12/10(土) 16:49:120684デフォルトの名無しさん
2005/12/10(土) 17:08:360685デフォルトの名無しさん
2005/12/10(土) 18:15:03某のネットショップからならJCB使えたよ。
0686デフォルトの名無しさん
2005/12/10(土) 21:08:52俺もキター
0687デフォルトの名無しさん
2005/12/10(土) 21:47:26Delphi無くていいから4,000円安くしてちょ。
0688デフォルトの名無しさん
2005/12/10(土) 23:35:220689デフォルトの名無しさん
2005/12/10(土) 23:37:58del phi とすれば外れます
0690デフォルトの名無しさん
2005/12/10(土) 23:50:14最高にド低脳な発言してください in ム板(X)
http://pc8.2ch.net/test/read.cgi/tech/1133485684
0691デフォルトの名無しさん
2005/12/11(日) 05:29:24,、i`ヽ ,r‐'ァ
`ヽ:: ::´
ヽ ヽ , -‐--、 / /
ヽ \ I:::::::I_ _ / /
ヽ ヽ i,(;;;ノI、;;;)l ,,/ , '
ヽ ` ー 、.,,ゝ´ヮ`,ノュ_, - ' r'
` 、_ /::: `山'::::: /
ヽ:::::::::::|::::::::"",r‐'
〉::::::::|::::::::::¨/
/;;;;;;;/;;;;;;;;;;/
/;;;;;;;/:::::::::::《
<;;;;;;;《:::::::::::::ヽ
/ ヽI,r''"""^~ヽ
/ ,/ ヽ ヽ
0692デフォルトの名無しさん
2005/12/11(日) 11:14:19このとき全てのデータを選択したいときってどうすればいいんですか?
dgRowSelect、dgMultiSelectはtrueにしてます
0693デフォルトの名無しさん
2005/12/11(日) 13:08:04見た事がある方がいらっしゃいましたら、その時何が原因で発生したか情報提供を
お願い致します。
『××の初期化に失敗しました』
××の例:Button->Color
〃 Button->Font->Name
上記現象が極たまに発生する為、再現方法を特定したいのですが…。
開発環境:
OS :WindowsXP Professional 日本語版 SP2
コンパイラ:Borland C++ Builder 6.0 日本語版 SP4
0694デフォルトの名無しさん
2005/12/11(日) 14:15:40そしたら、そのメッセージを出している箇所がわかるだろ。
0695デフォルトの名無しさん
2005/12/11(日) 23:02:14VCLスレッドで同期を取りたいのですが、
うまい、というか標準的な方法みたいなのはありますか?
具体的には、VCLスレッド以外は非同期にアクションが起きて、
それをVCLスレッドに知らせ、それによってGUI画面を更新したい。
で、単純に別スレッドから「何かが起きた」ことを知らせるには
SendMessageとPostMessageが使える(と思う)ので
適当なコントロールなりを非表示で作って
そこのイベントハンドラで何かすれば良いのかとも思いますが
こんなやり方で良いのかどうか。
それ(別スレッドなりからの通知)専用のメッセージとかがあれば
喜んで使うのですが。
0696693
2005/12/11(日) 23:14:52恐らく現象をご存知の方でしたら、検索しろという話にはならないとは思いますが、
念の為に追記させて頂きます。
エラーメッセージは自前で出力しているわけではありません。
また、本問題の発生したプロジェクトのオプション設定についてですが、
デフォルトのままです。
但し、スタックサイズはかなり多めに増やしております。
有識者の方、コメントを宜しくお願い致します。
0697デフォルトの名無しさん
2005/12/11(日) 23:16:270698デフォルトの名無しさん
2005/12/11(日) 23:21:26PostThreadMessage及びPeekMessageによる送受信にて通信可能です。
他にも方法はありますが、これが一般的ではないでしょうか?
0699693
2005/12/11(日) 23:27:08発生頻度がかなり低く、且つ開発環境下では全く再現しない為、
追うに終えない状況です。
(現状、客先に納入するPCでしか発生しないんです)
ある程度目星を付けれれば、無理矢理にでも置きやすい状況にして
解析を進める事が出来るのですが…。
0700デフォルトの名無しさん
2005/12/11(日) 23:27:23釣りとしたらめっさ巧妙やな。
VCLのソース・リソース中に用意された文字列に「失敗」は沢山あるが
「初期化に失敗」は一言も無い。
grepかけてみたらいい。
Delphi7のVCLで確認したが、6系持ってる人も探してみてくれ。
OSのメッセージであればプロパティ名とか出るわきゃないしな。
なので、そのアプリケーションが独自にVCLのストリーミング機構弄って何かやってて独自のメッセージを出してるか、
でなければ釣りと思う。
0701695
2005/12/11(日) 23:32:59うーんと、すごいワガママで申し訳ないんですけど
単に同期を取れば良いだけなら、普通にEventやWaitForが使えるし
そっちを使うつもりなのですが
GUIスレッドに通知したいんですよね。
要はメッセージループを回しているスレッドに。
で、自分で全部やるならWM_USER+xとかを指定して
BEGIN_MESSAGE_MAPとかを使うのが筋なのかもしれませんが
そこまで大げさにしなくても
ポトペタでなんとかならないかな、と思いまして。
0702デフォルトの名無しさん
2005/12/11(日) 23:42:02>6系
ない
ってか、んなもんそのアプリを動かして検証しなきゃどうにもならん
0703デフォルトの名無しさん
2005/12/11(日) 23:42:04PostMessageが一番スマートで効率もいいと思う。
0704693
2005/12/11(日) 23:55:26未grepですし証拠も無いので説得力無しですが、釣りではありません。
700さんの仰る通り、プロパティ名がそのまま出る事自体、不思議で仕方ありません。
699に書きました通り、Builder上も特殊な設定は行っておりません。
とりあえず本メッセージが出力されたコンポーネントのソースをgrepして
みましたが、そのような文言は存在しませんでした。
単純解決出来る問題であれば書き込みは致しません。
ググれば大概の事は判りますし。
とりあえず全ソース、grepかけてみます。
0705693
2005/12/12(月) 00:09:58無いですね…。> BCB 6.0
開発環境(計3台)下では発生せず、何故か納入PCでのみ発生している為、
環境設定上の問題の可能性も…?
納入PCにもBCBはインストールしている為、環境は同様のはずなのですが…。
手詰まりです。ホントに…。
0706デフォルトの名無しさん
2005/12/12(月) 00:20:070707693
2005/12/12(月) 00:34:41700さんの仰る通り、プロパティ名がそのまま出る事自体がおかしいですし、
その辺りをキーに再解析してみたいと思います。
0708デフォルトの名無しさん
2005/12/12(月) 01:07:52> ××の例:Button->Color
> 〃 Button->Font->Name
この例の部分の文字列はプログラムで文字列生成してるだろう。だからgrepしてもヒットしないだろ。
「初期化」とか「失敗」でgrepすれば出てくるだろ。
っていうか、Button->Font->Nameこんな文字列を表示している時点で、
システム側ではなく、自前のコード内だってことが一目でわかるだろ。普通。
てか俺も完全に釣られたのかな。
0709デフォルトの名無しさん
2005/12/12(月) 02:37:36memtest86とかかけてみ。エラーになってるから。
0710693
2005/12/12(月) 09:16:05当然、grepは『初期化』『失敗しました』等で行っております。
エラーとなるVCL名が固定ではないですし。
また、自前のコードで、プロパティ1つ1つをエラーチェックするような
無駄な処理(面倒な処理)も致しません…。
0711693
2005/12/12(月) 10:23:41コメント頂いた方には非常に申し訳ないのですが、以下のメッセージの
間違いだったようです。
『×× の読み込み中のエラー:無効なポイント操作』
××の例:Button->Color
〃 Button->Font->Name
VCLのソースを見てみましたが、プロパティの読み込みに失敗した時に
このメッセージが出力されるようですね。
※ちなみにExceptionによる出力です。
プロパティ名がそのまま表示されるようです。
自前のコードでの出力と思い込んでいる方々は参照なさって下さい。
おかげで解析を進めれそうです。
ありがとうございました。
0712デフォルトの名無しさん
2005/12/12(月) 11:43:38エラーメッセージをそのまま貼らないのが悪い、
と言ういい見本だな。
0713デフォルトの名無しさん
2005/12/12(月) 14:39:090714デフォルトの名無しさん
2005/12/12(月) 16:38:55自分で間違ったメッセージ書きこんで人を混乱させておきながら
何? この口のきき方。
0715デフォルトの名無しさん
2005/12/12(月) 16:54:37バカでも解るだろ。
ポインタが無効なんだよ!ぼろPCなんて使ってるからそんなのが出るんだ。
目盛り新しいのに好感しなよ。ほうけ。
0716デフォルトの名無しさん
2005/12/12(月) 16:55:340717デフォルトの名無しさん
2005/12/12(月) 17:57:020718デフォルトの名無しさん
2005/12/12(月) 18:17:440719デフォルトの名無しさん
2005/12/12(月) 18:29:52禿同
0720デフォルトの名無しさん
2005/12/12(月) 19:42:18ヘッダの中でstatic変数とか定義されてたらどうなるの?
実行時にメモリとか余計に喰っちゃうの?
0721デフォルトの名無しさん
2005/12/12(月) 21:09:23まず、staticの勉強が先だろう。
0722デフォルトの名無しさん
2005/12/12(月) 21:28:26ファイルスコープでのstaicの挙動は知ってるけどだからどうなるのかが知りたいって事なんだけど?
0723デフォルトの名無しさん
2005/12/12(月) 22:18:50コンパイル単位で領域が確保されるから、、、それをインクルードする.Cや.CPPの
コンパイル結果の.OBJそれぞれにstatic変数が確保されるんだろうな。
0724デフォルトの名無しさん
2005/12/12(月) 22:53:04本当に理解していれば、>>720の様な疑問は生まれない。
0725695
2005/12/13(火) 00:42:54FormのコンストラクタでButton->Handleを保存、
通知したいときにWM_LBUTTONUPをPostすることにしました。
OnMouseUpのハンドラでちゃんと動いてくれているみたいです。
>>698さん>>703さん他、どうもありがとうございました。
0726デフォルトの名無しさん
2005/12/13(火) 01:11:57プリコンパイルヘッダでも特別扱いはされないのね。
じゃあMLみたいにライブラリのヘッダは何でもかんでもプリコンパイルヘッダ詰め込んだらまずそうだね。
0727デフォルトの名無しさん
2005/12/13(火) 03:23:05static変数でもグローバル変数と同じ様に気をつければOK。
まともなSI企業での職務プログラミングでは基本原則の一つなんで、
違反して言い訳すると、、、たぶん干されますな。
0728デフォルトの名無しさん
2005/12/13(火) 11:48:23それとも、externするのですか?
0729デフォルトの名無しさん
2005/12/13(火) 12:22:12(共通的定数を、使用するソース毎にexternする人は少ないと思います)
0730デフォルトの名無しさん
2005/12/13(火) 12:40:150731729
2005/12/13(火) 17:57:500732デフォルトの名無しさん
2005/12/13(火) 19:38:20〜 数人で組むプロジェクトでよくある対策 〜
機能ごとに多数のソースに分割している場合で、共通なグローバル変数の
置き場を決めかねる事って結構あるんだよな。あちこちのソースで分散して
宣言していると、後でサーチが大変でデバッグも面倒だ。
そんな時はグローバル変数のみ宣言するソースを作ってしまう手がある。
commvalues.cやらCommValues.cppでまとめて宣言、ヘッダを工夫して使う。
#defineな共通定数や共通型宣言もcommdef.hやcommtypes.hなどに記述。
IDEの管理や埋め込みコードに縛られないC言語が主流のプロジェクト時代では
有効な統治ルールだったが、今でも使えるカイゼン技法かも。
0733デフォルトの名無しさん
2005/12/13(火) 19:49:580734デフォルトの名無しさん
2005/12/13(火) 20:01:58そろそろ改めないとなぁ…。
0735デフォルトの名無しさん
2005/12/13(火) 21:46:03大抵、enumにしてしまう。
0736デフォルトの名無しさん
2005/12/14(水) 01:50:43時代がenum標準になってたとは・・・浦島だ orz
0737デフォルトの名無しさん
2005/12/14(水) 01:53:140738デフォルトの名無しさん
2005/12/14(水) 02:33:040739デフォルトの名無しさん
2005/12/14(水) 02:46:19定数に意味のある名前を付けて可読性をよくするには、どうやってんだよ。
0740デフォルトの名無しさん
2005/12/14(水) 04:18:480741デフォルトの名無しさん
2005/12/14(水) 04:27:23それ、何て言うガイドライン?
0742デフォルトの名無しさん
2005/12/14(水) 04:43:260743デフォルトの名無しさん
2005/12/14(水) 11:54:580744デフォルトの名無しさん
2005/12/14(水) 14:02:500745デフォルトの名無しさん
2005/12/14(水) 22:03:01クラス内では。
0746デフォルトの名無しさん
2005/12/15(木) 01:21:400747デフォルトの名無しさん
2005/12/15(木) 01:52:380748デフォルトの名無しさん
2005/12/15(木) 02:05:010749デフォルトの名無しさん
2005/12/15(木) 16:22:500750デフォルトの名無しさん
2005/12/16(金) 16:52:25日本語文字列の部分文字列を作るときって、何文字目からかに依って
文字化けしませんか?
文字列をスクロールさせようとしたんですが、始め一・二文字がわけわからん文字に化けでます。
どうしたらこの問題を回避できますか?
0751デフォルトの名無しさん
2005/12/16(金) 16:56:32TStringMbcsByteType ByteType(int index)
index 番目のバイトが2バイト文字の1バイト目のときは mbLeadByte を返し、
2バイト文字の2バイト目のときは mbTrailByte を返す。2バイト文字の一部
でない場合は mbSingleByte を返す。
0752デフォルトの名無しさん
2005/12/16(金) 17:40:120754デフォルトの名無しさん
2005/12/16(金) 22:03:38メモリ使用量(*´∀`)
0755デフォルトの名無しさん
2005/12/16(金) 23:17:23スクロールする時は事前にフィールドのビットマップを記憶しておいて、
新しく描く部分とビットマップをチョップしたのを併せて表示した方が高速なんですかね?
今は馬鹿正直にレスを描き直ししてます。
ペイントボックス使ってます。
0756デフォルトの名無しさん
2005/12/16(金) 23:26:130757デフォルトの名無しさん
2005/12/16(金) 23:26:58r〜f⌒i しj__ ト√¨トー、
_ 厂ノ,..-ーt´¨i´:::::|⌒i;¬…tク-、
r〈 ,>イ:::|:::::|:::::|:::::|:::::::|::::::|::::::|:::::i¬ん、
>/l::::|:::⊥亠¬冖⌒ i冖ハ¬ト、,|::::|:::ヽ〉、
{シ,.:!ー'' r´/(⌒て_厂¬r⌒ヒ_ト、ゝ、i_::|:||:i:}
∠/rーtノ⌒ー’....................../.ト、゙i ゝr-、|:||:;ト、
ソー' i.............................../...〃.j\i........... しヘ::|(
{ ......|............./.. /..// / V......... しうノ
l .....l.| /... // //─ - 、..........}Σト、ヽ、 ちゅぱちゅぱ美味しい
゙i i| ../ _≦./ =ー- 、|.. .. |⌒) \ヽ
゙i.....::゙i../,r):::;:d |ドく;;d |...........|.:::} l ヾi
/∧ ...}〈ヘ{qトj」 └-''、⊥!........レ´ ゙i.i i‖
// ∧...::トヽ ̄ 、 j!.........,il' ゝi ||
〃〃 i..::ト-ヽ、 ri、 ィ´|..... ,'| ヽi、
《 《 i、:|_ ` ー,- | ├<´ ト、|....../..|__,.-、 ||j
/⌒\
( )
| |
| |
│ │
___________________________________
このスレを見た人は、10年以内にかならず氏にます。
でも、逃れる方法はあります、
※10日以内に20箇所のスレにこれをはるのです。
0758デフォルトの名無しさん
2005/12/16(金) 23:39:50いっそのこと、オフスクリーン描画してみては? TImage とか。
0759デフォルトの名無しさん
2005/12/17(土) 00:41:10たかがブラウザでもdirectXって普通に使われてるものなんですか?
使ったこと無い、ってかアプリ作るの始めてだし。
>>758
オフスクリーン描画ってなんですか?
ダブルバッファみたいなものですか?
0760デフォルトの名無しさん
2005/12/17(土) 00:45:10まさしく TImage
こいつのビットマップ面にテケトーに書き殴れば
WM_PAINTはこのコンポーネントがやってくれる
ビットマップ面(DIBだけどDDBもイケたかな?)のDC取れば
APIで書き殴り放題
だがしかし WM_PAINT をただしくハンドリングする方がやっぱり好き
と思う折れはオサーン
そもそもログテキストみたいな縦に長くなりがちな領域に
TImage割り当てるのは禿しくバッドだなw
0761デフォルトの名無しさん
2005/12/17(土) 00:52:12ではdirectXならグットなんですか?
0762デフォルトの名無しさん
2005/12/17(土) 00:57:18それいがいの方法は有り余るマシンパワーに依存するやり方ですね。
0763デフォルトの名無しさん
2005/12/17(土) 01:07:230764デフォルトの名無しさん
2005/12/17(土) 01:08:07調べてみます^^
0765デフォルトの名無しさん
2005/12/17(土) 01:13:24出来合いの惣菜で用意したご飯はイマイチ美味しくないです><
素材の飼育までは出来ませんが、自分で料理はしたい。
そんな年頃です。
0766デフォルトの名無しさん
2005/12/17(土) 01:58:29気に入った
0767デフォルトの名無しさん
2005/12/17(土) 02:07:25http://www.ne.jp/asahi/nagoya/ahomaro/builder/cpb-069.html
このページが参考になるのでは。
0768デフォルトの名無しさん
2005/12/17(土) 16:28:28自分用のパレットページは作成できないんですか?
0769デフォルトの名無しさん
2005/12/17(土) 16:36:150770デフォルトの名無しさん
2005/12/17(土) 19:45:351) ActivePerlと連携できるコンポーネントあったら要る?
2) ActivePerlでVCLを使(ゲフンゲフン
(配布条件にモロ抵触する罠)
0771デフォルトの名無しさん
2005/12/18(日) 04:56:510772デフォルトの名無しさん
2005/12/18(日) 04:59:18JP77550の文書、MSのサイト内から消えてGoogleのキャッシュにしか
引っかからなくなってるので、後々の自分の為にメモ。
ユーザーが押下したENTERキーが標準キーボード側のENTERキーなのか、
テンキー側の ENTERキーなのかを判断したい場合、
どちらの動作もwParamに仮想キーコードのVK_RETURNが設定されて、
WM_KEYDOWNメッセージとWM_KEYUPメッセージが発行される。
メッセージのlParamの24ビットめをチェックする。キーが拡張キー
ならばビット24は1になり、そうでなければ0になっている。
(これらのメッセージのlParamの内容は、SDK バージョン3.0の
「プログラマーズリファレンス Vol.1 概要」と、
「プログラマーズ リファレンス Vol.3 メッセージ、構造体、マクロ」の
ドキュメントに記述されている)
テンキー側にあるキー(ファンクションキーも含めて)は拡張キーになる。
0773デフォルトの名無しさん
2005/12/18(日) 05:00:03case WM_KEYDOWN:
{
if (wParam == VK_RETURN)
{
if (lParam & 0x1000000L)
{
// テンキー側のENTERキー
}
else
{
// 標準キーボード側の ENTER
}
}
} break;
0774デフォルトの名無しさん
2005/12/18(日) 06:54:33Good Tip!!
0775デフォルトの名無しさん
2005/12/18(日) 07:25:37こういうのを灯台下暗しという
0776デフォルトの名無しさん
2005/12/18(日) 21:25:25次のようにやると閉じるけど、音が鳴ってしまうのでいまいちです。
void __fastcall TForm::FormKeyDown(TObject *Sender, WORD &Key,
TShiftState Shift)
{
if(Key == VK_ESCAPE)
{
Close();
}
}
0777デフォルトの名無しさん
2005/12/18(日) 22:04:500778776
2005/12/18(日) 22:21:34Key = 0;
やってみたけど状況が変わらない。
どうしてだろ?
0779デフォルトの名無しさん
2005/12/19(月) 01:26:20どういう事ですか?><
0780デフォルトの名無しさん
2005/12/19(月) 09:09:47PlaySound(0,0,SND_PURGE);
0781デフォルトの名無しさん
2005/12/19(月) 10:30:18フォームにメニューかポップアップメニューを貼り付けているのなら、
そのメニューのアイテムにmnuExitを追加して、以下の様にする。
void __fastcall TForm::FormCreate(TObject *Sender)
{
・
・
・
mnuExit->ShortCut=ShortCut( VK_ESCAPE, TShiftState() );
・
・
・
}
void __fastcall TForm::mnuExitClick(TObject *Sender)
{
Close();
}
0782デフォルトの名無しさん
2005/12/19(月) 10:44:07Edit2に にしむら とその変換する前の読みが入るようにするにはどうしたらいい?
0783779
2005/12/19(月) 16:41:04今度はParentプロパティが無いとか言って起動してくれません><
0784デフォルトの名無しさん
2005/12/19(月) 17:45:41まず、日本語から勉強してくれ。
0785783
2005/12/19(月) 18:19:11インストールした後、フォームにポトペタしてビルドしアプリを実行しました。
すると親ウィンドウが無いという実行時の例外を発して起動しませんでした。
それで今度はコンポーネントにParentプロパティを__publish部に宣言して、
インストールし直してから、オブジェクトインスペクタのParentプロパティがポトペタしたフォームに
なっている事を確認した上で再度ビルドし実行しました。
しかし今度も実行時の例外を発して起動しませんでした。
その時は、プロパティParentが存在しませんと言われました。
日本語訳するとこんな感じです><
0786デフォルトの名無しさん
2005/12/19(月) 20:38:58正直チンプンカンプンですな。
ヘルプの、目次>カスタムコンポーネントの作成>コンポーネント作成の概要
>インストール前のコンポーネントのテスト
と次の
>インストールしたコンポーネントのテスト
あたりをしっかり読んでみてはどうですか。
0787デフォルトの名無しさん
2005/12/19(月) 22:14:11ヘッダをアップすれ。
きっと一目で原因が判明する。
コンストラクタ宣言の引数が間違っているのではないかな。
0788デフォルトの名無しさん
2005/12/20(火) 02:10:56Canvasに何か書くと、親ウィンドウが無いってエラー出るよ
0789デフォルトの名無しさん
2005/12/20(火) 02:14:050791デフォルトの名無しさん
2005/12/20(火) 02:17:38勉強になりました><
0792デフォルトの名無しさん
2005/12/20(火) 10:49:26確定した時にKeyPressが呼ばれるから無理ぽじゃね?
0793デフォルトの名無しさん
2005/12/20(火) 11:58:53IME 関連のメッセージを調べると幸せになれるかもしれない
0794デフォルトの名無しさん
2005/12/20(火) 13:09:410795デフォルトの名無しさん
2005/12/20(火) 14:41:040796デフォルトの名無しさん
2005/12/20(火) 19:09:430797デフォルトの名無しさん
2005/12/21(水) 11:14:41OSはWin2000およびXP。
起動すると、たまにコンポーネントパレットから一部のコンポーネントのアイコンが消えてしまうのですが、原因分かる方いますでしょうか?
自分で登録したものだけでなく、インストール時に標準で入っていたものまでなんです。
再インストールすると復活するのですが。
頻度としては年間で2、3回だけなんですけどね。
0798デフォルトの名無しさん
2005/12/21(水) 12:11:39memtest汁。
0799デフォルトの名無しさん
2005/12/21(水) 12:27:26メモリのテストですか。
一応調べてみます。ありがとうございました。
でもメモリの問題で特定のファイルだけ壊れるなんてありえるんでしょうか・・・
0800デフォルトの名無しさん
2005/12/21(水) 12:41:31いろいろ試してみろ。
0801デフォルトの名無しさん
2005/12/21(水) 12:57:095 は確かにあったね。6 にしてから、一度も起こってないから、そういうもんなんじゃないかな。
0802デフォルトの名無しさん
2005/12/21(水) 13:01:12ぜってー何か原因がある。
0803801
2005/12/21(水) 13:07:22マシントラブルで消えてたんだった。失礼。
0804デフォルトの名無しさん
2005/12/21(水) 14:52:26ハードウェアアクセレレーションの設定の仕方で直る場合があったと思う。
うるおぼえですまんが。
0805デフォルトの名無しさん
2005/12/21(水) 19:01:29アイコンが消えるっても、本当に消える訳ではなく、表示がおかしくなるだけだったが。
まあ、バグなんだろうな。
ディスプレイドライバとの相性とかがあるのかもしれん。
0806デフォルトの名無しさん
2005/12/21(水) 19:18:14http://www.tt.rim.or.jp/~rudyard/hirago014.html
0807デフォルトの名無しさん
2005/12/21(水) 19:29:08情緒 じょうちょ/じょうしょ
0808デフォルトの名無しさん
2005/12/22(木) 09:03:56Del覚え
0809デフォルトの名無しさん
2005/12/22(木) 17:39:22BorlandC++を使用しています。
A.DLLでは、B.DLLの変数_bを使用します。
AのdefファイルのIMPORTSセクションに、B._bを記載しています。
B.lib(インポートライブラリ)をリンクしていないので、
リンクエラーになると思ったのですが、エラーになりません。
defファイルの記載を消すとリンクエラーになります。
defファイルのIMPORTセクションに
記載するれば、インポートライブラリを
リンクしなくてもよいのでしょうか?
よろしくお願いいたします。
0810デフォルトの名無しさん
2005/12/23(金) 07:32:290811デフォルトの名無しさん
2005/12/23(金) 09:06:51下位のブラシとかペンとかもろもろインスタンスの生成などはきちんと自動でしてくれますか?
それとも自分でnew TCanvasとかする必要有りですか?
0812デフォルトの名無しさん
2005/12/23(金) 15:33:06そら継承元次第
TCustomControl以下から継承したならCnavasは実装済みだな
0813デフォルトの名無しさん
2005/12/23(金) 20:00:18そうですか。
なんでブラシの色とかにアクセスしようとしたら落ちるんだろ…
0814デフォルトの名無しさん
2005/12/23(金) 23:44:200815デフォルトの名無しさん
2005/12/23(金) 23:44:29なってるけど、もう届いた人っている?
0816デフォルトの名無しさん
2005/12/23(金) 23:59:060817デフォルトの名無しさん
2005/12/24(土) 09:30:55自前でCanvas用意してるならTCanvas::HandleにDCハンドル入れないと動かないぞ
TCanvasは単なるWindowsGDI APIのWrapperに過ぎないし。
0818デフォルトの名無しさん
2005/12/24(土) 10:31:590819デフォルトの名無しさん
2005/12/24(土) 17:19:51ラインを引きたいんですが一番いい方法は何でしょうか。
Canvasに直接描画すると項目を変更したときにラインを消す
処理をしたくないんでスマートな方法を教えてください。
0820デフォルトの名無しさん
2005/12/24(土) 17:40:39マウスのある項だけに下線を引くのは、自分で描画するしかないんじゃないの。
0821デフォルトの名無しさん
2005/12/26(月) 06:02:48そのウィンドウに対応したタブ(?)が出来ちゃいます。
これを表示させたくないんですがどうやれば表示せずに
ウィンドウを表示できますか?
0822デフォルトの名無しさん
2005/12/26(月) 14:27:19http://www2.big.or.jp/~osamu/Delphi/delphi-browse.cgi?index=058420
0823デフォルトの名無しさん
2005/12/26(月) 15:26:42解決しますた、ありがとうございました。
0824デフォルトの名無しさん
2005/12/28(水) 08:49:33コントロールの数が多いせいか、チラつきます。
BeginUpdate()、EndUpdate()のような感じの関数はないでしょうか?
0825デフォルトの名無しさん
2005/12/28(水) 09:29:19コントロールの移動の前後で、LockWindowUpdate をフォームに対して行ったら、だいぶ更新速度は速くなる様子。
(TabControlに対して行っても同じ効果だけど、うちの環境だとなぜか他のウィンドウやデスクトップがちらついた)
0826デフォルトの名無しさん
2005/12/28(水) 10:12:25Left Top じゃなくて SetBounds使う
0827デフォルトの名無しさん
2005/12/28(水) 14:11:080828デフォルトの名無しさん
2005/12/29(木) 02:43:41グラフィックコントロールばかりならいいだろうけど。
0829デフォルトの名無しさん
2005/12/30(金) 13:24:56TStringListは内部にvectorを使用していますか?
0830デフォルトの名無しさん
2005/12/30(金) 13:44:03何が聞きたいんだ?
STLのVectorを使ってるかと聞きたいのか?
それともアルゴリズムとしてVectorなのかと聞きたいのか?
STLのVector(実際にはTstringsだが)使ってないんじゃないの?
Delphiとの絡みも有るし・・・
0831デフォルトの名無しさん
2005/12/30(金) 13:45:24VCLの実装はすべてDelphi(ObjectPascal)言語で書かれています。
0832本田
2006/01/01(日) 06:01:33それじゃ遅いので一部ASM。
0833デフォルトの名無しさん
2006/01/01(日) 13:42:260834デフォルトの名無しさん
2006/01/02(月) 07:09:160835デフォルトの名無しさん
2006/01/02(月) 09:28:280837本田
2006/01/03(火) 05:20:360838本田
2006/01/03(火) 13:42:120839デフォルトの名無しさん
2006/01/03(火) 13:45:560840本田
2006/01/03(火) 22:21:360841デフォルトの名無しさん
2006/01/04(水) 14:33:020842デフォルトの名無しさん
2006/01/05(木) 18:25:56Timerが動きません。ShowModalしないとうんともすんとも
いわないのは仕様ですか?
0843デフォルトの名無しさん
2006/01/06(金) 07:52:080844デフォルトの名無しさん
2006/01/06(金) 09:43:010845デフォルトの名無しさん
2006/01/06(金) 13:48:33親がなければ自分でメッセージ処理用ウィンドウ作るし。
0846デフォルトの名無しさん
2006/01/07(土) 01:13:09ここほんとに C++ スレなのか? Windows のプログラムについて知ってる人いないの?
0847デフォルトの名無しさん
2006/01/07(土) 10:24:000848デフォルトの名無しさん
2006/01/07(土) 14:37:27tmpList->Text = "AAA";
tmpList->Text += "AAA";
tmpList->Text += "AAA";
tmpList->Text += "AAA";
ShowMessage(tmpList->Text);
delete tmpList;
これ、1行しか表示されないんだけど、どうしてなの?
Ansistring型に+=は有効なのに。
0849デフォルトの名無しさん
2006/01/07(土) 14:55:07BCB6ならヘルプ>キーワード>プロパティ,代入演算子,
0850デフォルトの名無しさん
2006/01/07(土) 15:18:01どうもありがとう〜
ダメなのは前から知ってたけど、やっと理由が分かってスッキリしました。
0851デフォルトの名無しさん
2006/01/08(日) 00:26:05BCB5でプログラムを作成しています。
プログラムが日本語版のWindowsで動いているか、そうでないかをプログラム中で
判別したいのですが、検索エンジンでさがしても適当なものを見つけることが
できませんでした。ご存知の方、よろしくお願いします。
0852デフォルトの名無しさん
2006/01/08(日) 00:30:23GetACPとかGetUserDefaultLangIDとか。
0853デフォルトの名無しさん
2006/01/08(日) 12:20:41メモリ管理のことで少々不明な点があるので教えてください
builderのコンパイラ性能がいまいちなので重い計算をする部分を
Intelコンパイラを使ってLib or DLLで作り、それをBuilderでつくったソフトから
呼び出すような形態を想定しています。
その際に問題になるのがメモりマネージャーの違いだとおもうのですが
同じBuilder同士や、たとえばVC同士でもランタイムバージョンの違いで
問題になるようです。
今回のケースのような場合はどうすればよいのでしょう?
ふつうにnew deleteを使うと問題がおきますよね?
0854デフォルトの名無しさん
2006/01/08(日) 12:50:44WinAPIのHeapAlloc系を使うようにすれば、ヒープハンドルさえ同じなら平気。
0855デフォルトの名無しさん
2006/01/08(日) 13:21:44VC++はHeapAllocをほぼそのまま呼び出してる。
一方、BCB(VCL)はHeapAllocで確保した領域を、さらに自前で管理している。
なので、呼び出し側と開放側が一致しないとまずい。
共用するには、>854の言うように、
HeapAllocなりで確保した領域をplacement newなりで初期化して使えばいいと思う。
deleteも、デストラクタを呼び出してからHeapFreeするようにして。
(VCLオブジェクトが内部で確保した領域は、開放もそっちを使うので問題ない)
0856デフォルトの名無しさん
2006/01/08(日) 13:31:01クラスならoperator new/deleteをオーバーロードするとすっきりする。
0857デフォルトの名無しさん
2006/01/08(日) 17:46:03dll内に実装したクラスをapp側からnewして利用したいって話?COMみたいなやり方は駄目?
外部へ公開するインタフェイス(抽象クラス)
interface ITest
{
virtual int Get( void ) = 0;
virtual void Set( int val ) = 0;
virtual int Release( void ) = 0;
};
実装(構築子やら参照カウンタは省略)
class TTest : public ITest
{
int m_val;
int Get( void ){ return m_val; }
void Set( int val ){ m_val = val; }
int Release( void ){ delete this; }
};
インスタンス作成関数
ITest* CreateTest( void )
{
return new TTest;
}
app側
ITest* Test = CreateTest();
Test->Set( 100 );
Test->Release();
0858デフォルトの名無しさん
2006/01/08(日) 22:55:06ICでnewした領域はICでdelete
これじゃだめなのか?
0859デフォルトの名無しさん
2006/01/09(月) 08:35:32逆にBCBで作ったクラスの非仮想関数をICで呼び出すことはできない。
0860デフォルトの名無しさん
2006/01/12(木) 17:26:59void __fastcall TForm1::Button1Click(TObject *Sender)
{
//A
BYTE *p = new BYTE[ 640*480*4 ];
Memo1->Lines->Add( (DWORD)p );
//B
Graphics::TBitmap *Image = new Graphics::TBitmap;
Image->PixelFormat = pf32bit;
Image->Width = 100;
Image->Height = 100;
Image->Canvas->FillRect( TRect( 0, 0, 99, 99 ) );
delete Image;
//C
delete[] p;
}
Button1を押すと初回と二回目以降でアドレス変わるし
二回目以降に受け取る領域はStretchDIBits()の転送元にしようとしても失敗する
(A→C→Bと並び換えたり、確保する領域を310432バイト以下にすると問題は起きない)
VCのソースを基に自作したmalloc()とfree()を組み込んで回避したけど
新しいビルダーでは直ってるかな
0861デフォルトの名無しさん
2006/01/12(木) 18:09:21> ビルダー6のメモリ管理周り怪しくね?
藻前の日本語の方が怪しいよ。
# > 初回と二回目以降でアドレス変わるし
# 何の?
# > 二回目以降に受け取る領域は
# 何の?
0862デフォルトの名無しさん
2006/01/12(木) 18:53:01つ http://sourceforge.net/projects/fastmm/
0863デフォルトの名無しさん
2006/01/12(木) 18:55:490864デフォルトの名無しさん
2006/01/12(木) 23:12:45関数名を見れば簡単に理解できるじゃん。
0865デフォルトの名無しさん
2006/01/12(木) 23:39:060866デフォルトの名無しさん
2006/01/13(金) 06:01:030867デフォルトの名無しさん
2006/01/13(金) 23:31:12IDEのエディタで、イベントハンドラなどを追加すると、
自動的に挿入される //----------------------- の横線がウザいです。
これを停止するオプションは無いのでしょうか?
0868デフォルトの名無しさん
2006/01/13(金) 23:37:48自分もBuilder6を使って同じ現象を確認した。
オフトピだがFillRect()の記述が間違っていると思う。
正しくは、
Image->Canvas->FillRect( TRect( 0, 0, 100, 100 ) );
この関数の引数は、数学的に言うと左閉右開区間です。
Builder6のヘルプより引用
----------------------------------------------------------------------
FillRect メソッドはキャンバス上の指定した四角形を現在のブラシで塗りつぶします。
void __fastcall FillRect(const TRect &Rect);
説明
FillRect メソッドを呼び出すと,現在のブラシを使って四角形の領域を塗りつぶすこと
ができます。指定の領域を塗りつぶす場合,四角形の左と上の端は領域に含まれます
が,右と下の端は含まれません。
----------------------------------------------------------------------
0869デフォルトの名無しさん
2006/01/13(金) 23:46:44メモリの確保をnew以外にするだけで直るんだけど、どういう理屈なんだこれ。
0870デフォルトの名無しさん
2006/01/14(土) 09:13:13$(BCB)\Bin\bcb.bcfというファイルをエディタで編集します。
[Code Formatting]
Divider Line=
Divider Line Break=
を追加すると仕切り線が作られなくなります。
ヘルプのキーワードは「生成されたコード」です。
0871860
2006/01/14(土) 16:49:56ありがとう、今から落としてみるよ。
>>868
TRect/RECT
指摘、解説してくれてありがとう。
いろいろ値を変更しながら実験してた途中のコードを貼り付けて
しまったので前述のようになってしまった次第。
問題回避用に組み込んだコード(骨子のみ)
HANDLE g_hHeap;
void *malloc( size_t szAllocation ){ return HeapAlloc( g_hHeap, 0, szAllocation ); }
void free( void *Unused ){ HeapFree( g_hHeap, 0, Unused ); }
void _SetupHeap( void ){ g_hHeap = HeapCreate( 0, 4096, 0 ); }
void _CleanupHeap( void ){ HeapDestroy( g_hHeap ); }
#pragma startup _SetupHeap 0
#pragma exit _CleanupHeap 0
ヒープAPIに丸投げです(realloc()calloc()も同様)
0872デフォルトの名無しさん
2006/01/14(土) 17:50:100873デフォルトの名無しさん
2006/01/19(木) 18:30:100874デフォルトの名無しさん
2006/01/19(木) 18:40:480875デフォルトの名無しさん
2006/01/19(木) 18:56:17ではこの関数自体は問題なくCodeGuardオフでコンパイルしたらいいですか?
0876デフォルトの名無しさん
2006/01/19(木) 21:21:44BDS2006を買って下さい。
0877デフォルトの名無しさん
2006/01/20(金) 15:06:260878デフォルトの名無しさん
2006/01/20(金) 16:57:57詳しく
0879デフォルトの名無しさん
2006/01/20(金) 17:32:43通称"Label2"バグが出る。
<property category="build.node" name="packages" value=
に、使われていないパッケージが入っていると出るようだ。
コンポーネントを登録したら、以降どのプロジェクトもコンパイルできなく
なったりする。その時は Dafault.bdsproj だったかそんな名前のファイル
から、使ってないコンポーネント名を手で削除しなければならない。
0880デフォルトの名無しさん
2006/01/20(金) 18:30:340881デフォルトの名無しさん
2006/01/20(金) 19:05:210882デフォルトの名無しさん
2006/01/20(金) 20:08:16boostのコンパイルが通る
0883デフォルトの名無しさん
2006/01/20(金) 20:22:31それ以外どれが通るの?
0884デフォルトの名無しさん
2006/01/20(金) 22:27:08嘘つけ。あまり変わってないぞ。
0885デフォルトの名無しさん
2006/01/21(土) 20:25:57Re: boost
news://newsgroups.borland.com:119/[email protected]
0886デフォルトの名無しさん
2006/01/21(土) 21:29:34リンク切れ
0887デフォルトの名無しさん
2006/01/21(土) 22:44:49おやおや。先週の投稿なのに。
boostに、最新版のコンパイラだと不要なワークアラウンドコードが入ってるから、
その辺解決するパッチを今作ってるよ、という話。
0888デフォルトの名無しさん
2006/01/21(土) 23:34:37情報サンクス。期待して待ってみます。
0889デフォルトの名無しさん
2006/01/22(日) 00:13:04TStringGridとか機能アップしているのか気になる
0890デフォルトの名無しさん
2006/01/22(日) 06:58:280891デフォルトの名無しさん
2006/01/22(日) 15:50:07VC++だと出ない候補も出してくれる(shared_ptrの中とか)
0892デフォルトの名無しさん
2006/01/22(日) 16:30:19(メッセージウィンドウにコンパイラ内部エラーが出て補完は出来ないけど)
0893デフォルトの名無しさん
2006/01/22(日) 20:21:14ttp://www.ne.jp/asahi/nagoya/ahomaro/builder/cpb-015.html
// AnsiStringを返す
AnsiString BoolToStr(bool val)
{
return (val!=0) ? AnsiString("TRUE") : AnsiString("FALSE");
}
これって
関数のスコープ抜けて戻ってきた時点で
AnsiString("〜")は破棄されてるんじゃないですか?
0894デフォルトの名無しさん
2006/01/22(日) 20:47:36戻り値はreturnに指定された値のコピーが作られ、そいつが返されるので問題ない。
あとそのコピーは最適化で省略されるようになっているかもしれない。
0895デフォルトの名無しさん
2006/01/22(日) 20:48:05一時変数にコピーされてる
0896デフォルトの名無しさん
2006/01/23(月) 00:09:120897デフォルトの名無しさん
2006/01/23(月) 00:40:48だめだ。可変長配列が蹴られた(BCC 5.8.1)。
long long intは5.6の頃から使えるしなぁ。
0898デフォルトの名無しさん
2006/01/23(月) 01:11:24このままメジャーなコンパイラでは、C99対応は立ち消えか?
gccがせめて100%対応になってくれれば。
0899デフォルトの名無しさん
2006/01/23(月) 08:42:070900デフォルトの名無しさん
2006/01/23(月) 11:59:470901デフォルトの名無しさん
2006/01/24(火) 00:30:43オブジェクト名を文字列で指定する方法ってありますでしょうか・・?
たとえば
String strTest = Edit1;
strTest->Text = "ω";
いろいろ調べましたが・・・
わかるかたいらっしゃったら教えていただけますでしょうか。
よろしくお願いします
0902デフォルトの名無しさん
2006/01/24(火) 00:58:30リフレクションがないから無理だろ。
0903デフォルトの名無しさん
2006/01/24(火) 01:08:130904デフォルトの名無しさん
2006/01/24(火) 01:23:420905デフォルトの名無しさん
2006/01/24(火) 16:41:290906デフォルトの名無しさん
2006/01/24(火) 18:55:560907901
2006/01/25(水) 00:41:11FindComponentでなんとかなりましたー
0908デフォルトの名無しさん
2006/01/25(水) 04:04:32BCB6よりはいいと思うよ。
その代わりメモリ1Gいるけど。
0909デフォルトの名無しさん
2006/01/25(水) 04:19:48ではMMXPentium200MHzメモリ96MBの僕では無理ですね。
諦めて6使い続けます。
0910デフォルトの名無しさん
2006/01/25(水) 09:06:190911デフォルトの名無しさん
2006/01/25(水) 17:48:44いままでBCBでプログラミングしてきたのですが
BDSでASP.netのプログラムを組む必要が出てきました。
で、DELPHIとC#でどっちを選べばいいのか迷ってます。
VCLがつかえるDELPHIか、C/C++の文法に近いC#か・・
どっちがいいでしょうかね?
ちなみにDELPHIもC#もプログラム経験はありません。
0912デフォルトの名無しさん
2006/01/25(水) 17:58:000913デフォルトの名無しさん
2006/01/25(水) 18:41:30.NET 2.0が必要=VS Expressを入手してC#で
0914911
2006/01/25(水) 22:43:40レスありが�d
.NETが2.0でなければDELPHIのほうがいいのですね。
特にその辺は何も言われていないので1.1でも大丈夫です。
開発ツールも指定はないです。
Delphi.netでやってみようと思います。
(BCBは.net対応になったりしないんですかね?^^;)
0915デフォルトの名無しさん
2006/01/25(水) 23:13:15お仕事みたいですね。
とするとC#で作りはじめた方が安全かも。
余裕がある・趣味ならDelphiを押しますけど。
0916デフォルトの名無しさん
2006/01/26(木) 00:56:52C# に比べてドマイナーで情報もほとんど無いし。
Delphi.NET は既存の Delphi ユーザが、しかたなく .NET やらなければ
ならないときにしぶしぶ使うくらいしか存在理由はないだろ。
0917デフォルトの名無しさん
2006/01/26(木) 08:47:15C丼なんて存在も知られない超ドマイナー土着言語だ罠。
0918デフォルトの名無しさん
2006/01/27(金) 02:17:57BCB6パーソナル(1万円のやつ)sp4、WinXP
ググってwiki2個あったけど、インスコしろとしか書いてません
verをそろえろって書いてあったが、1個を解凍して、JCL,JVCL 2個でるタイプだから大丈夫だと思う
パーソナル版でJVCL使えた人いたら、教えて下さい
ちなみにJVCLってのは、フリーでボタンとかいっぱい入ってるやつです。
0919デフォルトの名無しさん
2006/01/27(金) 05:39:25JVCLなんか使うなやカス
0920デフォルトの名無しさん
2006/01/27(金) 09:29:450921918
2006/01/27(金) 09:30:11>919
みなさんのオススメのコンポーネント群ってなんですか?
0922デフォルトの名無しさん
2006/01/27(金) 10:31:06なぜ?俺は愛用しているけど。
0923デフォルトの名無しさん
2006/01/27(金) 19:36:320924デフォルトの名無しさん
2006/01/28(土) 05:04:57自分でイベントを実装したいときはどうやればいいですか?
0925デフォルトの名無しさん
2006/01/28(土) 09:51:08スタイルによっては内部にEditコントロールを持ってるから、その部分のマウス移動まで捕らえたいなら、そいつをサブクラス化かな。
0927デフォルトの名無しさん
2006/01/28(土) 20:14:07しばらくやる気なし。
0928デフォルトの名無しさん
2006/01/28(土) 21:21:07あ、他作コンポーネント使ってたら大変だね。
俺はコンポーネント使わず自前の関数で標準VCLいじって利用しているからなんの問題もなかった。
0929デフォルトの名無しさん
2006/01/29(日) 02:53:41バグなのか環境依存なのか・・・
0930デフォルトの名無しさん
2006/01/29(日) 13:14:34実行ファイルはできるが実行時の挙動がおかしいのか、を詳しく書いた方がいいと思うよ。
Update#4とその後のリンカのアップデートは適用ずみ?
もしBCBの実行ファイル自体のメモリ管理コードが引き起こしてる問題だとしたら
何も打つ手がないのかなあ・・・
0931929
2006/01/29(日) 14:08:38失礼しました。環境は以下の通りです。
Win2000sp4 MEM:320MB HDD:8GB(残1.2GB NTFS) BCB6 Update#4
いつも「実行時パッケージを使って構築」「共有RTL DLLを使う」のチェックを外しておりますが
どうも実行ファイルのサイズが1.5〜1.6MB位になるとおかしくなってくるようです。
これはUpdate#4適用前でも起こってました。
挙動はコンパイルやリンクの失敗、実行ファイルはできても直ぐに終了とか様々です。
しかもそうなるとそのユニット、フォームを使用している限り治りません。
プロジェクトグループにいくつもファイルを登録しててもおかしくなりますが
この場合は登録数を減らすと正常になります。
もしかしたら全ソースコードのサイズが絡んでいるのかもしれませんね。
0932デフォルトの名無しさん
2006/01/29(日) 14:28:270933デフォルトの名無しさん
2006/01/29(日) 14:29:37ローカル変数とグローバル変数のポインタで同じような名前があって、どっかで間違えて使用されているんじゃないかと思う。
ってそう言うことはないの?
そもそもコンパイルやリンクの失敗って、どんなメッセージが出てるかが問題解決の糸口だろ。
>そうなるとそのユニット、フォームを使用している限り治りません。
って、そのフォームとユニットに問題があるって事だろ。
0934929
2006/01/29(日) 15:25:36コンパイル・リンカエラーは大体「未定義のシンボル」か「外部シンボル 〜 が未解決」が多いです。
でもきちんと宣言及びコードの記述もしてありますし、パスも通してあります。
実行時のエラーはメモリエラーが多いですが、最近では「この機能を使うライセンスを有しておりません」も出るようになりました。
しかし同様のコンポーネントを使用したソースをコンパイルして実行してもそんなエラーは出ません。
発病するとcpp,hファイルを症状が出る直前に戻しても治りませんが、
プロジェクトとフォームを新規に作成して、それ以外は症状が出る直前のからコピーしてくると正常になる事から
自分が記述したところ以外で何かが起こっていると思ったのですが・・・
BCB6が壊れているかもと再インストもしてみましたが未だ解決されません。
0935デフォルトの名無しさん
2006/01/29(日) 16:21:12BDSスレに統合?
それともver.6以前のユーザのために続ける?
0936デフォルトの名無しさん
2006/01/29(日) 16:33:26分けたままでいいんでないの?でないと、Delphiとごっちゃになるし。
こっちは、Ver6以前のC++BuilderとBDSのC++Builderパーソナリティを対象にするということで。
BDSスレはBDS全般に関することにすればいいと思う。
0937デフォルトの名無しさん
2006/01/29(日) 17:56:45そんなメッセージ見たことない。
どっかからシェアのVCLコンポーネントでも入れてんの?
俺の推測だけど、そのコンポーネントはプロジェクトごとにレジストリかどっかにプロジェクト名とか残してて
レジストして無い場合一定期間すぎたらそう言うメッセージを表示するようにプログラムしてあるんだと思う。
で、解除の方法は#defineとかであるコードを入力すれば制限無く利用できるとか。
要するに標準コンポーネント以外信用するなってこった。
0938929
2006/01/29(日) 18:37:49> >この機能を使うライセンスを有しておりません
> そんなメッセージ見たことない。
私もこのメッセージを見たのは初めてです。
でもコンポーネントはBCB6Proに付いてきたコンポーネントしか入れておりませんし、
正規に購入してインストール&ユーザー登録もしてありますからライセンス違反しているとも思えません。
本当はソースコード一式を何処かにULしたいところですが
生憎業務で使用するプログラムなのでそうもいかないのが残念です。
0939デフォルトの名無しさん
2006/01/29(日) 18:54:26それは置いといて業務でそんな不安定な状態は泣けるね
0940デフォルトの名無しさん
2006/01/29(日) 20:43:13ハードウェアに問題があるかもしらん。
0941本田
2006/01/29(日) 23:22:53>ilink32 Version 5.66 Update for C++ Customers - by Troy Kitch
http://bdn.borland.com/article/0,1410,32448,00.html
0942デフォルトの名無しさん
2006/01/30(月) 00:26:47TIdHashMessageDigest5を使えばいけそうってことが分かりましたが
使い方が分かりません
検索して以下のページを見つけましたが
http://forums.belution.com/en/cbuilder/000/002/68.shtml
ここのソースを張ってもエラーになり
この質問に対する返信も無い事から
行き詰ってしまいました。
よろしくお願いします。
0943929
2006/01/30(月) 00:33:48今日HDD・メモリのチェックとilink32のアップデートを試してみます。
0944本田
2006/01/30(月) 00:36:53>Delphi 7 - Indy ヘルプファイル・アップデート
> 【ファイル名】d7help_indy_jp.zip
> 【ファイルサイズ】3,363,040 バイト
> 【対象アプリケーション】Delphi 7 Enterprise/Professional
> 【圧 縮】ZIP
> 【説 明】Delphi 7 のオンラインドキュメントのためのアップデートを提供いたします。 詳しくは、Delphi 7 ドキュメントアップデート・ダウンロードサービスを参照してください。
http://www.borland.co.jp/download/delphi.html
0945デフォルトの名無しさん
2006/01/30(月) 01:12:24ありがとうございます
以下の用に書いて見ましたが
TIdHashMessageDigest5 *encoder = new TIdHashMessageDigest5();
T4x4LongWordRecord hash = encoder->HashValue(str);
[C++ エラー] unit1.cpp(169): E2034 'unsigned int' 型は 'unsigned int[4]' 型に変換できない
0946942
2006/01/30(月) 01:13:060947942
2006/01/30(月) 01:17:47で
TIdHashMessageDigest5 *encoder = new TIdHashMessageDigest5();
unsigned int hash = encoder->HashValue(md5str);
に変えて見たらコンパイルは通るのですが
実行時EAccessViolation で書き込み違反が起こります。
0948本田
2006/01/30(月) 01:43:40indyコンポーネント
http://pc8.2ch.net/test/read.cgi/tech/1093654251/
0949デフォルトの名無しさん
2006/01/30(月) 03:37:020950本田
2006/01/30(月) 07:03:26>Network Working Group R. Rivest
>Request for Comments: 1321 MIT Laboratory for Computer Science
> and RSA Data Security, Inc.
> April 1992
>
>
> The MD5 Message-Digest Algorithm
>
>Status of this Memo
http://www.ietf.org/rfc/rfc1321.txt
0951デフォルトの名無しさん
2006/01/30(月) 08:18:170952デフォルトの名無しさん
2006/01/30(月) 08:20:310953デフォルトの名無しさん
2006/01/30(月) 10:17:20SHFileOperation
>>952
少し手間はかかるができる
0954デフォルトの名無しさん
2006/01/30(月) 11:12:13TIdHashMessageDigest5利用したいなら、
IdHash.hppの typedef unsigned T4x4LongWordRecord[4]; をコメントアウトして、その下に
struct T4x4LongWordRecord {unsigned Value[4];}; を追加。
後は IdHash.hpp と IdHashMessageDigest.hpp にあるいくつかのクラスの HashValue メソッドの戻り値が
unsigned になってるので、全部 T4x4LongWordRecord に置き換える。
0955デフォルトの名無しさん
2006/01/30(月) 11:19:16ありがとうございます
このソースを使えばいいんですね。
0956942
2006/01/30(月) 11:22:25コンパイルしたら
md5c.cは無事通りましたが
mddriver.cが
[C++ エラー] mddriver.c(104): E2451 未定義のシンボル MD_CTXとなってしまいます。
MD_CTXってのは何なんでしょか?
0957951
2006/01/30(月) 15:49:16詳しく
0958デフォルトの名無しさん
2006/01/30(月) 15:54:22まずはググレ
0959デフォルトの名無しさん
2006/01/30(月) 15:54:260960デフォルトの名無しさん
2006/01/30(月) 17:13:240961本田
2006/01/31(火) 07:08:38>This page describes md5,
>a command line utility usable on either Unix or MS-DOS/Windows,
>which generates and verifies message digests (digital signatures) using the MD5 algorithm.
>This program can be useful when developing shell scripts or Perl programs for software installation,
> file comparison, and detection of file corruption and tampering.
http://www.fourmilab.ch/md5/
0962デフォルトの名無しさん
2006/01/31(火) 09:57:490963デフォルトの名無しさん
2006/01/31(火) 11:27:01MSDNで検索すれば出てくんジャマイカ?
0964デフォルトの名無しさん
2006/01/31(火) 16:56:30ttp://home.graffiti.net/destiny_2005/#TIPS405
0965デフォルトの名無しさん
2006/01/31(火) 20:29:10pro版では問題なかったとのこと、やっばり personal はファイルが少ないせいで
少しばかりてこずるみたいですね。
私も personal なんですが、手順どおり JCL、JVCLの順でインストール。
JCLはインストール元のパスに日本語が含まれてると駄目。
JVCLは Interpreter と UIB とかいうコンポーネント(?)でエラーが出たのでインストール
しないようにすれば、とりあえず完了。
その後実際の project のコンパイル時に JvConsts.res、JvCtrls.res が無いとエラーが
出たので jvcl\resources の下からパスの通った適当なフォルダにコピー。
これで今のところ使いたいコンポーネントは問題無く使えてます。
ご参考まで。
0966デフォルトの名無しさん
2006/01/31(火) 21:48:200967デフォルトの名無しさん
2006/01/31(火) 22:11:52そう言う事は、価格.comやベストゲートで聞け
0968デフォルトの名無しさん
2006/02/01(水) 02:12:18bcc5.5/bcb6のstat()って、ワイルドカードにもマッチしちゃうんだね。
Unix系のシステムコールでも、VCTKでも
stat()は正しいファイル/ディレクトリ以外だと失敗するので
stat()が取れなかったらワイルドカード
stat()が取れてS_ISDIR()が成立したらディレクトリ
それ以外はファイル
みたいな事を共通ソースでやろうと思ってたんだけど
ちょっと無理みたいね。
その他にも、Unixではstat("dirname/")が成功するのに
bccもVCも失敗するという違いもあるし、
素直に#ifdefなりで切り分けてGetFileAttributesを使うべきかな。
</ちらしの裏>
0969デフォルトの名無しさん
2006/02/01(水) 04:29:310970デフォルトの名無しさん
2006/02/01(水) 04:30:41((i))←女性性器
0971デフォルトの名無しさん
2006/02/01(水) 09:53:11標準でPCRE入ってるしboost::regexも使える
0972デフォルトの名無しさん
2006/02/01(水) 12:44:050973デフォルトの名無しさん
2006/02/01(水) 12:55:29どこまで使えるの?たたで
0974デフォルトの名無しさん
2006/02/01(水) 12:56:36C++Builder相談室 Part16
http://pc8.2ch.net/test/read.cgi/tech/1138766165/
0975デフォルトの名無しさん
2006/02/02(木) 12:09:03ふかくにも・・・ワロタ
0976本田
2006/02/02(木) 13:31:41> 正規表現を使いたい場合、何を使えばよいのでしょうか?
>bmonkey's Delphi page
>正規表現を使った文字列探索/操作コンポーネント集
>
>バージョン
> 0.17
>配布ファイル
> REXP017.LZH (69,462 bytes)
>動作確認環境
> Windows 98 + Borland Delphi6 Japanese Personal edition。
> 1つ前のバージョン 0.16は Delphi2.0J と Delphi3.01J、C++Builder1J でも動いていました。今回の変更はバグの修正だけなので、確認はしていませんが、本バージョンもこれらの環境で引続き動作すると思います。
>ライセンス
> パブリックドメイン
>概要
http://homepage1.nifty.com/bmonkey/delphi/delphi.html
0977デフォルトの名無しさん
2006/02/02(木) 13:57:070978デフォルトの名無しさん
2006/02/03(金) 15:00:530979デフォルトの名無しさん
2006/02/03(金) 15:05:47ツール→エディタオプション→表示→バックアップファイルの作成をオフ
0980デフォルトの名無しさん
2006/02/03(金) 15:08:22おお、サンクス!
0981デフォルトの名無しさん
2006/02/05(日) 17:18:440982デフォルトの名無しさん
2006/02/05(日) 21:52:58かーくーなーよー
(ちなみに俺はPL/Iだった)
0983デフォルトの名無しさん
2006/02/07(火) 19:29:01あれ〜、お止めになって。
0984デフォルトの名無しさん
2006/02/10(金) 07:43:04Borlandが開発ツールを売却、Segue Software買収
アプリケーションライフサイクル管理(ALM)推進の一環として、米Segue Softwareを買収し、統合開発環境(IDE)関連事業の売却先探しに当たる。
Borland Softwareは2月8日、アプリケーションライフサイクル管理(ALM)推進の一環として、統合開発環境(IDE)に関連した事業の一部を売却する計画を発表した。
売却の対象にはBorland Developer Studio(Delphi、C++Builder、C#Builder)とJBuilderが含まれる。BorlandではBear, Stearns & Co.と契約して売却先探しに当たる。
同時に、米Segue Softwareを約1億ドルで買収する合意を交わしたと発表した。同社はアプリケーションライフサイクルを通じたソフト品質定義、測定、管理、向上のための製品を提供している。
いずれも、拡大しているALMの分野で主導的な地位の確保を目指す戦略に沿ったものだとBorlandは説明している。
0985デフォルトの名無しさん
2006/02/10(金) 20:47:25業務開発で、今のボーランド系を主体に使うってのは
バカげた選択と言わざるを得ない状況だしな。
出来がいい悪いの問題じゃねぇや。
0986本田
2006/02/10(金) 21:22:49> 業務開発で、今のボーランド系を主体に使うってのは
> バカげた選択と言わざるを得ない状況だしな。
ロングホーンがこけたので、
.netの行方も不透明だ、
何事にもリスクはある。
王道は無い。
0987デフォルトの名無しさん
2006/02/10(金) 21:51:12リスクの有無じゃなく、大小の話しでしょ?
0988デフォルトの名無しさん
2006/02/11(土) 05:55:43MSが買ったら大笑いだけどな
赤字企業ではなく優良企業が買えばBorlandが持ってるよりいいかもな
0989デフォルトの名無しさん
2006/02/11(土) 06:41:24Salesforce.com
Google.
なんて言ってる人が居るみたいだけど・・・
0990デフォルトの名無しさん
2006/02/11(土) 18:57:40ライブドアだったりして
最悪だけど
0991デフォルトの名無しさん
2006/02/11(土) 19:13:570992デフォルトの名無しさん
2006/02/11(土) 20:34:43面白い予想ですね。
その中のgoogleはいくら今、四方八方に唾付けてみてる状況とは言え、
今回は無いんじゃないかなぁ。 もし有ったらどんな展開するのか
面白いけども。
ボーランドは、開発補助系ソフトに移行ってことかな?
この市場はよく知らないが いいんじゃないかな、MSと真っ向勝負でもないし。
0993デフォルトの名無しさん
2006/02/11(土) 21:27:09中小企業向けにCRMをカスタマイズする仕事なんかは
Delphi/BCBにはうってつけかも。
で、しばらくしてMSが参入してきて、また揉めると。
0994デフォルトの名無しさん
2006/02/14(火) 13:31:31C++Builder相談室 Part16
http://pc8.2ch.net/test/read.cgi/tech/1138766165/
0995デフォルトの名無しさん
2006/02/14(火) 14:23:440996デフォルトの名無しさん
2006/02/14(火) 21:09:370997デフォルトの名無しさん
2006/02/14(火) 21:51:060998デフォルトの名無しさん
2006/02/15(水) 01:28:420999デフォルトの名無しさん
2006/02/15(水) 01:51:151000デフォルトの名無しさん
2006/02/15(水) 01:52:2710011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。