C Builder相談室 Part3
レス数が900を超えています。1000を超えると表示できなくなるよ。
0001デフォルトの名無しさん
NGNG過去スレ・関連サイトは>>2-5あたり。
0830デフォルトの名無しさん
NGNGそそ。俺も5.6だったよ。もしかして>>825は某か?
0831デフォルトの名無しさん
NGNGSET PATH=D:\Developer\bcc55\bin\; %PATH%
ECHO 環境変数をBCC5.5.1用に変更しますた(´-`)y~
0832デフォルトの名無しさん
NGNG0833デフォルトの名無しさん
NGNGえ?それはなぜ?
5.6の方が良いのでは・・・?
そもそも、5.5からどう変わったのか分らない・・・
0834デフォルトの名無しさん
NGNG分割ウインドウするにはどうすれば?
自分で分割すんの?
0835デフォルトの名無しさん
NGNGマチクタビレタ〜
☆ チン 〃 Λ_Λ / ̄ ̄ ̄ ̄ ̄ ̄
ヽ ___\(\・∀・) < SP1まだ〜?
\_/⊂ ⊂_ ) \______
/ ̄ ̄ ̄ ̄ ̄ ̄ /|
| ̄ ̄ ̄ ̄ ̄ ̄ ̄| |
| 愛媛みかん |/
0836デフォルトの名無しさん
NGNG0837デフォルトの名無しさん
NGNGinline QEventType __cdecl QEvent_type(QEventH* handle)
{
return QEvent_type(handle);
}
てな実装で無限ループに陥るんですけど、どう対処すれば良いのでしょう??
0838デフォルトの名無しさん
NGNG変更する方法が分かりませぬ。
元のサイズ、最小化を無くしちゃいたいのだけど、どうすればいいのでしょう?
0839デフォルトの名無しさん
NGNGindyサイトから落としたやつを入れることはできるの?
0840デフォルトの名無しさん
NGNGできる。コンポーネントの追加/削除は自由にできる。
少々面倒臭いが。
0841デフォルトの名無しさん
NGNGBCBのコンパイルが軽快になった。
パソコンショップの店の人に「鱈セレで重いってどんなソフトですか?」と
質問されて、BCBだと答えたら知らないようだった。
0842デフォルトの名無しさん
NGNGそんな店員マハパンチだ!
0843デフォルトの名無しさん
NGNG不要になった鱈セレきぼんぬ。
0844デフォルトの名無しさん
NGNGDrawCellイベントを呼びたいのですが、DrawCellイベントの下記の引数のうち
(TObject *Sender, int ACol, int ARow, TRect &Rect, TGridDrawState State)
TRect &Rect, TGridDrawState State の渡し方が分かりません。
どなたか分かられる方、教えて下さい。
0845デルファイの名無しさん
NGNG意図的に呼ぶようなものじゃ無いと思えるのですが、
(ダブルクリックした時だけ書き直しても、他のウィンドウが被さったら消えてしまう)
具体的に何がやりたいのか、書いていただけます?
0846デフォルトの名無しさん
NGNGControls[i]->Nameでコントロールの名前が取得できますが、Controls[i]->ClassName()
ではオブジェクトインスタンスの型を表す文字列が取得できるはずなのに、実行すると
AccessViolationとなってしまいます。
なぜだかご存じの方いらっしゃらないでしょうか?
0847デフォルトの名無しさん
NGNGClassName()はShortStringという、BCBではあまり使われない型で返して
くるのが原因でした。
AnsiStringのコンストラクタで変換してやるとうまく動きました。
0849844
NGNGダブルクリックしたセルにフラグをたてています。
そのフラグをみて背景色を決めるという処理を DrawCellの中に
書いているのですが、
ダブルクリック直後は、当然、 DrawCellイベントは発生せず、
セルを移動したら、ダブルクリックしたセルの背景色が変わるという
状態です。
0850デフォルトの名無しさん
NGNG0852デフォルトの名無しさん
NGNG0853デフォルトの名無しさん
NGNGそれかAPIのInvalidateRectかも
0855デフォルトの名無しさん
NGNGハンドラの中で単にRepaint()とするとForm->Repaint()になっちゃうから、
Grid->Repaint()とすれば再描画してくれる(DrawCellが呼ばれる)はずだけど。
もちろん、この場合は一部を書きかえるだけだし、
Repaint()すると場合によってはGrid全体がちらつく(と思う)ので
範囲を指定してInvalidateRectでいいとは思う。
0856844
NGNGGrid->Repaint()でOKでした。Grid-> って書いてなかったです・・・
ごめんなさい、ごめんなさい、ごめんなさい。ひどいポカですね。
丁寧なレスありがとうございました。
0857デフォルトの名無しさん
NGNGistream、ifstreamからAnsiStringに文字列を読みとる時は、string型と
違い、CTRL+Zが押されるまで、改行コードも含めて読みとってしまい
ます。
これを、改行までを一区切りとして読みとる方法はありますでしょうか?
0858デフォルトの名無しさん
NGNGマウスカーソルをオリジナルのもの(16色程度の動かないやつ)に変更したいのですが、
用意されてるエディタだとモノクロしかありません。
どうしたら良いでしょうか? なにから手をつけていいやら、分かりません。
0859デフォルトの名無しさん
NGNGカーソルエディタを探す。
0860デフォルトの名無しさん
NGNG0861デフォルトの名無しさん
NGNGthx
0862860
NGNG0863デフォルトの名無しさん
NGNGTurbo Debugger関連の話ならここ行った方がいいと思う。
http://pc3.2ch.net/test/read.cgi/tech/1030493157/
0864860
NGNG誘導thxです
0865デフォルトの名無しさん
NGNGもう移動したかもしれんが、例えば class Aのメンバ変数 i を見たければ
インスタンスを A a; で生成したとすれば
add watch で a.i[enter] と入力すればよい。
privateとか関係ないから。
0866デフォルトの名無しさん
NGNG取り出すにはどうすればいいでしょうか?
0867デフォルトの名無しさん
NGNGネットにもMSDNにもどこにでも転がってる。
0868866
NGNGすみません。。。見つけれなかったです。。。
0869デフォルトの名無しさん
NGNGTBitmap->Canvas->Pixels[int X][int Y]
0870デフォルトの名無しさん
NGNGで
ReadOnlyをfalseにして
クリックするとアイテムの文字列編集できるようになりますが
もっとレスポンス素早く(StringGridみたいに)やりたいのですが、
文字列編集モードに素早くするメソッドとかありますか?(EnterやF2ですぐにできるようにしたい)
あと、
サブアイテムも編集したいのですが無理ですかね?
0871デフォルトの名無しさん
NGNGポップアップメニューだしたいんですが、
どのようにしたらいいのでしょうか。
0872デフォルトの名無しさん
NGNG0873デフォルトの名無しさん
NGNGC++Builder5 Pro/Win2000です。
HELPを見るときに、プロパティやメソッドが別ウインドで表示されますが、そのウインドのサイズと表示位置を変更
しても、記憶してくれずにデフォルトに戻ってしまいます。なのでとても使いにくいです。
表示位置とサイズを記憶させる方法はありませんか。
直接プログラミングの質問ではなくてすいませんが、よろしくおながいします。
0874デフォルトの名無しさん
NGNGだったら買おうと思うんですが・・・
Builderってなんか評判悪いんで怖いんですよね・・・
0875デフォルトの名無しさん
NGNG> 評判悪いんで
Σ(゚Д゚ )y-~~ マジか
0876デフォルトの名無しさん
NGNG>対応してないよ
Σ(゚Д゚ )y-~~ マジか
0877866
NGNG最初から出せよな。
サンキュ
0878デフォルトの名無しさん
NGNGじゃあもうBuilderは買う価値がないということでしょうか?
Delphiは対応してましたよね、確か。
0879デフォルトの名無しさん
NGNG今のBCBは価値ないのでは。
0880デフォルトの名無しさん
NGNGDelphi7が出たらBCB7も出るのでは。
0881デフォルトの名無しさん
NGNG0882関係者
NGNG0883デフォルトの名無しさん
NGNG関係者信用ならん。盆明けにSP2出るとか言っといて出なかったし。
0884デフォルトの名無しさん
NGNGヽ('A`)ノ (VS持ってるから、俺も>>881に同意しとこう・・・
( ) 〜bor.dll配るのなんかイヤだし。)
/ ̄くく ̄ ./|
/ ´´ / .|
| ̄ ̄~~ ̄|´ |
| . | ./
| . |/
 ̄ ̄ ̄ ̄
0885デフォルトの名無しさん
NGNGメニューの一部が英語になった
0886873
NGNGやっぱ誰も分からないってーことですか。
みなさん使いにくくありませんかぁ
0887デフォルトの名無しさん
NGNGBCB6にする。
0888デフォルトの名無しさん
NGNGいつのまにか位置と大きさ記憶されるようになってた。プロパティ一覧とかの別ウィンドウも。
BCBだけじゃなくてあの形式のヘルプ全部のようなので、Windows自体にそういう機能がついたのだろか。
最近入れたのはWin2KSP3とIE6とVS.NETだけど、そのどれかのおかげかも。
0889デフォルトの名無しさん
NGNGぜんぜん使いにくくない。
つか、慣れた。
0890873
NGNGwinhlp32.exeのバージョンは、5.00.2195.3649 タイムスタンプは2002/07/13 04:13 です。
XP Proでもやってみたのですが、現象はWin2000環境と全く同じで、ウインド状態を保存してくれませんでした。
また自分の環境は、win2000SP3でOSは最新状態です。IE6.0 VS.NETも入っています。
なので、winhlp32.exeのバージョンアップで改良された訳では無いみたいです。
とりあえず、ウインドーの位置とサイズを定期的にチェックして変更するプログラムをつくりました。
なんか違うなぁとは思うのですが、とりあえず便利です。
どこかのレジストリに書き込めばいいのかなという気はしますが・・・
0891デフォルトの名無しさん
NGNG2002/07/22 12:05
バージョン5.0.2195.4751
0892デフォルトの名無しさん
NGNG(´-`).oO(最近、>>888の他になにか入れたっけな・・・)
0893デフォルトの名無しさん
NGNGJava側で
ObjectOutputStream oout = new ObjectOutputStream(socket.getOutputStream());
PrintWriter out = new PrintWriter(new OutputStreamWriter(oout, "SJIS"));
out.println("hogehoge");
out.flush();
と送って来て、それを受信しているんですが、
文字化けしてしまいます。
unicode変換とかが必要なんでしょうか?
0894デフォルトの名無しさん
NGNGAccessViolationでたんですが、
文字数の制限とかありましたっけ???
ちなみにC++Builder5です
0895virtual
NGNGなぜObjectOutputStreamをつかってるののだ?
ObjectOutputStreamはヘッダをつける(Javaのオブジェクトをシリアライズするためのもなんで)からばけてるのでは?
OutputStream out = socket.getOutputStream();
PrintWriter writer = new PrinterWriter( new OutputStreamWriter( out, "SJIS" ) );
writer.println( "hogehoge" );
writer.flush();
ではだめ?
Unicode -> SJISへの変換は OutputStreamWriter( out, "SJIS" ) でなされていると思われ.
0896デフォルトの名無しさん
NGNG指定した日時のデータを取得するためにをSQLに
select * from FastData where Dt=#09/30/2002#
って書くとキーワードの使用が無効ってエラーがでます、
select * from FastData where Dt = cast( '"2002/07/07"' as DATE)
ってやったらCASTはつかえませんってエラーがでます
どうやったら日時でデータをゲットできるのでしょうか?
0897デフォルトの名無しさん
NGNGTQueryね、失礼
0898デフォルトの名無しさん
NGNGDBの名前とバージョンを書いたら親切な人が
教えてくれるかもしれないよ。
0899デフォルトの名無しさん
NGNGって本のソースをVisual C++ 6.0でコンパイルしたいんですが、
C++BuilderのプログラムをVisual C++に移行するって可能でしょうか?
0900デフォルトの名無しさん
NGNGその本の中身は知らないけど、あなたのスキル次第。
コンパイルは、ソースそのままでは絶対通らないでしょう。
コピペで楽しようと思ってるならあきらめた方がいい。
よく見ると「プログラミング」が二重になってるね。
0901899
NGNG何とかコンパイル通るんですが、中盤移行はかなりきついです。。
vcl.h とかVC++にあるとありがたいんですが・・。
もう少しやってみて駄目っぽかったらあきらめようと思います。
>よく見ると「プログラミング」が二重になってるね。
書き換えた時重複したようです・・(お恥ずかしい。。
0902デフォルトの名無しさん
NGNG内蔵のタコみたいなコードエディタは外部エディタに変更出来ないのですか?
BCB5、BCB6
0903デフォルトの名無しさん
NGNG0904デフォルトの名無しさん
NGNGツールでテキストエディタを登録してなんとかやりくりして下ちぃ。
0905デフォルトの名無しさん
NGNG具体的にどうすれば良いのでしょう…?
0906デフォルトの名無しさん
NGNGパレットのいじり方がよくわからなくて困ってます。
0907デフォルトの名無しさん
NGNG0908デフォルトの名無しさん
NGNGBorlandのページにはこう書いてあるけど、これはこれで使いにくい。
http://www.borland.co.jp/tips/cbuilder/cb009/onept_1.html#idx_3
0909デフォルトの名無しさん
NGNGまぁ、使いにくいことには変わらないんだけど。
BCBのエディタは使いにくいは、定説ですなー。
0910デフォルトの名無しさん
NGNG不器用な連中が多いな。
0911Delフサギコ ◆A6VzDeLphI
NGNG,,,,,,,,,,,,,,,,∧,,∧ /$EDNAMEの前に$SAVEを付けたら
〜′,,,,,,,,,,ミ,,゚Д゚彡 < もっと便利
UU"""" U U \_____________
0912デフォルトの名無しさん
NGNG例えば、
void Line(int x1,int,y1,int x2,int y2)
というメソッド{座標(x1,y1)へ座標(x2,y2)へ線を引く}を作るときは
どうすればいいのでしょうか?
0913デフォルトの名無しさん
NGNGMoveTo(x1,y1);
LineTo(x2,y2);
っていうことを聞いてるんじゃないんだろうなぁ・・・。
0914912
NGNGレスありがとうございます。それは、一例です。MoveTo LineToを一つにした
、新しいメンバ関数(Line)を作って、TCanvasを拡張したいっていう場合どうす
ればいいんでしょうか?っていう質問です。
普通なら
PaintBox1->Canvas->Move(X1,Y1)
PaintBox1->Canvas->LineTo(X2,Y2)
のところを
PaintBox1->Canvas->Line(X1,Y1,X2,Y2)
ってなかんじですね。やりたいことは別にあるんですけど、ここさえ解かれば問題
ないです。
0915デフォルトの名無しさん
NGNGそれをやりたいなら PaintBox1をTPaintBox1から継承しなおして書き直すか
VCLソースを変更するしかないでしょう。
Line(PaintBox1->Canvas , X1,Y1,X2,Y2) で我慢したら?
0916デルファイの名無しさん
NGNGC++のマジックとして、TCanvasから派生させたTMyCanvasを作り、
そこでnon-virtual関数だけ定義して、無理矢理キャストして使う荒技も…
激しく非推奨です。本当にやっちゃダメ(w
0917912
NGNGそ・・そうなんですよねぇ
Line(PaintBox1->Canvas , X1,Y1,X2,Y2)
ならできるんですけど、かっこ悪いから、嫌だったんですが・・・・。
てっきり簡単にできるもんだと思ってました。皆さんこれで、我慢してる
ようですね。親切なレスありがとうございます!
>>916
しょ・・・正直いって、ずぶの素人の俺にはなにをいってるかわかりません。も・・・もうしわけない。
0918デフォルトの名無しさん
NGNG0919デフォルトの名無しさん
NGNG0920999
NGNG>>917
単に新しい関数をつくって呼べばいいだけなのでは?
void NewLine(int x1,int y1,int x2,int y2){
PaintBox1->Canvas->Move(x1,y1)
PaintBox1->Canvas->LineTo(x2,y2)
}
PaintBox1->Canvas->Line(x1,y1,x2,y2)
って呼びたいところを
NewLine(x1,y1,x2,y2);
これじゃあダメ?
0921912
NGNG今回は、私のクラスのお勉強なので・・・・
PaintBox2やPaintBox3になったら、引数として、あたえなくちゃいけなくなるので、
それは、ちとかっこ悪いかなぁ・・・と思いまして。できれば、別のアプローチで。
0922デフォルトの名無しさん
NGNG(TMyCanvas *)(PaintBox1->Canvas)->Line(x1,y1,x2,y2)
とは書けるけど、これはもっと格好悪いだろ?
JavaScriptなら後からメソッドも追加出来るけどねえ
0923912
NGNGTCanvasクラスが定義されている、ソースファイルを見つけて、Lineを追加するしかない
ということでしょうか?
この機能って絶対にあったほうがいいと思うのに・・・どうしてできないんだろう??
0924Delフサギコ ◆A6VzDeLphI
NGNGミ,, ゚Д゚彡 < PaintBoxがTCanvas使っているからでは
〃つ_つ/  ̄ ̄ ̄/\_____________
〜ミ,,, ,,|\ ./ レ ッ シ /
'\/.======./
 ̄ ̄ ̄
クラスライブラリがそういう目的を考慮して作られてれば
いいんだけど、VCLはそうはなってないってことです。
それに、なんでも、継承で機能追加という
思想だと、階層が深くなりすぎてわけわかになるから
TCanvasの処理くらいは関数レベルで対応するほうがいいですよ。
0925デフォルトの名無しさん
NGNGclass MyTCanvas : public TCanvas {
void MyLine(x1,y1,x2,y2){
MoveTo(x1,y1);
LineTo(x2,y2);
}
}
0926912
NGNGそれは、実際に使うときは
PaintBox1->Canvas->MyTCanvas->MyLine(10,10,20,20)
でやるんですか?それなら私的には全然OKですけど、うまくいきません・・・・。
0927デフォルトの名無しさん
NGNG0928デフォルトの名無しさん
NGNGMyTCanvas *)(PaintBox1->Canvas)->MyLine(10,10,20,20)
ただし、こんなクセ付けたらいけないよ
0929デルファイの名無しさん
NGNG後で思いついたのですが、奇麗に書きたければ、
*.hppだけ書き換えてインライン関数を追加する程度なら問題ないような。
…他人とソースコードの互換性は無くなりますが。
(そういう意味ではまだTMyCanvasの方がマシ。どちらも実際にはやらない方がいいけど)
レス数が900を超えています。1000を超えると表示できなくなるよ。