C++Builder相談室 Part18at TECH
C++Builder相談室 Part18 - 暇つぶし2ch100:デフォルトの名無しさん
07/10/30 15:43:23
BCB2007はIndy10標準です

101:デフォルトの名無しさん
07/10/30 15:54:23
やっぱ、標準がIndyに移ったんならIndyじゃね?

102:デフォルトの名無しさん
07/10/30 16:02:22
日本語対応の点でIndyは色々大変って話もあるな
C++BuilderはIndy10使えないし

103:デフォルトの名無しさん
07/10/30 17:43:24
どっちも受信したメールはコード変換しないとダメですよね?

104:デフォルトの名無しさん
07/10/30 22:35:17
Indyはゴミだからやめとけ

105:デフォルトの名無しさん
07/10/31 00:16:21
そうはいってもNM(FastNet)はもう終わっちゃっていて先がないから。
そういやRad Studio 2007でもC++BuilderはIndy9なの?

106:デフォルトの名無しさん
07/10/31 00:17:00
>>105
Indy10だよ

107:デフォルトの名無しさん
07/10/31 02:02:33
Indyはダメすぎる
自前でなんとかしたほうが無難

108:デフォルトの名無しさん
07/10/31 07:52:02
別にだめじゃないよ

109:デフォルトの名無しさん
07/10/31 09:27:27
Indyソース付きなんだから、自前みたいなもん。





但し、pasファイル

110:デフォルトの名無しさん
07/10/31 11:57:11
単純なソケットなら自前でもいいけど
自前で実装するのは大変過ぎ

111:デフォルトの名無しさん
07/10/31 14:09:59
Visual Studioのほうが良くないか?

112:デフォルトの名無しさん
07/10/31 14:13:04
V$側の良い部分が1つも無い。

113:デフォルトの名無しさん
07/10/31 14:15:08
ボーランドは高いだろ。
マイクロソフトので十分。
4言語はいってる品。ww

114:デフォルトの名無しさん
07/10/31 14:19:45
ボーランドは1パッケージで1言語。
マイクロソフトには全然負けている。

115:デフォルトの名無しさん
07/10/31 14:20:55
開発するときは1言語なんだけど。
それより、Indy使えるようになったらスレに入ってきな。
土俵にも上がってないよ。

116:デフォルトの名無しさん
07/10/31 14:21:23
ボーランドの製品かうならデルファイでいいんじゃねえか?

117:デフォルトの名無しさん
07/10/31 14:24:10
C++ BuilderにVCLコンポ最強。

118:デフォルトの名無しさん
07/10/31 14:25:54
>>115
昔は俺もボーランドのC++ビルダ プロを6万6千円で購入した。
しかし、ほとんど使わないまま、Visual C++(マイクロソフト)を買い。
4言語入ったVisual Stdio スタンダードにアップグレードした。
これでもマイクロソフトのパッケージは2パッケージで3万千円程度。
言語はVB、VC++、VC#、J#と飽きのこない内容充実。

119:デフォルトの名無しさん
07/10/31 14:30:47
>>118
だから土俵に上がってないおまいが居る(存在する)からって何?

120:デフォルトの名無しさん
07/10/31 14:34:38
もう避難したから某ランドはつぶれてもいいよ

121:デフォルトの名無しさん
07/10/31 14:36:46
>しかし、ほとんど使わないまま、

>もう避難したから

たてほこ

122:デフォルトの名無しさん
07/10/31 14:37:58
ちせつな文といい、ヴビ厨って頭がかたわだなw

123:デフォルトの名無しさん
07/10/31 14:40:07
>>119
Indyって何?


124:デフォルトの名無しさん
07/10/31 14:46:17
>>119
ずいぶん幼稚な次元のコンポーネントの話してたのか?
プログラマ同士でやってくれ。
ぐぐったらよくわかった。


125:デフォルトの名無しさん
07/10/31 15:53:40
舞糞ソフトのセンスは糞
VCやVBも使いづらいしゴミ
OSも舞糞ソフトじゃなかったらここまでバグだらけになってないだろうな

126:デフォルトの名無しさん
07/10/31 16:01:18
なんか頭の弱い人が乱入してきてるみたいだが、
ここはC++Builderのスレなんだから、それ以外は巣に帰ったら?
VisualStadioのほうがいいとか…開発者は元ボーランド社員を引き抜いたわけだし。

要はここは質スレだ。俺もスレチだからこれで終わっとく。

127:デフォルトの名無しさん
07/10/31 16:03:44
はげどー

128:デフォルトの名無しさん
07/10/31 16:04:32
はげどー

129:デフォルトの名無しさん
07/10/31 18:06:52
フレドーフレドー

130:デフォルトの名無しさん
07/10/31 18:55:27
フロドー

131:デフォルトの名無しさん
07/10/31 22:13:04
パッケージに何言語も入ってたって意味なくね?
メインで使う言語ってだいたい決まってるし

132:デフォルトの名無しさん
07/10/31 22:28:48
VCL使う事かんがえるとDelphiとC++は一緒にあると便利
少なくとも俺は両方無いと困る

133:デフォルトの名無しさん
07/11/01 06:39:59
VSのIDEって使えば使うほど重くなってくよね。なんで?

134:デフォルトの名無しさん
07/11/01 08:40:39
言語がイパーイ入っててもちょっぴり嬉しいんだけど、
中の言語が短命で変わりまくりだったり、
ネイティブモンリーorドトネトモンリーといったカタワはカンベン。
VCLみたく両方対応しろと。

135:デフォルトの名無しさん
07/11/01 09:53:56
こいつらレベル低い派wwwwwwwww

136:デフォルトの名無しさん
07/11/01 10:10:54
...




は?





...
で?

137:デフォルトの名無しさん
07/11/01 13:10:19
こいつらレベル低い派wwwwwwwww

138:デフォルトの名無しさん
07/11/01 16:15:07
馬鹿じゃないけど低能が書いてるんだろww

139:デフォルトの名無しさん
07/11/01 16:23:44
ヒント: バカでも使えるBuilder。

140:デフォルトの名無しさん
07/11/01 17:31:19
んじゃ舞糞ソフトよりはマシってことですね

141:デフォルトの名無しさん
07/11/01 17:41:25
低能がらしい当て痔 wwwwwwww

142:デフォルトの名無しさん
07/11/01 17:59:04
STRRET構造体のpOleStr,uOffset,cStrがないとか言われるの何とかならんのかな。

143:デフォルトの名無しさん
07/11/01 18:09:18
>>142
ヘッダ調べてみたら解決した。

STRRET構造体.pOleStr
じゃなくて
STRRET構造体.u.pOleStrだった。

サーセン。


144:デフォルトの名無しさん
07/11/02 09:38:49
C++Builder2007とRAD Studio2007と、
どっちが良いんでしたっけ?

145:デフォルトの名無しさん
07/11/02 10:22:23
どっちが萌えるってこと?

146:デフォルトの名無しさん
07/11/02 10:22:47
職人さんへのお願い 
タケコプターを回してください
過疎掲示板に職人さんの技術力をお恵みくださいm(__)m
URLリンク(bbs63.meiwasuisan.com)


147:デフォルトの名無しさん
07/11/02 16:11:51
>>118さん
Vスタジオその値段で買えますか...?
買えるなら欲しい。(アカデミック版でしょうか)



148:デフォルトの名無しさん
07/11/02 16:14:37
>>147
自己レス。スタンダード版は確かにその値段ですね。

149:デフォルトの名無しさん
07/11/04 05:47:33
>>118
現状、実際使うのはC++、C#だけじゃん。
J#自体は完全な継子扱いだし、奇形C#のVB(.net)は使うメリットないべ。
更に言えば、VCのライブラリ使いにくいし、役に立つのはC#位。

ってかさ、MSは はいい加減に .NetのWindows.Formsの奇形GUI部品群を
どうにかしろよ。
未だに、まともにUI部品として使えるのはサードパーティー製のデュアル
インターフェースのActiveXばっかじゃないか。
いい加減、.NetネイティブでまともなUI部品を組める様にしてくれやorz

150:デフォルトの名無しさん
07/11/04 19:09:55
MS製ソフトなんて昔からそんなもんだよ

151:デフォルトの名無しさん
07/11/05 08:48:06
Windowsのカーネルだけしっかりさせといて、
その上の部品をガラガラポンした方が儲かるんだろ。

152:デフォルトの名無しさん
07/11/06 00:12:06
ユニットってどういう意味ですか?

たとえば、クラスを書く場合ユニットを作成し、
Unit.h,Unit.cpp
に書いたほうがいいのですか?

153:デフォルトの名無しさん
07/11/06 00:50:55
>>152
死ね役立たず。
人の足引っ張って楽しいかゴミクズ。
今すぐ死ね。
死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。
死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。
死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。
死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。
死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。
死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。
死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。
死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。
死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。
死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。v死ね。死ね。
死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。
死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。
死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。
死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。
死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。
死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。
死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。ね。死ね。
死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。
死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。
死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。死ね。

154:デフォルトの名無しさん
07/11/06 00:58:26
もちつけw

155:デフォルトの名無しさん
07/11/06 01:03:33
どうしたんだ
ファビョってる朝鮮人でも来てるのか?

156:デフォルトの名無しさん
07/11/06 01:25:38
なんかC++スレのコピペw

157:デフォルトの名無しさん
07/11/06 08:01:28
>>152
本来はObjectPascalのソース単位。Unit*.pas = 1ユニット。
BCBだとUnit*.hとUnit*.cppに相当。新規作成>ユニットは同名のヘッダファイルとソースファイルをまとめて作るくらいの認識でおk

158:デフォルトの名無しさん
07/11/07 14:03:05
unko

159:デフォルトの名無しさん
07/11/08 01:16:58
なんでC++勉強したいのにObjectPascalまで覚えないといけないのかと最初は思ってたけど
Delphiの知識もついて一石二鳥だったなと今なら思える

160:デフォルトの名無しさん
07/11/08 07:50:07
使い道あんまりないけどな

161:デフォルトの名無しさん
07/11/08 10:19:49
C++の勉強用にはclosureだのDelphiRTTIだのイベントハンドラ適当に定義すれば動いちゃうだのVCLの疑似GCだの弊害が多すぎる予感。


162:デフォルトの名無しさん
07/11/08 10:27:34
そうでもないよ。

MFCなんかだとスケルトンコードが大きすぎるし、
かつそれがC++じゃない化け物コードみたいなものだし、
コーディングしてて自分が何したいのか分からなくなるくらい。

163:デフォルトの名無しさん
07/11/08 11:59:07
C++の勉強にクラスライブラリは直接関係無いというか
本質的な事ではないな

164:デフォルトの名無しさん
07/11/08 12:04:44
>C++の勉強にクラスライブラリは直接関係無いというか

あの、C++での開発っていうのはクラスライブラリの派生なんだから、
勉強っていうのはクラスライブラリの勉強だお。

165:デフォルトの名無しさん
07/11/08 12:20:38
それなら環境はおのずと決まるだろう

166:デフォルトの名無しさん
07/11/08 12:26:08
イミフメ

167:デフォルトの名無しさん
07/11/08 14:38:01
わかってないな

168:デフォルトの名無しさん
07/11/08 14:42:53
わかってないな

勉強なんだから、特定の環境、例えばWindowsで良質なクラスライブラリを使う勉強をしても構わない。

本番では、その良質な設計の部分のみを参考にして、別の環境でやれば良い。



169:デフォルトの名無しさん
07/11/08 14:44:45
良質な設計例:

URLリンク(mag.matrix.jp)
>結局,真のRADはDelphiで.それ以外ではGUIツールはサンプルコード生成ツールくらいにとらえた方が良いかも.
>(特にパラメータをコードに埋め込むタイプ)

170:デフォルトの名無しさん
07/11/08 14:55:08
わかってないな

171:デフォルトの名無しさん
07/11/08 15:32:02
わかってなくても使えるC++Builderが好きです

172:デフォルトの名無しさん
07/11/08 15:57:48
その事に関してだけはC++コンパイラ中最強。

173:デフォルトの名無しさん
07/11/08 16:23:49
わかってないな
コンパイラじゃないIDEだ

174:デフォルトの名無しさん
07/11/08 16:27:57
わかってないな
C++Builder製品の分類はコンパイラ

175:デフォルトの名無しさん
07/11/08 16:58:40
わかってないな
ボーランドがOS作ればウィンドウズもここまで糞にはならなかったってことだ

176:デフォルトの名無しさん
07/11/08 17:02:32
わかってないな
Windowsは良いよ。悪いのはヴィジュアルスタジオドットネット(笑)。

177:デフォルトの名無しさん
07/11/08 17:12:51
少しはわかれよお前らw

178:デフォルトの名無しさん
07/11/08 17:23:12
わかってないな
オラ、悟空だ!

179:デフォルトの名無しさん
07/11/08 17:26:16
てっきり天津飯だと思ってた

180:デフォルトの名無しさん
07/11/08 17:48:49
わかってないな
ほんとはクリりん

181:デフォルトの名無しさん
07/11/08 18:08:25
VisualC++が真にヴィジュアルな開発環境じゃなかったのが全ての原因ニダ!

182:デフォルトの名無しさん
07/11/08 18:11:26
マイクロソフトではアレでいっぱいいっぱいだったんですよ

183:デフォルトの名無しさん
07/11/08 18:17:26
初めてVC使ったときの衝撃は忘れられないな
既にVB使った後だったから更に倍って感じだった

184:デフォルトの名無しさん
07/11/08 21:57:02
見た目は似てるからなw
ぱっと見リソースエディタの画面なんか見ると
RADツールじゃないかと勘違いできる

185:デフォルトの名無しさん
07/11/08 22:59:17
3,4の当時C++BuilderはヘルプがMSにくらべて丁寧で使いやすかった。
今でもC標準ランタイムのヘルプなんかはBuilderのを見てしまう。

186:デフォルトの名無しさん
07/11/09 01:29:46
ところでJ#常用してる方いますか?

187:デフォルトの名無しさん
07/11/09 02:21:09
居ませんよ

188:デフォルトの名無しさん
07/11/09 09:34:05
BCB6なんですが、FastMMのインスコ手順をお教え下さい。

189:188
07/11/09 09:46:58
もう一つ教えて欲しいのですが、

C++Builder6→C++Builder2006だと、

2000増えていますが、
FastMM導入で高速化、
STL差し替えで低速化、
であってますか?

具体的にはSTLは何から何に変わったのでしょう?
何で変わったんだろ。

190:デフォルトの名無しさん
07/11/09 23:26:05
FastMMはダウンロードしてプロジェクトファイルのあるフォルダに展開、ではだめですか?
STLは昔はSTLPortだったのがDinkumwareになったらしい。
MLか公式newsgroupで聞いてみたら?

191:デフォルトの名無しさん
07/11/10 03:55:05
>>187
やっぱり居ないですか。
僕もあれは幻かなにかだと思っていたんですよ。J#。

192:デフォルトの名無しさん
07/11/10 08:24:58
.NETなんかに手を出したのが失敗の始まりだったな

193:デフォルトの名無しさん
07/11/10 08:32:03
>>188
FastMM4BCB.cppのコメントに書いてある

194:デフォルトの名無しさん
07/11/10 18:39:26
良質なライブラリやパッケージ設計を知ってないと良質な設計は出来ない。
VCLはロジック系は凝りすぎずに素直だし、UI系の継承関係とイベント処理は見事だよ。

ロジック、継承だけならJavaのAPIもいいんだけど、UIのイベント処理が不便。
.Netのは基本概念はいいんだけど、ロジック系はJavaのデッドコピー(っても良い
設計はにかよるからこれはOK)だし、UI部品に到ってはあの腐れVBの部品の
デッドコピーorz

Javaにせよ、.Netにせよ、まともなGUI組める機構+ライブラリがありゃ、更に普及するのに。


>>186
.NetになくてJavaにあるクラスのパチモンを使用したいときだけ呼び出していたよ。
常用は居ないでしょう。

195:デフォルトの名無しさん
07/11/15 14:27:27
Variant u;
u=u+pDS1->Fields->Fields[0]->Value;
Edit6->Text=u;
u="";
コンパイルは通るのですが、バリアントに対する演算が正しくありません。
と言うエラーがでます。
どうすればいいでしょうか?

196:デフォルトの名無しさん
07/11/15 14:31:41
>>195
Variant u;って初期化しなくてもおkなの?

197:デフォルトの名無しさん
07/11/15 14:38:38
Variantはふつー使わない。

Edit6->Text = Fields[0]->AsString();

じゃね?

198:デフォルトの名無しさん
07/11/15 14:50:06
>>196
>>197
ご教授のとおり
初期化しAnsiStringになおすとエラーもなくなりなした。
ありがとうございました。

199:デフォルトの名無しさん
07/11/15 14:59:24
VariantってのはCOMとかActiveXを扱う専用みたいな。

オブジェクトの値の抽象型って意味では既にTFieldってのが機能する。
AsString、AsInteger、とか。



200:デフォルトの名無しさん
07/11/15 15:07:26
そういやVariantなんてあったっけか
使った事ないや

201:デフォルトの名無しさん
07/11/15 15:31:25
Excelのセル範囲にまとめて値を代入する時だけVariantの配列を使った。

202:デフォルトの名無しさん
07/11/15 15:33:45
いや、それがVariantの唯一の用途だから

203:デフォルトの名無しさん
07/11/15 16:26:51
僕がVariantです

204:デフォルトの名無しさん
07/11/15 16:31:10
じゃあ私はLPSTR 。

205:デフォルトの名無しさん
07/11/15 16:36:32
それならボクはUTF8String

206:デフォルトの名無しさん
07/11/15 16:43:01
しかたがない、俺がvoid *だ


207:char*
07/11/15 16:56:15
>>206
あ、あなたがvoid*!!
われらポインタの主!!へへー!

208:デフォルトの名無しさん
07/11/15 17:10:31
void氏って香具師?

209:デフォルトの名無しさん
07/11/15 17:23:38
for(int i=0;i<10;i++)
Series1->AddXY(random(10),random(10),"",clTeeColor);

TPointSeries、Zoomを何回か繰り返すとポイント消える。
何でなの?

210:デフォルトの名無しさん
07/11/15 18:30:09
僕はTPointSeriesじゃありませんから

211:デフォルトの名無しさん
07/11/15 20:34:12
僕はchar
3倍速いんだぜ

212:デフォルトの名無しさん
07/11/15 21:38:19
>>211
でも、全部赤い文字になるし、角も生えるし…

213:デフォルトの名無しさん
07/11/20 15:34:44
半角カナを全角に変換する方法を教えてください

214:デフォルトの名無しさん
07/11/20 15:36:25
冬休みはまだのはずだが、とにかくbuilderと関係ない

215:デフォルトの名無しさん
07/11/20 16:09:29
BCB6(SP2)でTClientSocketを使用してTCP接続を行った時に、
大量の接続エラーを繰り返すと以下のエラーが発生して
止まってしまいます。
NonBlockingで接続しています。

”Windowsソケットエラー:システムのバッファ領域が不足
しているか、またはキューがいっぱいのため、ソケット操
作を実行できませんでした。(10055)”

対処方法をご存じの方は教えてもらえますでしょうか。

TCPClient1->Open();
これの繰り返しです。
OnError()イベントで接続エラーが発生後再度、Open()を
繰り返しています。

最終的に上記のエラーが出ますがOnError()イベントには
飛んでこないで、OnDisconnect()イベントに飛んできてそ
の後BCBが上記エラーを表示します。
上記エラーはcatchもできません。


216:デフォルトの名無しさん
07/11/20 16:09:53
知らないならレスしないで下さい!ウザイだけです!

217:デフォルトの名無しさん
07/11/20 22:02:45
>>213
無変換キー あるいは F7キー


218:デフォルトの名無しさん
07/11/21 04:42:21
>>213
先頭から順に文字を見て置換していけばいいだけ。
WideStringにぶち込んだ方が文字単位で処理できて楽だった。

219:デフォルトの名無しさん
07/11/21 08:16:04
>>215
非同期をイベントで処理するのが間違いでは?

220:デフォルトの名無しさん
07/11/21 10:45:35
>>213
C++Builderだろ?AnsiStringで出来るんじゃなかったけ?

221:デフォルトの名無しさん
07/11/21 10:51:02
知らないならレスしないで下さい!ウザイだけです!

222:デフォルトの名無しさん
07/11/21 11:05:35
LCMapString

223:デフォルトの名無しさん
07/11/22 17:04:33
エクスプローラーからネットワークで他のPCのフォルダを閲覧に行く場合にユーザー名とパスワードが要求される場合がありますが

プログラムでユーザー名とパスワードを自動的に入力して他PCのフォルダを閲覧しに行く方法はありますか?

224:デフォルトの名無しさん
07/11/22 17:54:51
ある

225:デフォルトの名無しさん
07/11/22 23:25:03
お前いったい何が目的だ

226:デフォルトの名無しさん
07/11/22 23:45:01
>>216>>221
まだそのキチガイレス流行ってたのかwww

227:デフォルトの名無しさん
07/11/23 12:37:02
>223
WNetAddConnection2

228:デフォルトの名無しさん
07/11/24 18:11:44
>>226
コピペなんだろうね。
なんかデジカメ板でも見た気がするしww

229:デフォルトの名無しさん
07/12/10 18:37:40
TListViewで質問ですが
設計時にリストに値を登録しておいてるのですが
フォームのコンストラクタでListView->Items->Clear()をしてもリストがクリアされません
フォームのShowイベントでListView->Items->Clear()をするとクリアされるのですが
これバグですか?仕様ですか?
できればコンストラクタで1回だけやりたいのですが

230:デフォルトの名無しさん
07/12/10 23:24:01
>229
仕様ですね。コンストラクタの段階ではウィンドウが生成されていないのが原因です。

231:デフォルトの名無しさん
07/12/11 08:03:03
コンストラクタの段階でウィンドウはハンドルは既にあるし、ListView->Items->Clear()すれば消えてるけど。
バージョンの違いか?

232:デフォルトの名無しさん
07/12/11 10:39:42
>>230-231
お答えありがとうございます
言い忘れていましたが、C++Builder5 proです。
たぶんこのバージョンだと>>230さんの言うとおりだとおもうのですがいまいち使いづらいですねこれ

例えば今はForm1のコンストラクタでFormをnewして作成
Form1のグリッドがクリックされるとForm2を表示として
Form2はListViewしかなくここのコンストラクタでiniファイルを読んでリストを作成しているので・・・
Showイベントでリストを作るとグリッドをクリックされるたびに毎回無駄にiniファイルを読んでリストを作ってって
するのを回避したかったのですが・・・


233:デフォルトの名無しさん
07/12/31 09:25:57
すいません、求人の採用条件にVC++経験者が多いのですが、
TurboC++とかBDS2006とかの経験持ちで採用している会社を
探してます。
教えてください。


234:デフォルトの名無しさん
07/12/31 09:50:15
アンチ乙

235:初心者
07/12/31 15:30:39
C++builder2007 だけど
installaware でインストールプログラムをつくったら
vista で
システムポリシーがどうのこうの
このインストールはできないのこうの
とインストールを拒否された。
xp はだいじょうぶなんだけどなぁ。
どないしたらいいねん?

236:デフォルトの名無しさん
07/12/31 15:40:16
>>233
確かにVC++経験じゃないと嫌だ!と言う面接官もいるかも知れないが
受かりたいなら嫌でも経験者だと言うだろ
そして経験者ってのも曖昧だ

237:デフォルトの名無しさん
07/12/31 16:32:24
>>233
そういう条件の会社は使い捨て派だから止めといたほうが無難かと

238:デフォルトの名無しさん
07/12/31 18:24:31
それでも誰かが消費されなければならないのだから、あえて突貫する漢を止める事もあるまい。

239:デフォルトの名無しさん
08/01/02 03:46:28
VCも覚えればいいだろ

240:デフォルトの名無しさん
08/01/08 12:33:18
フォームにEdit1をおいてFormMouseWheelイベントを取得すると、
フォームとEdit1でイベントを取得してしまって、
計2回呼ばれてしまいます。どうすればいいのでしょうか

241:デフォルトの名無しさん
08/01/08 12:43:53
bool &Handled

242:デフォルトの名無しさん
08/01/08 12:45:16
>>233
会社に入ってしまえば、C++Builderに変更可能だお。
そうこうしてるうちに、MFC禁止令を出せばみんな納得する。
MFCはプロジェクトを越えてダイアログを使いまわせないことを理由に社内禁止しますた。

但し、受託は除く。

243:240
08/01/08 12:56:39
Handled = True; でうまくいきました。ありがとうございました!

#ShowMessage(((TComponent*)Sender)->Name);で表示させると、
#Form1から3回も呼ばれてました。。

244:デフォルトの名無しさん
08/01/08 14:11:13
スクロールバーをプロポーショナルにしたいのですが、
Pagesizeの算定方法で定石ってありますでしょうか?

245:デフォルトの名無しさん
08/01/11 17:44:36
>>244
ある


246:デフォルトの名無しさん
08/01/14 21:33:01
C++Builder 2007、Visual Studio 2008
ずばり、どっち買ったらいい?!!

247:C++Builderスレなんだから
08/01/14 22:13:00
C++Builderに決まってるだろ、常識で考えて。

248:デフォルトの名無しさん
08/01/14 23:03:37
うむ

249:デフォルトの名無しさん
08/01/14 23:05:10
>>246
マジレスするとVisual Studio 2008。

250:デフォルトの名無しさん
08/01/15 08:10:30
VSは無料版で十分。買う必要はない

251:デフォルトの名無しさん
08/01/15 08:24:18
そりゃぁ君はそれで十分だけど。

252:デフォルトの名無しさん
08/01/15 18:31:52
買うことに関しては意見が割れますたが、
使うべきは C++Builder 2007 です。

253:デフォルトの名無しさん
08/01/15 20:37:05
C++Builder 2007買って
シェアウェア作って
VS2008を買う。


これ最強!

254:デフォルトの名無しさん
08/01/15 21:19:50
ノンノン
VS2008買う→シェア作る→儲かる(゚д゚)ウマー

255:デフォルトの名無しさん
08/01/15 21:37:21
それは、まあ夢。 
まだ、 Delphi無料版→シェア作る→儲かる→C++Builder 2007買う→シェア作る→もっと儲かる
こっちの夢の方が現実味がある。

256:デフォルトの名無しさん
08/01/15 21:42:47
シェアウェア(笑)

257:デフォルトの名無しさん
08/01/16 00:02:53
まてまて
BCB、Delphiでアプリ作るのと
MFCで作るのは労力が10倍くらい違うぞ
幾ら最新版の2008買おうが
VC+MFCの面倒さは微塵も変わらん
それにVCLみたいな便利なパーツもないよ
Win32のもってるベースパーツのみ

それともマネージドでつくったもんがシェア?w
だいたいシェアで儲かるとかどこの国の話だよ
どこかのおっさんがVBでアドレス帳つくって
それを1000円のシェアにしてたのを思い出したよ
だれが買うんだよ

>250
ExpressとStandardでは雲泥の差があるんだが
特にVCやるんだったらMFCいるだろうが
安いんだからStandardくらいは買えや

258:デフォルトの名無しさん
08/01/16 09:15:02
BCB IDEでMFCのスケルトン作成してですね‥‥

259:デフォルトの名無しさん
08/01/16 09:16:27
MFCで画面作成はカンベン

260:デフォルトの名無しさん
08/01/16 09:18:48
MFCで画面作成は簡便

261:デフォルトの名無しさん
08/01/16 10:09:38
     *      *
  *  うそです   +  
     n ∧_∧ n
 + (ヨ(* ´∀`)E)
      Y     Y    *


262:244
08/01/16 14:57:54
勘違いして他のですが、PageSize = 1; で勝手にプロポーショナルになりました;;

263:デフォルトの名無しさん
08/01/16 15:10:08
勘違いしないでください

264:デフォルトの名無しさん
08/01/16 15:13:05
ScrollBar1->Position = 0;

としたときに

ScrollBar1Change イベントを発生させたくないのですが、
どうしたらいいのでしょうか。

265:デフォルトの名無しさん
08/01/16 15:15:42
TNotifyEvent a = ScrollBar1->OnChange;
ScrollBar1->OnChange = NULL;
ScrollBar1->Position = 0;
ScrollBar1->OnChange = a;

266:264
08/01/16 15:18:32
おお、イベントハンドラを一時的に退避させるのですね。。
速レス謝謝です!

267:デフォルトの名無しさん
08/01/16 15:22:48
どういたしました

268:デフォルトの名無しさん
08/01/18 19:49:24
ListViewで特定の行の特定のサブアイテムの値を変更する方法が解りません;;
ListView1->Items->Item[SelectedRow]->SubItems->SetText("###");
だとだめですた

269:デフォルトの名無しさん
08/01/18 19:58:18
AnsiString TListItem::SubItems::Strings[int]

270:268
08/01/18 20:06:15
毎度ありがとうございます。。
Visual StudioはIDEが助けてくれるのですが、
C++ Builderは情報も少なくて難儀しています;;

271:デフォルトの名無しさん
08/01/19 07:12:27
結局、Pascal側のソースを読まないとね。

272:デフォルトの名無しさん
08/01/19 15:10:23
それくらいはヘルプ見れば分かるでしょ

273:デフォルトの名無しさん
08/01/19 21:12:23
まあそうだね。
BCBだとポインタだから直接[]が使えないんで、Strings[]とかItems[]とかになる、ということが
わかってないとPascal読んでも解決しないし
逆に、わかってればヘルプのプロパティで見当つくしね。
補完に頼るといらいらするし。

274:デフォルトの名無しさん
08/01/19 22:07:54
BCBは補完に頼る軟弱物は斬り捨てる。
逆にVSのオートマシンはすばらしく軽い。

275:デフォルトの名無しさん
08/01/20 20:56:35
ResizeKit1.5 C++Builder6
これ使ってる人いんの?

276:デフォルトの名無しさん
08/01/20 23:42:40
それだけのために1万円は出せねーな

277:デフォルトの名無しさん
08/01/21 01:44:15
画面の解像度なんてめったに変えないだろ
液晶使ってたら固定されてるようなもんだし

278:デフォルトの名無しさん
08/01/21 16:47:18
2006でD&Dの部分を

HDROP &Drop = (HDROP)Message.Drop;

と書いていたのですが、2007だと

[BCC32 エラー] Unit1.cpp(143): E2357 参照は 'void *' で初期化されているが 'void *' 型の左辺値が必要

のエラーが出てしまいます。なぜでしょうか


279:278
08/01/21 16:58:21
HDROP &Drop = (HDROP)Message.Drop;
int Files = DragQueryFile( Drop, 0xFFFFFFFF, NULL, 0 );

と書いていたものを、

int Files = DragQueryFile( (HDROP)Message.Drop, 0xFFFFFFFF, NULL, 0 );

とすればコンパイル通りました。むむむむ


280:デフォルトの名無しさん
08/01/21 17:54:12
よく知らないけど
typedef void *HDROP;
だろうとすると

わざわざHDROP(=void*)を参照で受ける意味がわからん。
エラーは、「キャストした型は左辺値じゃない」から出てるんだろうし。

281:デフォルトの名無しさん
08/01/21 17:56:02
つまり、
>HDROP &Drop
がポインタ評価されてたのが2006、
参照とポインタとちゃんと別にしたのが2007ってことだね。

282:278
08/01/21 18:57:08
なるほどー。ちなみに、
URLリンク(www.geocities.co.jp)
を参照してました。

283:278
08/01/21 19:00:11
さらに質問なのですが、2007で、

#difine NAME "わっしょい";

Form1->Caption = NAME "前田";

ってことはできないんでしょうか。gccではできました。

284:デフォルトの名無しさん
08/01/21 19:06:12
わっしょいのセミコロンいらんべ

285:デフォルトの名無しさん
08/01/21 19:15:44
できません

286:278
08/01/21 19:16:25
ハッΣ(゚Д゚;)セミコロンがあると、

Form1->Caption = "わっしょい"; "前田";

と置換されて後ろの文字りてらるが無視されるのですね!
レベルアップした鐘の音が聞こえます。


287:デフォルトの名無しさん
08/01/21 19:18:20
どっちみちできません

288:デフォルトの名無しさん
08/01/21 19:25:05
え? できないの?

289:278
08/01/21 19:30:00
セミコロン外したらできました

290:デフォルトの名無しさん
08/01/21 19:34:59
あ、できないって書いてる奴の言いたいことわかった

#difine

じゃだめだな

291:デフォルトの名無しさん
08/01/21 23:06:52
Cプログラマの為に、ポイントをまとめたドキュメントを販売しています。
プロのプログラマでもあまりにレベルが低い人が多すぎます。
そんな人に限って、自分のレベルの低さを自覚していない、、、
 本人は構わないかもしれませんが、その下についた新人プログラマは
たまったものではありません。(私が経験しました。)
 今になって分かりました。
彼らもまた、理解できていなかったのです。
 プログラミング言語の一番の習得の近道はきちんと理解している人にアドバイスをもらうこと。です。
私のC言語に取り組んだ7年間をすべてぶつけたつもりでテキストを作りました。
 私の会社の後輩からは、どんなテキストよりもわかりやすかった!や、
今まで教えてくれていた先輩や、テキストたちが、ちゃんと理解できていないことがわかりました。
と、嬉しいコメントをたくさんもらいました。
そしてなにより、彼らの社内での評価がとても高いということが、私の誇りです。
 興味がある方はどうか、下のサイトをみてみてください。
URLリンク(mori.eco.to)

292:デフォルトの名無しさん
08/01/22 03:32:54
たけーよ

293:デフォルトの名無しさん
08/01/22 09:12:05
TurboC++(C++Builder2006) Explorerは\0です

294:デフォルトの名無しさん
08/01/22 13:05:38
今さらCってどうなのよw

295:デフォルトの名無しさん
08/01/22 13:26:05
今更Cってどうなのよって言う奴ってどうなのよw

296:デフォルトの名無しさん
08/01/22 14:02:24
少し興味はあるけど、Cマガジンの春の特集程度かも

297:デフォルトの名無しさん
08/01/22 15:14:56
\8800って高杉
誰が買うかよカス

298:デフォルトの名無しさん
08/01/22 15:26:02
構造体、もしくはクラスをTObjectListで管理したいのですがうまくいきません。

class test {
public:
AnsiString fileName;
AnsiString fullPath;
} foo;

foo.fileName = "momomo";

TObjectList *list = new TObjectList;
list->Add( foo );

なコードを試したのですが、

[BCC32 エラー] Unit1.cpp(28): E2034 'test' 型は 'TObject *' 型に変換できない
[BCC32 エラー] Unit1.cpp(28): E2342 パラメータ 'AObject' は TObject * 型として定義されているので test は渡せない

と出てきてしまいます。何処がいけないのでしょうか。
またTObjectListから格納した構造体に list->Items[0]->fileName なんてあくせすできるのでしょうか?

299:デフォルトの名無しさん
08/01/22 15:34:00
TListには静的確保したオブジェクトは格納できない。
test* foo = new test()で確保してポインタを渡すか、std::vector<test>を使う。

test foo;
list->Add(&foo);
はスコープ抜けた時点で実体が消滅するからやっちゃダメ。

300:デフォルトの名無しさん
08/01/22 15:36:57
list->Add( (TObject*)&foo );

301:デフォルトの名無しさん
08/01/22 16:38:39
上記で追加されたようですが、取り出し方が解りませんT-T

list->Items[0]->fileName;

では取り出せませんでした。
test でキャストするのでしょうか。。?

302:デフォルトの名無しさん
08/01/22 17:00:44
>>299-300は無視なの?
お礼なし?聞くだけ?基地外?

303:デフォルトの名無しさん
08/01/22 17:12:34
ええー無視なんかしてないですよー「上記で追加されたようですが」って引用してますし、
最初の質問でアクセス方法も書いたので、
アクセスできてからまとめてお礼をしようと思ってました……

304:デフォルトの名無しさん
08/01/22 17:39:15
>今更Cってどうなのよって言う奴ってどうなのよw

せめてC++だろ。

305:デフォルトの名無しさん
08/01/22 19:24:14
>>304
Linuxとかの/usr/binの中の多くはまだまだ、そしてこれからもCな現実。

306:デフォルトの名無しさん
08/01/22 19:26:17
TObjectListがどうしても理解できなかったので、
std::vectorを使うことにしました。ありがとうございました。

って>>302、あなた誰なのよ

307:デフォルトの名無しさん
08/01/22 21:06:10
>>302たまに出てくるあれだな、
自分が答えてないのにえらそうな態度とりたい香具師

308:デフォルトの名無しさん
08/01/22 21:18:11
303 != 301 と打ち間違ったのだと思ってた

309:デフォルトの名無しさん
08/01/22 21:41:49
( 303 != 301 ) == True;

310:デフォルトの名無しさん
08/01/23 00:50:32
>>305
Cなんて誰でもできる
もっと他のがいい

311:デフォルトの名無しさん
08/01/23 09:49:53
じゃあDelphiやれば

312:デフォルトの名無しさん
08/01/23 15:12:02
すでにフォームに貼り付けてあるTImageにpublicな変数を追加したいのですが
どうやったらできますか?

313:デフォルトの名無しさん
08/01/23 15:19:26
TImage継承してフォーム上のTImageを置き換えてしまう。
 置き換えるのは
URLリンク(delwiki.info)
コレを書き直すか、パスカルユニット新規作成してプロジェクトに追加する

314:デフォルトの名無しさん
08/01/23 15:25:14
>>313
あー!
こんなことできるんですね。
つかやっぱTimageを継承してクラス作る以外にないですよね
ありがとうございました

315:デフォルトの名無しさん
08/01/23 15:36:46
>>314

Tag プロパティでは足りないの?
文字列ならCaption・Hintに突っ込むとか
ポインタなら Components に突っ込むとか

316:デフォルトの名無しさん
08/01/23 15:40:13
自分なら、ポトペタするときはTPanelを貼り付けておいて、

TImageEx *ImageEx = new TImageEx(this);
ImageEx->Align = alClient;
ImageEx->Parent = PanelImage;

とかする。

317:デフォルトの名無しさん
08/01/23 15:40:15
32bit幅の値ならproperty TComponet.Tag : Integerを使うという手も

318:デフォルトの名無しさん
08/01/23 15:45:33
>>314
Tagの他にもう1つほしかったんですよ!

>>316-317
みなさんいろいろ工夫してるみたいですね

んで、Tagじゃ足らんからHelpContextも使おうっておもってたんですが
TImageにそれないんですよね・・・
ちなみに、Hintも使ってます・・

319:デフォルトの名無しさん
08/01/23 15:54:55
この際、Tagにクラスポインタを‥‥

320:デフォルトの名無しさん
08/01/23 16:01:02
Tagにポインタをぶち込むのも考えてましたが・・・
できればTImageだけの閉じたあれでしたかったので
ちょいと皆様に良い知恵があったら戸おもいかきこみいいfなsんふぁ

321:デフォルトの名無しさん
08/01/23 16:02:46
>Tagにポインタをぶち込むのも考えてましたが・・・

たしかに、これではクラス派生のOOPにならないから良くない。

316の場合、綺麗にファイル単位でクラスを分けれて作成&メンテしやすいお。

322:デフォルトの名無しさん
08/01/23 16:09:46
>>321
えーっと>>316さんの策はとりあえずフォームに
Imageを貼り付ける場所にPanelを貼り付けて
んで実行時にPanelをコンテナとしてその上にTImageを継承したクラスを
のっけるってことでいいですか?

323:デフォルトの名無しさん
08/01/23 16:18:38
>>322
その通りです。
コンストラクタでのっけてます。
deleteはしなくてもおk。

TImageクラスとかの名前を、
TImage_(用途).cpp とか T(用途)Image.cpp
にしてまつ。

324:316
08/01/23 16:19:57
>コンストラクタでのっけてます。

の場合もありますし、
何度もデータを入れ替えしたい場合は、
キッチリ削除したいので、

Form::init メソッドでのせる場合おあるかな。

325:デフォルトの名無しさん
08/01/23 16:33:05
>>323
なるほどなるほど。
しかしこの場合はイベントハンドらはどうしていますか?
予めダミーっぽいTImageでClickとか設計時に作っちゃってから
TImageExのnewしてからわりあててますか?

326:316
08/01/23 16:57:30
>>325
そうそう、目が効いてますね。
イベントハンドラがちょっぴりテクニックです。

TForm1に、
>void __fastcall Event_OnClick(TObject *Sender);
みたいな感じで手書きでイベントハンドラ作っておきます。
そうしてTImageExをnewしたあとに、イベントハンドラを外からセットします。

ちょっと読むと、え”ーという感じかもしれませんが、意外にこれに利点があります。


1.イベントハンドラの無い派生クラスなので、複数画面で共有しても全く弊害無し
2.Form1のイベントハンドラとして書くので、TImageExと他の例えばTGridExと
 それらのオブジェクトが連携するように記述できる上、
 それらのオブジェクトが互いに参照しない

327:デフォルトの名無しさん
08/01/23 17:02:03
派生クラス作るんなら派生クラス内にイベント書いてコンストラクタで入れちゃえばいいんじゃないん?

class TxxImage : public TImage
{
public:
TxxImage() : TImage() { OnClick = TxxImageClick; }
private:
TxxImageClick(TObject* Sender) { ... }
};

328:316
08/01/23 17:04:56
>>327
いや、やっぱ、イベントハンドラはForm1のものとして書いたほうが、色んなオブジェクトにアクセスできるお。

逆にTxxImageに色んなオブジェクトアクセス参照用にプロパティ付けようもんなら、
TxxImageが依存するものが増えちゃう。

329:デフォルトの名無しさん
08/01/23 17:08:48
>>326
なるほろ。イベントハンドらの指定はわかりました
利点についてはまだ納得できるレベルに到達していないので精進致します

>>327
それならイベントからフォームをアクセスしたい場合に困ったりしないですか?


330:デフォルトの名無しさん
08/01/23 17:11:07
あー、イベントから他のコントロールへのアクセスは考えてなかったわ/ ,' 3  `ヽーっ

331:316
08/01/23 17:13:40
氏ぬんじゃない

332:デフォルトの名無しさん
08/01/23 17:18:43
しかし皆さん色々とうまい方法を持っていますよね
久々に良い勉強になりますた(;´Д`)

333:デフォルトの名無しさん
08/01/23 18:23:00
BCB5で起動直後メインウィンド以外のフォームをShowModalで表示するとき
一番いいと思われる方法はどんなものがありますか?
おしえてエロい人!


334:デフォルトの名無しさん
08/01/23 18:27:55
起動直後に、

Form2->ShowModal();


335:デフォルトの名無しさん
08/01/23 18:31:40
>>334
ありがとうエロい人!
Application->Run();の直前あたりに書くの?
そうするとメインウィンドは表示されるの?


336:デフォルトの名無しさん
08/01/23 18:36:18
マルチスレッドじゃないんだから、Runの前じゃそこでダイアログが表示されるだけだろ

フォームにタイマーでも入れて、最初の1回目でやればいいじゃない

337:デフォルトの名無しさん
08/01/23 19:01:25
Idle

338:デフォルトの名無しさん
08/01/28 09:12:55
OnCreateでメッセージ投げるとか

339:デフォルトの名無しさん
08/01/29 00:39:40
>333はきっとスプラッシュウィンドウを出したいんじゃないかな、と勝手に考えてみたり。
Delphiならそのフォームをinitialization部でCreate/Show/Updateして、そのフォームの
OnDeactivateイベントでReleaseとするのが定石なんだが。C++Builderだと
initialization部にあたるのはどこなんだろう?

340:デフォルトの名無しさん
08/01/29 08:42:09
スプラッシュなら、それこそ何時でも好きなタイミングで表示してくれって感じだが。

341:デフォルトの名無しさん
08/01/29 09:58:47
initialization部相当は
クラスのインスタンスをグローバル領域で定義して、そのコンストラクタでやるとか

342:デフォルトの名無しさん
08/01/29 19:25:47
>>339

WinMain関数のApplication->Initialize();の後ろ辺りでnew/Show/Update。
表示後にメインフォームとか作ってApplication->Run();の前辺りでClose


343:デフォルトの名無しさん
08/01/29 20:02:10
だからcloseはIdleでやるつってるだろ!!このばかちんが!

344:デフォルトの名無しさん
08/01/29 21:02:43
C++Builder 6を使っているのですが。
TPageControlで最後のページを削除した後、
先頭のページがアクティブになってしまいます。
そうでなくて、削除したページの一個前をアクティブに
したいのですが、どうすれば良いでしょうか。
以下のコードだと、一瞬変な表示になってしまいます。
ちなみに最後のページ以外は、普通にdeleteすれば
そのような現象はおきません。

//最後のページを削除
TTabSheet *pLastPage = PageControl1->Pages[PageControl1->PageCount -1];
delete pLastPage;
//先頭のページがアクティブになってしまうので、
//最後のページがアクティブになるように選択
PageControl1->ActivePageIndex = PageControl1->PageCount -1;


345:デフォルトの名無しさん
08/01/30 03:38:47
一個前のページをアクティブにしてから削除してもダメ?

346:デフォルトの名無しさん
08/01/30 08:40:05
スプラッシュウィンドウごとき、そんなに凝ったり議論したりするものでない。

出て消えれば、おk。

347:デフォルトの名無しさん
08/01/30 10:01:09
>>345
344です。
一個前をアクティブにしても、結局先頭がアクティブになってしまいます。
C++BuilderのIDE自体は何気に出来てるのに、そのコンポーネントで出来ないとは、
いやな感じだ。

348:デフォルトの名無しさん
08/01/30 10:13:34
TPageControl::RemovePage()をオーバーライドしないと無理っぽい

349:デフォルトの名無しさん
08/01/30 10:22:34
delete pLastPageの前に、pLastPage->PageIndex = pLastPage->PageIndex - 1 を入れれば?

350:デフォルトの名無しさん
08/01/30 10:36:25
>>349
VCLのソース見るとタブ削除時にページ切り替え動作やってるから駄目だと思うお

351:デフォルトの名無しさん
08/01/30 10:37:23
いや。ソース見た上で言ってるよ。

352:デフォルトの名無しさん
08/01/30 10:45:53
ああ、削除前に最後のページを後ろから2番目に移動させるのか。

353:デフォルトの名無しさん
08/01/30 10:50:09
削除前にタブの順番が変わるけど即時描画じゃないから、入れ替え動作は全く見えないはず。

354:デフォルトの名無しさん
08/01/30 14:39:38
役に立たない答えばっかりですね・・・

355:デフォルトの名無しさん
08/01/30 14:44:27
君が役に立つ答えを言ってもいいんだよ

356:デフォルトの名無しさん
08/01/30 14:53:09
349ので何か不満あんのか

357:デフォルトの名無しさん
08/01/30 14:54:52
>>356
それでいけるはず。
C++Builder6って結構モッサリした仕様のコンポーネント多いよなぁ。

358:デフォルトの名無しさん
08/01/30 16:09:43
344です

//最後のページを削除
TTabSheet *pLastPage = PageControl1->Pages[PageControl1->PageCount -1];
pLastPage->PageIndex = pLastPage->PageIndex - 1
delete pLastPage;

>>349のやり方ですが、大体の場合はうまく行くのですが、
タブをたくさん作って、最後のタブをユーザの操作などで何回も消していくと
タブが表示されなくなり、その状態でタブ表示のスクロール見たいのを
操作すると、中途半端にタブが描画されてしまいます。
Refresh()やInvalidate()などを使っても描画されません。
やはり、最後のタブを消したときに、先頭がアクティブになるのは、
この辺がうまく行かないから、そうしたのではないと考えてしまいます。


359:デフォルトの名無しさん
08/01/30 16:45:16
そういえばIDEのエディタのタブもそうなるな

360:デフォルトの名無しさん
08/01/30 17:00:29
最後のタブ消した時だけ PageControl1->ScrollTabs(1) とか

361:デフォルトの名無しさん
08/01/31 20:25:56
344です
>>360 の内容を参考にして見てソースを修正したところ、
一瞬表示がびくつくのと、右端で最後のタブの表示が半分隠れる
場合があるのですが、描画の不具合などがなくなりました。
もう少し、きれいに動作すればいいのですが。
ScrollTabsの引数は -1 の方が良いみたいです。

//最後のページを削除
TTabSheet *pLastPage = PageControl1->Pages[PageControl1->PageCount -1];
pLastPage->PageIndex = pLastPage->PageIndex - 1
PageControl1->ScrollTabs(-1);
delete pLastPage;


362:デフォルトの名無しさん
08/02/02 21:10:47
ビルダー落としたんだが
各サイトの説明が詐欺でできません。
XPのコントロールパネルからのシステムなんて項目ありませんが
どうするん?

363:デフォルトの名無しさん
08/02/02 21:30:01
もういいやめたクソが
シネよ

364:デフォルトの名無しさん
08/02/02 21:33:18
>>362
PC初心者
URLリンク(pc11.2ch.net)

365:デフォルトの名無しさん
08/02/02 23:23:26
春かと思った

366:デフォルトの名無しさん
08/02/02 23:26:50
うちの大学は春休みだよ

367:デフォルトの名無しさん
08/02/03 10:56:49
まったく初心者に回答すらやらないなんてお前ら醜態をさらしているのか?
俺が醜態を晒しているんじゃない、答える側はお前らだからな。
器の小ささを披露している書き込みが二つだな、恥ずかしい。


368:デフォルトの名無しさん
08/02/03 10:59:29
そのコピペいただき

369:デフォルトの名無しさん
08/02/03 11:02:45
コピペじゃねぇよ
お前がいただくならお前がコピペすんだろ?
まったく、上の奴は相談室で回答しないならここに来るなよ

370:デフォルトの名無しさん
08/02/03 11:03:26
上の奴ってのは>>367とかだよ

371:デフォルトの名無しさん
08/02/03 11:04:33
>>366だよ

372:デフォルトの名無しさん
08/02/03 11:06:50
おっと知的障害の方でしたか
失礼しました

373:デフォルトの名無しさん
08/02/03 11:10:04
>>372
はい身障者差別発言、
まったくどこまで・・・

374:デフォルトの名無しさん
08/02/03 11:11:06
いや文盲か

375:デフォルトの名無しさん
08/02/03 11:12:40
他所でやれ

376:デフォルトの名無しさん
08/02/03 11:16:35
相談室に俺相談者、俺は場違いじゃないけど、チャチャ入れは場違いだ
普通の初心者レベルの質問に春だとか言う場違いな人は荒らしだな

377:デフォルトの名無しさん
08/02/03 11:20:23
他所でやれ

378:デフォルトの名無しさん
08/02/03 11:22:31
もう自演で言い返すのはやめろ、また醜態さらしか。
見ててくだらなすぎる。もともとお前は場違いなんだから、
もう言い返しに必死になってないで去れよ

379:デフォルトの名無しさん
08/02/03 11:26:39
Windowsのコントロールパネルの話ならPC初心者板の範疇だろ。常識的に考えて。

380:デフォルトの名無しさん
08/02/03 11:27:03
暇なの?俺も暇。

381:デフォルトの名無しさん
08/02/03 11:33:30
まだ突っかかってくる辺りがもう・・・
もう最後な、回答してやるのは。
>>379
そんなもん書き方だろ、ボーランドの初期設定からのコントロールパネルの話だし、何言っちゃってるの?
>>380
公言して相手に見せるために言っている辺りがもう・・・

はいここでもうお前らみたいなのとの会話終了、
二度と来るな、書き込みしても放置する

382:デフォルトの名無しさん
08/02/03 11:36:29
(・∀・)

383:デフォルトの名無しさん
08/02/03 11:38:07
ここまで俺の自演

384:デフォルトの名無しさん
08/02/03 11:43:34
ああ、最後にもう一つだけ言っとく。
先に突っかかってきたのはお前らだ。
俺は質問しただけだから、いい迷惑だ。
お前らは醜態から始めちゃったわけだ。
自分で招いておきながらそれに言い返したりして、まったくアホか。

385:デフォルトの名無しさん
08/02/03 11:52:14
362 名前:デフォルトの名無しさん[] 投稿日:2008/02/02(土) 21:10:47
ビルダー落としたんだが
各サイトの説明が詐欺でできません。
XPのコントロールパネルからのシステムなんて項目ありませんが
どうするん?

363 名前:デフォルトの名無しさん[] 投稿日:2008/02/02(土) 21:30:01
もういいやめたクソが
シネよ

364 名前:デフォルトの名無しさん[sage] 投稿日:2008/02/02(土) 21:33:18
>>362
PC初心者
URLリンク(pc11.2ch.net)

-----------------------------
これで完結してるやん

386:デフォルトの名無しさん
08/02/03 12:29:09
>362とか書いてあることがマジ理解不能なんだけど、俺の日本語能力はここまで落ちてしまったのか?

387:デフォルトの名無しさん
08/02/03 12:41:14
>>386
少しはエスパー能力を磨いてみては?

388:デフォルトの名無しさん
08/02/03 13:06:41
春かと思った

389:デフォルトの名無しさん
08/02/03 13:13:06
ほいで、誰か質問の意味がわかったのか?

390:デフォルトの名無しさん
08/02/03 13:28:53
>>389
WindowsXPのコントロールパネル内のシステムのアイコンが見つけられません><

じゃないん?

391:デフォルトの名無しさん
08/02/03 13:32:37
あ、それでいいのか。ボーランドのどうこうって言うからまた別物かと思ってた。

392:デフォルトの名無しさん
08/02/03 22:05:28
開発環境はTurboC++Builderで、
DirectXを使うのにお勧めな環境やライブラリを教えてください

393:デフォルトの名無しさん
08/02/03 22:25:42
Direct3Dとかでゲーム開発するならVisualStudioがおすすめかな>環境
あくまでもBCBでやりたいならとりあえず↓あたり
URLリンク(www.clootie.ru)

394:デフォルトの名無しさん
08/02/03 22:33:00
>>393
ありがとう 調べてみます

395:初心者
08/02/05 21:00:06
Button に Color プロパティがありませんぞ。
どうやって色を設定するのでしょうか。

396:デフォルトの名無しさん
08/02/05 21:47:38
TButtonをOwnerDrawするかTGraphicControlを派生して自作

397:デフォルトの名無しさん
08/02/05 21:48:32
TButtonをOwnerDrawする方法はぐぐればDelphiのソースが簡単に見つかる

398:デフォルトの名無しさん
08/02/05 22:47:16
>395
まぁそういうことなのだが、Microsoft的にはそういうことをしてほしくないらしい。
VisualStyleを適用するとOwnerDrawもうまくいかないような。

399:デフォルトの名無しさん
08/02/06 12:00:36
TImageListで設計時にイメージを追加するとイメージがTImageListのWidthやHeightより
大きい場合縮小して格納とかできますが
これをコードで追加する場合はどうすればいいですか?

400:デフォルトの名無しさん
08/02/08 10:32:26
エクスプローラのフォルダツリーのようにTListViewにフォルダツリーを作ったのですが
そこで指定したパスのノードを開く方法を教えてください

401:395
08/02/09 14:14:51
いろいろありがと。>396 >397 >398
visual studio だと簡単にできるのになぁ。
XMLだとか
ドラッグアンドドロップだとかも
簡単にはできないのはちょっと不満。


402:デフォルトの名無しさん
08/02/09 14:36:48
Visual StudioってかC#だろう?簡単に出来るのは。

403:デフォルトの名無しさん
08/02/09 14:38:31
C# つか.NETか。

404:デフォルトの名無しさん
08/02/09 14:48:49
>>401
VSでVC++とMFCでそのセリフを吐いてみろ
自分がどれだけラクチンにC++を書いてるのかわかる

405:デフォルトの名無しさん
08/02/09 14:59:18
ダイアログベースならよゆーっすよw

406:デフォルトの名無しさん
08/02/09 15:19:56
配置が楽なだけじゃん

407:デフォルトの名無しさん
08/02/09 16:31:18
いや、でも、VCLより確実に楽

408:デフォルトの名無しさん
08/02/09 16:39:25
色ボタンなんてコンポ拾って張りゃいいじゃん

409:デフォルトの名無しさん
08/02/09 16:45:52
それかえって手間だと思う。
コンポーネントの管理がやりづらいからなぁ。

410:デフォルトの名無しさん
08/02/09 16:53:30
一回登録するだけじゃん。てかそんな事のためにVC使うとか自体あほらしいけど。

411:401
08/02/09 17:18:45
>>404
それそれ。
MFCのウワサは聞いてるから
最初から手を出してない。だから C++ は
C++ builder に手を出した。
でも C# はホント、楽だよ。


412:デフォルトの名無しさん
08/02/09 17:43:42
日本語より英語は楽、とかいっても意味はないね

413:デフォルトの名無しさん
08/02/09 17:55:33
( ゚д゚ ) マアマア

414:デフォルトの名無しさん
08/02/09 18:08:35
言語仕様にライブリラリを含めた総合的な生産性で判断して楽とか
言ってんじゃないの?
何、その日本語より英語は楽とかとう例え。頭悪そう。


415:デフォルトの名無しさん
08/02/09 18:13:11
楽とかとう ( ゚д゚ ) マアマア

416:デフォルトの名無しさん
08/02/09 19:49:34
>>411
.NET系の生産効率の高さは周知だよ
C#に限らずVBでもC++/CLIでもね
WinForm使う限りGUIはラクチン
CGもついてるし
なんだけどね……

初学者がいきなりVC+MFCは敷居高すぎるのは確か
BCBなんかでC/C++に慣れてから
MFC+Win32APIの海へ漕ぎ出した方がいい

417:デフォルトの名無しさん
08/02/09 20:44:03
コンポーネントを1回登録するだけ
マジでそれが理想だけど色々と面倒だよね、あるプロジェクトだけで使えるコンポーネント
とか簡単に指定できればいいのに

418:デフォルトの名無しさん
08/02/09 21:31:36
色々ってナニよ。1回登録したら再インストールするまで何もしてないぞ。

419:デフォルトの名無しさん
08/02/09 22:00:36
ぜーんぶまとめて1つのパッケージに入れちゃう人もいるみたいだねぇ。

420:デフォルトの名無しさん
08/02/10 01:06:34
BCBを再インスコしてコンポーネントを入れてたときに作ったコンポーネントを使ってないプロジェクトを開くとエラーになる

421:デフォルトの名無しさん
08/02/10 02:52:19
名前ぶつかったり、コンポーネントは厳選しないとろくなことがないよ。

422:デフォルトの名無しさん
08/02/10 08:03:03
>MFC+Win32APIの海へ漕ぎ出した方がいい

これをやる必然性が0。

>.NET系の生産効率の高さは周知だよ

大丈夫、ドトネトの事は世の中に知られてないから。

>C#に限らずVBでもC++/CLIでもね

これもウソ。
C丼のバージョンうp嵐どころか、managed C++がヒックリかえったね。
ブビに至ってはユーザーがいないから、スクリプトブビ@ドトネトを復活させるとか、割るいとこ鳥。

423:デフォルトの名無しさん
08/02/10 09:17:21
門外漢がドトネトを語るとこんな事言ってしまうという好例

424:デフォルトの名無しさん
08/02/10 14:18:49
VCLの方にろくな進歩がないからストレス溜まってるんだよ
次こそはやっと完全にUnicode対応するそうだけど、おせーよw

425:デフォルトの名無しさん
08/02/10 14:25:28
IBXでUTF-8を楽に扱えるようになるのかい?

426:デフォルトの名無しさん
08/02/10 14:29:25
IBXはーどーだろ、あれそもそももう期待しない方がいいんじゃね

427:デフォルトの名無しさん
08/02/10 17:58:28
>IBXでUTF-8

今でも使ってるよ。

428:デフォルトの名無しさん
08/02/11 00:03:36
再インストールする羽目になった・・・。
また、いちいちプロジェクトファイル編集しなきゃ駄目なのか。
必要ないのに使ってないコンポーネントのlibまで追加するのやめてくれないかなぁ、うざすぎる。


429:デフォルトの名無しさん
08/02/11 00:20:13
TntのDBコントロールにShiftJIS外の文字ぶち込むと盛大に文字化けしてくれる‥‥>UTF-8

430:デフォルトの名無しさん
08/02/11 00:20:44
bprファイルをIDEから編集してもちゃんと保存されないし酷い仕様だよな
後からのことまーったく考えられてないw

431:デフォルトの名無しさん
08/02/12 15:15:59
おしえてください

432:デフォルトの名無しさん
08/02/12 15:16:50
     // 1  . {. . .ヽ. . ヽ. . ',. .ヽヽ
    / .:/ ハ: :!: :.:ト、:.:. :\:...l:.. :}: : |_⊥ 、
    j . {: .:{ :l、:l、: :.ト-ヽ、_:..`ヽ、j__イ_つノ
    l 1:ハ.::{ゝl=くヽ:.ヽ トィjr}Tァ┬ァ:.:´|
    |ハ :ヽlァ{トィrj \i ー_'っ /:.イ-、:。:|
     ヽ。ハ^rぅ' 丶 `   ノ', く } }:.ol゜ o
    。  `ハ 。  {ァ´ヽ     ,ー o':.へl お客様の中にエスパー様は
      ゜ ´ノi\  ー'   ィ:;:.ィ/|/゜ 。 いらっしゃいませんか??
   。 o  。 ゜ハヘ;:>ー--<_rv〈、_
         / ̄ヽ \/ll  }l}`'^'ト、
          /   ::Y77l  j l    !_`7
        l, ---::、〉 jl  l   ハゝ-i
        ヽ    Vi    }  ,' ノ, ー_ヽ
          }  , -‐ァl  ノ  / レ´,.- j
        j イ   !l /   /  ハ -,.く!


433:デフォルトの名無しさん
08/02/12 15:23:58
いいからさっさと教えやがってください

434:初心者
08/02/15 13:57:33
vista + builder2007 だけど
デバッグモードで実行して
open dialog を開いて
詳細表示にすると
builder が落ちちゃう。

435:デフォルトの名無しさん
08/02/15 14:04:58
そうですか

436:デフォルトの名無しさん
08/02/16 00:33:19
Vistaを窓から投げ捨てろ

437:デフォルトの名無しさん
08/02/22 19:35:04
C++Builder 2007の体験版みたいなのないですか?
RAD Studioは今更JSharpのランタイムが必要とか、トチ狂ったことぬかすので
あまり入れたくありません

438:デフォルトの名無しさん
08/02/22 23:17:33
単独のトライアルはないけど、いずれにせよIDEが使ってるんでJ#ランタイムと.NETは必要だからなぁ。
Turbo C++ Explorerでも同じこと。あきらめれ。

439:デフォルトの名無しさん
08/02/23 12:06:26
しかし、なんでJ#なんて使ったんだろうね
MSですら早々に見捨てたのにw

440:デフォルトの名無しさん
08/02/23 15:10:16
IDEのリファクタリングでMS-Javaをつかった流れらしい。APIを呼び出せるのがMS-Java→J#となった理由だと。

441:デフォルトの名無しさん
08/02/24 09:03:08
Lazarusでさえネィティブでリファクタリング搭載してるのにね

442:デフォルトの名無しさん
08/02/25 14:45:13
Indy10 TIdTcpServerの使い方が解らないです。

URLリンク(codezine.jp)
ここを参考にIndy9のdelphiソースをIndy10とBuilder2007に置き換えようとしています。
TCPサーバの例 以下行をどう記述すればよいのでしょうか。詳しい人教えてください。

// 接続しているクライアント全員に str を送信する
procedure TForm1.BroadcastMessage(str : string);
var
 Count: Integer;
 List : TList;
begin
 List := IdTCPServer1.Threads.LockList;
 try
  for Count := 0 to List.Count -1 do
  try
   TIdPeerThread(List.Items[Count]).Connection.Write(str);
  except
   TIdPeerThread(List.Items[Count]).Stop;
  end;
 finally
  IdTCPServer1.Threads.UnlockList;
 end;
end;

443:デフォルトの名無しさん
08/02/26 17:55:53
TListViewで任意のカラムを非表示にする方法を教えてくださいよ

444:デフォルトの名無しさん
08/02/26 22:54:58
WinXP BCB5でこんなコードを書くと意図しない結果が返ってくるんですけど、
使い方が悪いんでしょうか?
型を変えてみようとは思うけど、知ってる方いたら教えていただきたい

std::vector< bool > vectorbool;
for( int i = 0 ; i < 12 ; i++ )
 vectorbool.push_back( true );

vectorbool.insert( vectorbool.begin(), false );
bool test = vectorbool[12]; ← falseが帰ってくる。


445:デフォルトの名無しさん
08/02/26 23:44:17
>443
簡単にはいかないんじゃないかなぁ。ListView_DeleteColumn/ListView_InsertColumnの
組み合わせで頑張るしかないと思う。

446:デフォルトの名無しさん
08/02/27 10:47:50
>>443
Width=0

>>444
あたりまえの結果じゃん。
マジで理解できなのか、それとも釣りなのか?
マジで理解できないのなら、初心者スレに逝った方が良し。


447:デフォルトの名無しさん
08/02/27 10:55:47
目が悪いなら眼科池。頭が悪いなら仕方ないけど。

448:デフォルトの名無しさん
08/02/27 11:08:47
>>446
当たり前の結果なの?
もう一度勉強してみるよ・・。

449:デフォルトの名無しさん
08/02/27 11:16:19
6はちゃんとtrue返すから、5のバグだと思うけど、
それとは関係なくvector<bool>は使わないほうがいいと、
なんかの有名な本に書いてるらしい。

450:デフォルトの名無しさん
08/02/27 11:23:24
>それとは関係なくvector<bool>は使わないほうがいいと、

kwsk

451:デフォルトの名無しさん
08/02/27 12:06:02
>>450
&v[0] が bool* ではない

452:デフォルトの名無しさん
08/02/27 13:25:42
>>449
Effective STLの第18項だな
vector<vool>はproxy classを使っているのでよくないんだと

453:デフォルトの名無しさん
08/02/27 13:26:49
>proxy class

サンクス & kwsk

454:デフォルトの名無しさん
08/02/27 13:36:38
proxy class=代理クラス

More Effective C++ 項目30

一般的にはクラスの中にクラスを作って普通ではできないような
操作を行う。

455:デフォルトの名無しさん
08/02/27 14:56:53
442です。Web検索で中華サイトや英文サイトを彷徨った結果、なんとか解決しました。

456:デフォルトの名無しさん
08/02/27 16:47:15
結局おまえらって糞の役にも立たなかったね。あばよ

457:デフォルトの名無しさん
08/02/27 22:48:08
>>449
ありがとう。
VCでやってみてもtrueでした。
なんとなくわだかまりが取れました。

458:デフォルトの名無しさん
08/02/27 22:49:50
つまりRogue Waveのバグか
こいつバグ多いねえ

459:デフォルトの名無しさん
08/02/28 14:15:17
std::fstreamはstd::iostreamから派生しており、std::iostreamは
std::ostreamとstd::istreamから多重継承しています。

しかしstd::ostreamを受け取る関数にstd::fstreamのオブジェクトを
渡してCodeGuardを掛けると多量のエラーメッセージが実行時に
出ます。これって仕方ないのですか?

460:デフォルトの名無しさん
08/02/28 15:04:15
はい

461:デフォルトの名無しさん
08/02/28 15:19:28
糞仕様だな。アップキャストにも対応してないのか

462:デフォルトの名無しさん
08/02/28 15:32:24
はい

463:デフォルトの名無しさん
08/03/01 22:36:44
もしかして、BCBってboost::trim()使えない?


464:デフォルトの名無しさん
08/03/02 14:12:27
はい

465:デフォルトの名無しさん
08/03/03 08:23:42
いいえ


466:デフォルトの名無しさん
08/03/03 09:36:59
バージョンくらい書けよ

467:デフォルトの名無しさん
08/03/03 10:12:33
BCB5でTQueryを使って2秒おきにデータを取得しているのですが
数分放置しておくとソフトが落ちてしまいます。
やっていることは
Query->SQL->Clear( );
Query->SQL->Add( "select * from table1" );
Query->Open( );
Query->First( );
Query->Next( );  30件くらい
Query->SQL->Clear( );
Query->SQL->Add( "select * from table2" );
Query->Open( );  ここで落ちます
Query->First( );
Query->Next( );  10件くらい
と1つのモジュールで同じTQueryで2つのテーブルを読んでいます
TQueryを使う際になにか注意事項とかありましたら教えてください

468:デフォルトの名無しさん
08/03/03 10:15:17
>>467
例外とかチェックした?

469:デフォルトの名無しさん
08/03/03 10:17:18
2秒でデータを取得が終わる前に、QueryのOpen() を実行したらデータセットがメモリから破棄されて、そこにアクセスしたr落ちるんじゃね?

>TQueryを使う際になにか注意事項

2秒以内に処理が終わらなかったら、処理をスルーするって工夫要るけど。
それに加えてQuery使いまわすんじゃなくて、作り直したら?

Query = new TQuery(this);
try {
 Query->SQL->Clear();
 //処理
__finally {
 delete Query;
}

470:デフォルトの名無しさん
08/03/03 10:27:48
>>468
try内でやっているのですがcatchにはいかずにそのまま落ちてしまいます
>>469
TTimerで2秒間隔でやっていてTimerに入るとタイマーを止めているので
一応DB読み込みが再度呼ばれることはありません。
Queryでテーブル2つを読むより毎回newしたほうがいいのでしょうか?

471:467
08/03/03 10:37:14
ちなみに、Query1でtable1、Query2でtable2と
Queryを2つにしてやってみたのですがやっぱり強制終了してしまいます

ソフト起動時に設定
Query1->SQL->Clear( );
Query1->SQL->Add( "select * from table1" );
Query2->SQL->Clear( );
Query3->SQL->Add( "select * from table2" );

{
  Query1->Open( );
  Query1->First( );
  Query1->Next( );
  Query1->Close( );  ここで必ず強制終了します

  Query2->Open( );
  Query2->First( );
  Query2->Next( );
  Query2->Close( );
}


472:デフォルトの名無しさん
08/03/03 10:40:44
レコード件数は可変?

1回多くNextしたりするとドカンと落ちる現象はあったような。

473:467
08/03/03 10:50:50
>>472
可変ではありますが
query->First( );
for( int i = 0; i < query->RecordCount; i ++ ){
  query->FieldByName
  query->Next( );
}
としています・・・

ちなみに落ちる場所は同じなのですがタイミングはそれぞれで
1分で落ちる時もあれば5分で落ちる時もあります。
1回目で落ちるということは今のところありませんが・・・

474:デフォルトの名無しさん
08/03/03 10:52:56
>for( int i = 0; i < query->RecordCount; i ++ ){

これ、マズイとオモ。

>while (!Query->Eof) {
みたく、次が有るか無いかの判定じゃないと。

上にも書いたが無いのにNextすると、catchできずにドカンと落ちる。


475:467
08/03/03 10:56:59
>>474
うわー
やっぱりTQueryがまずいんじゃなくて処理がまずいですか・・・
今はレコード数に変化がなくその処理でレコード数が同じだったからいいとおもってましたが
見方がわるかったんですね、ありがとうございます。
その方法で試してみます。

476:467
08/03/03 11:06:02
うう、やっぱりCloseで落ちてしまいます・・・
しかし>>474さんのやりかたはヘルプにも書いてあったので参考になりました。

ちなみにtable1の方のQueryをためしにnewして動的に作成してやってみたところ
今のところ落ちてないです。
うーん、設計時に追加したのと動的にnewしたものと何が違うのかなあ・・・
これtable2もnewで作成したqueryを使う方が安全なのかな・・・

477:デフォルトの名無しさん
08/03/03 11:11:49
>query->FieldByName

してる最中に、該当レコードが消えてる可能性は無いの?
該当レコードが消えるなら、RequestLive を falseにしてる方が良いかなぁ。

478:467
08/03/03 11:30:19
>>477
レコードが消えることはありませんがRequestLiveはtrueにしてます・・・

やっぱりnewで作ったqueryでやると落ちないのですが
これってRequestLiveがfalseだからなのでしょうか???
ちょっと試してみます

479:デフォルトの名無しさん
08/03/03 11:33:28
>newで作ったquery
>RequestLiveがfalse

落ちる原因は分からないが、上記2つを揃えるQueryは氏ぬ程安定する。

480:467
08/03/03 11:43:17
>>479
確かにnewでつくったqueryでは全く落ちなくなりました。
ちなみに、試しに当初のに戻して設計時に追加したqueryで
RequestLiveをfalseにしてやっているのですが
これもまた今のところ落ちていません。
これ2秒毎にDBを読んでいるのですが、DB読み込み時にnewするのと
起動時の最初にnewするのとどちらがいいでしょうか?

481:デフォルトの名無しさん
08/03/03 11:55:35
>DB読み込み時にnewするのと 起動時の最初にnewするのと

Queryをグローバルとして使いまわしはソース読みにくかったりするが、上記2つは大差無いんでわ?

482:467
08/03/03 11:56:07
皆様いろいろありがとうございました。
RequestLiveをfalseにするだけで落ちなくなりました。
なんかこれ片方向しかあれとか書いてたからこれをtrueにしないと
書き込めないとおもってtrueにしてたのですが(この同じQueryで別タイミングで書き込みもしてます)
これselect時のみのあれだったんですね。

ちなみにUniDirectionalはtrueでいいのでしょうか?
メモリ節約になるとかかいてますので

483:デフォルトの名無しさん
08/03/03 11:57:26
>ちなみにUniDirectionalはtrueでいいのでしょうか? メモリ節約になるとかかいてますので

聞いた事歩けど、気にしたことは無い。

484:467
08/03/03 11:58:23
>>481
そうなんですよね、グローバル化は見づらくなるのですが
なんというか2秒毎にnewしてdeleteしてって繰り返しても大丈夫なのかなとか・・・
1ヶ月とか放置するので何か昔のmallocのイメージがあってちょっと不安になったので

485:デフォルトの名無しさん
08/03/03 12:05:13
>なんというか2秒毎にnewしてdeleteしてって繰り返しても大丈夫なのかなとか・・・

大量のnewや大量のdeleteは性能に関係するかも知れないが、
2秒にnewとdelteの嵐なんてC++ではちょーふつーできごと。

486:467
08/03/03 13:08:40
>>483
これはtrueのままでも落ちるのとは無関係みたいなのでそのままにしておきます。
>>485
あ、そうなんですか。それを聞いて安心しました。
まあVCL使ってると内部で山ほどしてるでしょうし問題ないですよね。

487:デフォルトの名無しさん
08/03/03 13:10:45
>大量のnewや大量のdeleteは性能に関係するかも知れないが、

正しくは、
>超大型メモリのnewやdeleteは
かな。

488:デフォルトの名無しさん
08/03/04 01:01:59
心配してるのは断片化だろ? サイズの違うメモリーを確保・開放を続けると
メモリの利用箇所が虫食いになって最後は使えなくなるという。

これは今の組み込みや、昔のPCのようにメモリ容量の制限がキツイと困る問題だけど
必要なメモリの何10倍もある現代のパソコンでは問題にならない。

489:デフォルトの名無しさん
08/03/04 02:14:05
Windowsなら・・・きっとWindowsなら何とかしてくれる・・・

そう信じてnew-deleteしまくってます。。。

490:デフォルトの名無しさん
08/03/04 03:19:28
newとdeleteをオーバーロードしてオブジェクトプールから取り出すようにする

491:デフォルトの名無しさん
08/03/04 07:24:38
>>488
こういう例もありましてね
URLリンク(www.yoshidam.net)

492:デフォルトの名無しさん
08/03/04 08:44:15
>心配してるのは断片化だろ? サイズの違うメモリーを確保・開放を続けると
>メモリの利用箇所が虫食いになって最後は使えなくなるという。

コンパイラが、スタックエリア、ヒープエリアを確保しているだろうから、それはない。



493:デフォルトの名無しさん
08/03/04 18:18:24
ForceDirectoriesが未解決ってエラーが出るのですが#include <FileCtrl.hpp>以外に何か必要なことってありますか?

494:デフォルトの名無しさん
08/03/05 08:15:12
ヘルプを見なさい

495:デフォルトの名無しさん
08/03/05 10:24:54
知らないならレスしないでウザイだけです

496:デフォルトの名無しさん
08/03/05 16:44:19
そうですね。知らないなら回答すべきではないです。
でも俺は知ってるからレスしました。ヘルプを見なさい。

497:デフォルトの名無しさん
08/03/05 22:30:41
>>495
ヘルプ読めないなら来ないで邪魔です

498:デフォルトの名無しさん
08/03/06 08:03:09
わからない七大理由

1. 読まない ・・・説明書などを読まない。読む気などさらさらない。
2. 調べない ・・・過去スレ、ググるなど最低限の内容も自分で調べようとしない。
3. 試さない ・・・めんどくさいなどの理由で実行しない。する気もない。
4. 理解力が足りない ・・・理解力以前の問題で理解しようとしない。
5. 環境のせいにする ・・・自分が悪いのではなく環境が悪いと責任転嫁する。
6. 人を利用することしか頭にない ・・・甘え根性でその場を乗り切ろうとする。
7. バカだから ・・・バカだから。



499:デフォルトの名無しさん
08/03/06 10:31:56
へたれな事ですみません。。
BorlandC++Builder6を使用しています。
コンポーネントの端に「Office2k」があって、Work,Excel,Access等の制御ができそうなものがあります。
ヘルプやキーワードにも見当たらず、使い方がいまいちわかりません。
田舎にしては大きな本屋で調べても、「Office2k」に関するものはみあたりませんでした。
てか、Borland自体少ないですし。
どこかにリファレンスや参考になる資料はないでしょうか。
教えてください。
お願いします。

500:デフォルトの名無しさん
08/03/06 10:35:15
1つ抜けていたので追記します。
使用したいOfficeはAccessです。
ごめんなさい。。

501:デフォルトの名無しさん
08/03/06 10:52:26
グg(ry

502:デフォルトの名無しさん
08/03/06 10:59:07
各種検索サイトも見たのですが、リファレンスらしきものは発見に至りませんでした。
Excelの使用サンプルはあったのですが、Accessで使用したいことに応用はできませんでした。
どのコンポーネントをどう使えば、どうなるのかさっぱりなんです。
皆様からみればアホみたいな事ですみませんが、なにか知っていることがあれば教えてください。
お願いします。


503:デフォルトの名無しさん
08/03/06 11:28:38
具体的に何を実現したいのかを聞くのが当たり前だと思うのだが。
具体的に何を実現したいのかさえわからないのかね。


504:デフォルトの名無しさん
08/03/06 11:31:31
何がしたいのかは上にも書きましたが、使い方を知るためのリファレンスを探しています。
解りにくくてすみません。


505:デフォルトの名無しさん
08/03/06 11:40:44
URLリンク(www.google.co.jp)
ぐぐったらいっぱい出てくるじゃん


506:デフォルトの名無しさん
08/03/06 11:56:00
微妙じゃね

507:デフォルトの名無しさん
08/03/06 12:25:30
ググって実質80数件しか出ないコンポは茨の道な気ガス

508:デフォルトの名無しさん
08/03/06 12:27:57
まあCOMコンポーネントだから、リファレンスならMSDN見るのが一番でない。
ぱっと見VBAのしか見当たらないけど。オブジェクトやメソッドの意味は調べられるし、
タイプライブラリから機械的にクラス作ってるだけだから、出来る事は同じはずda。

509:デフォルトの名無しさん
08/03/06 12:35:23
ACCESS扱うだけならコンポーネントなんて通さなくても自分でソース書いた方が楽

510:デフォルトの名無しさん
08/03/06 12:43:39
やることはほとんど同じだけどな

511:デフォルトの名無しさん
08/03/06 12:50:31
C++Builderのコンポーネントは単なるOfficeのオートメーションサーバーのラッパークラスに
すぎないから、ラッパークラスのメソッド名やプロパティ名は元のオートメーションサーバーのそれと
ほぼ同じはず。つまりは、VBやVBAとほぼ同じ。
URLリンク(msdn.microsoft.com)
から、「MSDN ライブラリ アーカイブ」->「Office ソリューション開発」たどれば、よろし。



512:デフォルトの名無しさん
08/03/06 13:04:21
COM関係は自分で理解して書いた方が楽だね
そもそも付属のコンポ、マトモに動作するかすら疑わしい

513:デフォルトの名無しさん
08/03/06 13:49:22
人が手で書いたものじゃないんだぜ。getter/setterをプロパティにしたり、インターフェースを
スマートポインタで包んだだけのもの。

514:デフォルトの名無しさん
08/03/06 14:01:46
まぁ、アーリーバインディングを行う場合は、C++Builderのタイプライブラリ
インポーターを使ってラッパ作成しないと死ぬが、
実際はそこまで速度要求するとは思えないからバリアントを使ったレイトバインディングで十分だとは思う。
アーリバーインディングはサーバーの特定のバージョンに依存しちゃうしね。


515:デフォルトの名無しさん
08/03/06 14:29:26
514だけど、514の発言は気にしないでくれ。ここは、C++Builderのスレね。Delphiメインな
俺はC++Builderにバリアントなんてあるのか知らん。めんご。



516:デフォルトの名無しさん
08/03/06 14:50:10
拡張キーワードみたいのはなくて、クラスで表現してるから見た目はいまいちだけどあるよ。

Variant v = Variant::CreateObject("Access.Application");

v.OlePropertySet("Visible", true);

517:デフォルトの名無しさん
08/03/06 15:00:52
普通のサンプル利用するならTVariantの方がわかりやすいかもしれん
Variant、OleVariant、TVariant、好きなの使えw

518:デフォルトの名無しさん
08/03/06 15:09:53
504は既にみんなが何を書いてるのかすら理解に苦しんでるかもしれんw

519:デフォルトの名無しさん
08/03/06 15:39:16
すみません、他のモジュール書いてました。。
VB等とプロパティが同じなら、そこから追えそうです。
ありがとうございました。m(_ _)m


520:デフォルトの名無しさん
08/03/07 18:35:05
C++Builder2007にはIBXついてますか?

521:デフォルトの名無しさん
08/03/07 18:37:24
え”、付いてなかったら、自分自滅するお!

522:デフォルトの名無しさん
08/03/11 10:39:39
DBGridで行毎に色を変える方法を教えてください

523:デフォルトの名無しさん
08/03/12 16:40:12
InterBaseのコンポーネントは一通りあるよ。C++Builder2007 Professional。
使ったこと無いけど。


524:デフォルトの名無しさん
08/03/12 18:16:20
>>522
TDBGrid使ったことないけど、多分TDBGrid::OnDrawDataCellで記述する。

525:デフォルトの名無しさん
08/03/12 18:37:11
>>524
確かに色を付けることはできるのですが
イベントに来たときのRowはどうやって取得したらいいですか?

526:デフォルトの名無しさん
08/03/12 21:02:04
>>525
こういうことをしたいのかな?
URLリンク(dn.codegear.com)

527:デフォルトの名無しさん
08/03/13 10:04:57
>>526
そうそうそれです!
色の塗り方はわかるのですがイベントに入った時のRow又はレコード位置がわからないので
奇数行ならっていう条件がわからなくて・・・
それと色を塗るとテキストが消えてしまうのでStringGridみたいに
Cellsから値をとってTextOutできないのでやはりレコード位置から
データを持ってくる必要がありますか?

528:デフォルトの名無しさん
08/03/13 10:06:55
と、思ったのですが>>526さんのリンクにしっかりやりかた書いてますね・・・
ありがとうございました。
参考にさせていただきます

529:デフォルトの名無しさん
08/03/13 10:38:43
うーん・・・
やっぱりColumn->Field->DataSet->RecNoが常に-1になってしまって
行の判別ができないです・・・
何故RecNoが-1になっちゃうのでしょうか?

530:デフォルトの名無しさん
08/03/13 12:35:54
データベースによってはRecNoは無効になる。というかそういうRDBMSのほうが多いのでは?

531:デフォルトの名無しさん
08/03/13 13:19:28
ヘルプにも-1になるって書いてますねこれ。
TQuery使ってるのですがどうやってレコード番号というか
グリッドの行を識別したらいいんでしょうか

532:デフォルトの名無しさん
08/03/13 15:37:18
RDBのテーブル設計で、Int型のレコード番号つけてそれをプライマリキーにするだろ、jk。

533:デフォルトの名無しさん
08/03/13 15:46:02
そんな頭の悪いレスを望んではいません

534:デフォルトの名無しさん
08/03/13 17:36:52
イベントハンドラでセルのTop座標が受け取れるので、それをセルの高さで割って見てはどうだろう

535:デフォルトの名無しさん
08/03/13 17:40:14
す、スクロールしていたら・・・

536:デフォルトの名無しさん
08/03/13 21:40:07
VCLコンポーネントでマルチスレッドをする方法はないでしょうか。
TImageがフォームに二つあり、極端に大きな画像を両方に読み込ませたいとか。

537:デフォルトの名無しさん
08/03/14 07:49:21
互いに別の空間で動いていたら問題ないけどね
同じメモリをアクセスする場合は1wordアクセスにするか、出来ないなら排他処理する。
メソッドポインタが2wordになる事に注意して書けば大丈夫でしょう。

Loadする場合は、
1, まずParentを外し、フォームの参照をnilにしておく。
(フォームでそのImageを間違って参照しないように)

2, LoadFromFileまでは別スレッドで行う為の 1word のグローバル変数のフラグを立てる
3,読み終わったら、そのスレッドからフォームにメッセージを送る。
 メッセージでフォームの参照とParentを元にも戻す

A,B 2つある場合は、それぞれフラグを別にして、読み込みスレッドは1つで
片方が処理終わってからフラグを見てBを読む。

538:デフォルトの名無しさん
08/03/14 08:02:57
ここはBuilder相談室。


539:デフォルトの名無しさん
08/03/14 08:25:35
>>536
JPEGやらPNGやらで展開処理が重くてマルチスレッド(マルチコア対応)化したいというのなら
展開用スレッド作ってそれぞれ展開してsynchronizeだかなんだかでVCL割り込んでフォームのTImageに紐づければよくね?

540:デフォルトの名無しさん
08/03/16 18:24:15
いつも御世話になります。
フォームを徐々に透明化して行きフェードアウトするコードを書いています。
for文がPCの処理に依存している為、
どんな環境でも(ある程度)同じ間隔で
透明度の変化を希望しています。
なにか良い手はないでしょうか?
システム版画利案が痛いですが。ソース晒します。

for(int it=100;it>0;it--){
fmShow->fcfmShowTransparency(it);
Sleep(1);
Application->ProcessMessages();
}
void __fastcall TfmShow :: fcfmShowTransparency(int intTransparency){
//ツールチップの透明度を設定
int intMyTransparency=(int)((double)intTransparency*2.55); // *255/100
fmShow->AlphaBlendValue=intMyTransparency;
}
環境winXP bcb2007

541:デフォルトの名無しさん
08/03/16 19:44:40
>>540
::Sleep()で時間稼ぐとか

542:デフォルトの名無しさん
08/03/16 19:51:31
>>540
フェードアウトに掛ける時間を決めて、経過時間から不透明度を設定するというのは?

// 1000msでFO(簡略化コード。※バグあり)
DWORD dwStart = ::timeGetTime();
while( 1 ){
  int nOpaque = 255 - ( ( ::timeGetTime() - dwStart ) * 255 ) / 1000;
  if( nOpaque < 0 ){
    break;
  }
  Form->AlphaBlendValue = nOpaque;
  Application->ProcessMessages();
  ::Sleep( 1 );
}
Form->AlphaBlendValue = 0;

時間が厳密じゃなくてもいいのなら、タイマイベントでいいと思うけど。

543:デフォルトの名無しさん
08/03/16 20:05:48
::AnimateWindow(Handle, 1000, AW_HIDE | AW_BLEND);

544:デフォルトの名無しさん
08/03/16 20:32:44
>>541>>542>>543
ありがとうございます。
AnimateWindowが正解でした。
レベルが低くて申し訳ないです。


545:デフォルトの名無しさん
08/03/16 22:01:36
AnimateWindowなんてAPIあったのか・・・俺も使おうかな。

546:デフォルトの名無しさん
08/03/16 22:03:37
 ::Sleep( 1 );
この「::」ってなんですか?

547:デフォルトの名無しさん
08/03/16 22:29:55
Global scope

548:デフォルトの名無しさん
08/03/16 22:33:15
つけなかったらどうなるの?
どんな影響が。。。
気が向いたらオシエテ

549:デフォルトの名無しさん
08/03/16 22:35:02
そのコードの書いてある名前空間内(グローバル名前空間内でないとする)に
Sleep という名前の関数なりなんなりを作った場合に
そちらが使われてしまう。

550:デフォルトの名無しさん
08/03/16 22:54:09
なんとなくわかりました。

551:デフォルトの名無しさん
08/03/17 01:22:12
Vista用の256x256アイコンを含ませる方法ってないですかねー・・・
PNG圧縮のかかった形式でicoに含ませてからbrcc使うとコケちゃうし・・・

552:デフォルトの名無しさん
08/03/17 07:37:48
>>551
VisualStudioを使ってください。中途半端な部分がたくさんあるので
CodeGearの製品はお勧めできません。

553:デフォルトの名無しさん
08/03/17 11:47:07
M$の製品は完璧でうらやましいです

554:デフォルトの名無しさん
08/03/17 12:10:41
VCはいいけどVBは糞だったなぁ

555:デフォルトの名無しさん
08/03/20 09:49:27
AnimateWindowの質問したやつですが、
AlphaBlendValueで半透明状態からの
フェードアウトアニメーションはできるものでしょうか?
AnimateWindowは255から0にしかならないものですか?
ちょっと確認したくて。BCB2007 winXP

556:デフォルトの名無しさん
08/03/20 11:47:32
>>555
XP使ってるなら自分で確認できるんじゃね?

557:デフォルトの名無しさん
08/03/20 12:17:15
もちろんそうなんですが、できないと思ったからです。
AnimateWindowの仕様かもしれませんが、
もしできないのであれば、>>542さんの
ソースでやるしかないので、確認です。
ぐぐってもピンとこなかったので。
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Form1->AlphaBlend=true;
Form1->AlphaBlendValue=200;
}
void __fastcall TForm1::Button2Click(TObject *Sender)
{
::AnimateWindow(Form1->Handle,1000, AW_HIDE | AW_BLEND);
}
自己中で申し訳ないです。

558:デフォルトの名無しさん
08/03/20 13:41:28
>>529
ClientDataSetを使えばいいんじゃなかったか。

559:デフォルトの名無しさん
08/03/21 20:24:13
Builder2007使ってるならフォームのAlphaBlendValueを
タイマーとかでループで減らしていけばいいんじゃね?俺はそうしてるよ

560:デフォルトの名無しさん
08/03/21 23:23:18
そうなんです。はじめはループさせてフェードアウトさせていいたのですが、
アニメーションを教えてもらったが、
半透明だとうまく動かない。
やっぱり動かないの?っていうことです。
お騒がせしました。
次の相談どうぞ

561:デフォルトの名無しさん
08/03/24 10:07:35
Builder2007ってXP Homeじゃインスコできませんか?

562:デフォルトの名無しさん
08/03/24 20:11:16
>>561
いけるんじゃね?
試して報告よろ
URLリンク(www.codegear.com)

563:デフォルトの名無しさん
08/03/25 14:52:15
HomeでもSP2ならいけますた。SP1はインスコ途中でダメって出てインスコできんかった

564:デフォルトの名無しさん
08/03/25 20:47:25
よくできました!

565:デフォルトの名無しさん
08/03/27 10:59:13
2007って以前の5とか6みたいな画面にできない?
画面構成変わってめんどいんだけどこれー

566:デフォルトの名無しさん
08/03/27 12:13:41
BCB6をインストールして、コンパイラとライブラリ一式だけBCB6上に上書きするとか

567:デフォルトの名無しさん
08/03/27 12:16:47
埋め込みデザイナのチェックを外せ

568:デフォルトの名無しさん
08/03/27 13:29:21
>>566
いや6もってないし
>>567
とりあえずデザイナだけは埋め込みじゃなくなったけど・・・

デザイナとオブジェクトインスペクタとソースは別窓にしてOK
しかしツールバーとかあの辺がうざいー
しかもこれつねに他の窓の下にくるからツールパレットがソースの下に隠れてつかえね
かといって横表示にしたら文字があれしてうざいし
以前のようにタブで選択できればいいんだが・・・

569:デフォルトの名無しさん
08/03/27 13:41:56
うーん、エディタ窓を切り離したい

570:デフォルトの名無しさん
08/03/27 13:45:27
あ、さっき別窓であれしたらだめだったのに今度でけた

571:デフォルトの名無しさん
08/03/27 13:49:14
あ、やっぱダメかあ
これソースを別窓でひらいたらそのソースだけかよ
めんどくせー

572:デフォルトの名無しさん
08/03/27 13:58:29
ソースを別あれにするのは諦めた、この糞仕様は涙を飲んで我慢しよう

しかし、しかしだ!
VCLデザイナを分離させると常に前面表示なのは納得いかねえ!!
これソースにかぶるとみえねーじゃないか!!
エロいおっさんVCLデザイナがソースの背面にいく方法をおしえてくれ

573:デフォルトの名無しさん
08/03/27 17:40:10
とりあえず、埋め込みデザイナをオフにして慣れるのが一番。
そうすれば、いつでもVisual Studioに移行できる。


574:デフォルトの名無しさん
08/03/27 21:08:29
ある外部DLLを使ってるのですが、
このDLLは内部でスレッドを作っていて、更にそのスレッド内で例外が起きてもcatchしてないようで
本体のEXEまで巻き添えになって死亡してしまいます。

こういうヤヴァイDLLでもEXEが巻き添えになって即死しない方法はありますか?
EXEはBCB製ですが、DLLは何で作ったか解らずソースもないので変更できません。

575:デフォルトの名無しさん
08/03/27 21:26:45
>>574
DLL呼び出し部を別プロセスに分けて、共有メモリとかプロセス間通信を使って本体とデータをやりとりするとか・・・

576:デフォルトの名無しさん
08/03/28 00:14:01
プロセス間通信ってむずかしいですか?
プラグ印をつくるには、dllで提供されるとおもうのですが、
素人にはexeが作りやすい。
できるだけ気軽にプラグ印開発するのに、
親exe+dllではなく、親exe+子exeという格好に
実装したフリーorシェアってありますか?
用途は親が小難しいことやって、プラグ印フォームで
情報表示。ユーティリティーなんて実現可能なものでしょうか?

577:デフォルトの名無しさん
08/03/28 10:58:11
>プロセス間通信ってむずかしいですか? 
別にそれほど
設計を間違えなければ

>実装したフリーorシェアってありますか?
さぁ?
コントロールパネルのスクリーンセーバーのプレビューはそれに近いかも

>情報表示。ユーティリティーなんて実現可能なものでしょうか?
可能かどうかっていうと、可能だろう

578:デフォルトの名無しさん
08/03/28 11:48:19
Winampはプロセス間通信で、他のアプリから再生制御したり、情報取得したり出来るようにしてるな。
プラグインというかフロントエンドだけど。

579:デフォルトの名無しさん
08/03/28 12:01:05
ちょwwwwwwww
InternetOpenとかなんだけどBuilder5でちゃんとコンパイルできてたのに
2007でやるとリンカエラーになる・・・
とおもってヘルプみたらlibファイル変わってるじゃん馬鹿!!
まあファイル名を変えたらちゃんとできたんだけど、ころころ変えるなやなあ

580:デフォルトの名無しさん
08/03/28 12:10:15
ちょwwwwwwwwww
Builder5でTPanelのColor変えたら背景色変更してたのに2007じゃ変わらない・・・
これマジでわかんないです、エロい人TPanelの背景色の変え方教えてください

581:デフォルトの名無しさん
08/03/28 12:10:26
>>579
BCBクオリティだな

582:デフォルトの名無しさん
08/03/28 12:30:31
>>576です。
一度調査してみます。
情報ありがとうございました。

583:デフォルトの名無しさん
08/03/28 12:40:14
ニコ堂厨キター

584:デフォルトの名無しさん
08/03/28 13:21:20
ちょwwwwwww
うへwwwww変わったwっうへうへwwwww
オブジェクトインスペクタで一度Color変更してから実行したら動的に変更してもちゃんと色変わったwwwww
なにこの糞仕様wwwwwwwwwwwwwwwwwwwwww
これ他のコントロールも危険っぽいwwwwwwwwwwww

585:デフォルトの名無しさん
08/03/28 14:06:09
書き込みキター

586:デフォルトの名無しさん
08/03/28 17:16:51
>>580
ParetBackgroundやTransparentかな?

ついでに私も質問・・・
Graphics::TBitmap *bitmap = new Graphics::TBitmap();
bitmap->SetSize(SpeedButton1->Width, SpeedButton1->Height);
bitmap->Canvas->Brush->Color = clRed;
bitmap->Canvas->FillRect(TRect(0, 0, bitmap->Width, bitmap->Height));
SpeedButton1->Glyph = bitmap;
こんな感じでやって見ましたがボタンの色が何一つ変わりません。
どなたか教えてくらさい・・・

587:586
08/03/28 17:30:13
あ、超初心者用スレが別に存在するんですね。
向こうで質問しようと思います。
スレ汚しスンマセン・・・

588:デフォルトの名無しさん
08/03/28 17:45:40
> 注意 ビットマップの左下のピクセルは「透過」色用に予約されています。
> ビットマップで左下に位置するピクセルはすべて透過になります。

589:デフォルトの名無しさん
08/03/28 18:51:04
>>586
いやwwwwwwwwwww>>584ですたよ
5からまんま移植してやってたんだけどね
つかSpeedButtonなら予め用意したビットマップを設計時にあれするとかじゃだめなの?

590:デフォルトの名無しさん
08/03/28 19:24:27
>>588
ありがとうございます。
おかげさまで実現できました。

>>589
把握シマスタw
ビットマップは、ボタンのサイズより少し小さく色づけしたいので、今の方法にしようと思います。

591:デフォルトの名無しさん
08/03/28 23:00:00
>>576です
プロセス間通信についてですが、
WM_COPYDATA と
URLリンク(gimite.net)
共有メモリ
URLリンク(ww4.tiki.ne.jp)
を拝見して、動作確認できました。管理者に感謝

前者はウィンドウハンドル、後者は任意のユニークなID
1.使い勝手としては後者が使いやすいのでしょうか?
2.また、前者は受け取り側フォームひとつにつきひとつなのでしょうか?

ところで、複数のデータcharとintが4つくらい送りたい場合、
3.やはり、送信側・受信側も4つのID(後者)が必要なのでしょうか?
ひとつのIDでは複数遅れないのでしょうか?

4.また、それが一般的なのでしょうか?
ちょっと世間一般の意見をお伺いしたくて。よろしくお願いいたします。

592:デフォルトの名無しさん
08/03/28 23:00:52
4つのID->5つのID

593:デフォルトの名無しさん
08/03/29 07:33:51

共有メモリと言うと普通は[ファイル マッピング]を使う [名前付き共有メモリ]だと思う。
これなら読み書き出来るメモリを共有する事になる。

2番目はアトム(GlobalAddAtom) グローバルアトムなら確かにプロセス間で渡せるけど
これはメモリ共有というイメージではない。

構造体を送りたいという場合、
アトムで送る場合は、構造体をシリアライズ=文字列化して送ればいい
WM_COPYDATAで送るなら構造体のポインタを送ればいい。
文字列を含む場合は、その構造体にインスタンスが完全に含まれるようにする。
ポインタや参照を含む形では駄目。


WM_COPYDATAは1対1の通信に便利だけど1対1でしか使えない。
グローバルアトムを使う場合も、相手の窓ハンドルを使う限りは1対1になる
ファイルマッピングなら、複数で通信出来る。

他にwindowsにはメールスロットというのがある。CreateMailslot して後はファイルと同じようにするだけ
これは同じPC上のプロセスだけではなく別のパソコンにでも送れる。


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch