C Builder相談室 Part3
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001デフォルトの名無しさん
NGNG過去スレ・関連サイトは>>2-5あたり。
0002デフォルトの名無しさん
NGNGC++Builder相談室
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=969458279
新C++Builder相談室(C++Builder相談室 Part2)
http://pc.2ch.net/test/read.cgi/tech/997074601/
姉妹言語スレ
Delphi相談室その3
http://pc.2ch.net/test/read.cgi/tech/1010153466/
0003デフォルトの名無しさん
NGNG公式サイト
http://www.borland.co.jp/cppbuilder/
builder-ML 過去ログブラウザ
http://leed.issp.u-tokyo.ac.jp/~takeuchi/builder/browse.cgi
C++Builderのお部屋(Tips系)
http://www.ne.jp/asahi/nagoya/ahomaro/builder/
C++Builderによるプログラミング(Tips系)
http://market.agr.tottori-u.ac.jp/ken/
Delphian World(コンポーネントライブラリ)
http://home1.infonia.ne.jp/~delphian/delphi/
C++Builder Bugs
http://www2.justnet.ne.jp/~tyche/bcbbugs/index.html
Borland C++Builder最新リンク2001(リンク集)
http://www2.famille.ne.jp/~akio1998/l_cpb.html
0004デフォルトの名無しさん
NGNG/∵∴∵∴\
/∵∴∵∴∵∴\
/∵∴∴,(・)(・)∴|
|∵∵/ ○ \|
|∵ / 三 | 三 | / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
|∵ | __|__ | < >>1 C Builderって何
\| \_/ / \_________________
\____/
______.ノ (⌒)
//::::::::|-、 ,-/::::::ノ ~.レ-r┐
/ /:::::::::::| /:::::ノ__ | .| ト、
| /:::::::::::::::| 〈 ̄ `-Lλ_レ′
レ::::::::::::::::::|/::: ̄`ー‐---‐′
0005デフォルトの名無しさん
NGNG0006デフォルトの名無しさん
NGNGあげとこか。 ウン。
0007デフォルトの名無しさん
NGNG('_' ) へー。
0008デフォルトの名無しさん
NGNG('_' ) へー。
0009( '_')
NGNG0010( '。')
NGNG('_' ) へー。
0011( '。')
NGNG('_' ) へー。
0012( '。')
NGNG('_' ) へー。
0013( '。')
NGNG('_' ) ウン。
0014デフォルトの名無しさん
NGNG今度からは書き込みボタン押す前に5秒以上確かめろ。
00151
NGNG_,( ´Д`)⌒ i |
(⌒ ー 一 r.、! 〉
ヽ弋 。 人 。 イ(` ー'
〔勿\ ヽ
) r⌒丶 ) ドカ
ドカ ドカ / ! |'´
ドカ / /| |‖ ドカ
( く ! ||‖ ドカ
ドカ \ i | ‖|‖|
,__> ヽヽ从/∧∧
⊂⌒ヽ从/ つ ゚д゚) ←>>14
0016(ΦωΦ)
NGNG('_' ) ヘー
0017デフォルトの名無しさん
NGNG再現しないが、どうした?
0018( '。')
NGNG('_' ) ウソツキ。
0019デフォルトの名無しさん
NGNG0020( '。')
NGNGCPUウィンドウの表示のバグじゃなくて本当に消えちゃう。
もちろん最適化で省かれるんじゃなくて、絶対必要な部分なのに消えちゃう。
でも原因がはっきりしないんだ。
判ってるのはJMPのあとに現れる最初のジャンプ系の命令が消えることぐらい。
それも↑方向のショートレンジのJMPを置くと起こりやすいみたい。
でも条件はこれだけじゃないみたいで、再現したりしなかったり。
でももう直ってるかな?今までの全部BCB3の話。
早くお金ためてアップグレードしなきゃ。
('_' ) 長いよ。
0021( '。')
NGNGJMP $+xxに置き換えたら直るんだ。
('_' ) もう寝ようぜ。
0022( '。')
NGNGまだお金ないよ。
('_' ) 寝れ。
0023( '。')
NGNG置き換えると消えなくなるんだ。
('_' ) 氏ね。
0024デフォルトの名無しさん
NGNG0025( '。')
NGNG('_' ) 元気出せよ今度こそアップグレードするんだろ?
0026( '。')
NGNG('_' ) おまえこないだ中退したろ。
0027( '。')
NGNG('_' ) 結局今日はほとんど人いなかったな。
0028デフォルトの名無しさん
NGNG('_' ) ひきこもりの俺らには関係ないさ。
0029デフォルトの名無しさん
NGNG0030( '。')
NGNG('_' ) こんな時間に覗くなよ。テレホーダイなんだから。
0031( '。')
NGNG('_' ) ゴッドハンドはいなかったけどな。つか回線切れって。
0032( '。')
NGNG('_' ) Delphi相談室とC++相談室あるしな。
0033( '。')
NGNG('_' ) BCB3でGO!だな。
0034デフォルトの名無しさん
NGNGユーザーのコンポーネントを置くフォルダを規定して欲しい。
0035デフォルトの名無しさん
NGNGよくそんな環境で我慢しているね。
短い人生を無駄遣いするのが趣味ですか?
0036( '。')
NGNG('_' ) 金が貯まるまでそれでも眺めてるか。
0037( '。')
NGNG('_' ) あと67MHz足りねーな。
0038TabSheetについて
NGNGいらなくなったTabSheetを破棄したいのですが
delete PageControl->ActivePage;
とやってOKなんでしょうか?
もっと気の効いたメソッドとかあるのかと思って質問させてもらいました。
前スレ966と重複書き込みです。すみません<m(__)m>
0039( '。')
NGNG>>38
良いと思いますよ。
要らなくなったコンポーネントは deleteで
破棄してしまってOKです。
後処理なんかもデストラクタでしてくれます。
0040( '。')
NGNGですのでやはり delete PageControl->ActivePage で良いんじゃないでしょうか。
0041デフォルトの名無しさん
NGNGスーパーハイソサエイティーハッカーのY.K氏の許可を得ているのですか?
age
age
0042TabSheetについて
NGNGありがとうございました。安心して眠れます。^−^
0043デフォルトの名無しさん
NGNGで、
DirectoryExists(hoge)が、
プロジェクト>オプション にて、
「実行時パッケージを使って構築」のチェックを外して、メイクするとリンクエラーになります。
外部ライブラリを参照しない、単独exeにしたいんだけど、どうしたらいいですか?
0044デフォルトの名無しさん
NGNGほんとだリンカエラー出るね。
合ってるか分からんけど *.bpr 開いて
<LIBRARIES value="Vcl50.lib vclx50.lib"/>
<SPARELIBS value="Vcl50.lib vclx50.lib"/>
って変更してみ。一応リンカエラーでなくなった。
0046_
NGNG効かなくなるのですが、どうすればいいでしょうか?
0047デフォルトの名無しさん
NGNGとか、スレッド使うとか。
0048_
NGNGありがとうございます^^;
0049デフォルトの名無しさん
NGNGそれやると、やっぱり処理速度って落ちるよね。
ループとかしている方のメイン処理の。
Application->ProcessMessage()を入れないと
CPU100%使い切ってるのに、入れてやると
多くても70or80%くらいなんだよねぇ。
if(loopCount % 100 == 0) {
Application->ProcessMessage();
}
とかやるべきかねぇ?
0050デフォルトの名無しさん
NGNGじゃあスレッドで。
0051デフォルトの名無しさん
NGNG005249
NGNGやっぱ、パフォーマンス求めるならそうなるよね。
1度だけ、見よう見まねでスレッド使ったことがあるけど、
なんだか使いづらかった。
こんな程度の腐れは逝って良しですね。。。。
0053デフォルトの名無しさん
NGNGApplication->ProcessMessage();
}
は良く使う手だよ。
プログレスバーの操作もその中にブッチこむよ。
0054デフォルトの名無しさん
NGNGメールアドレスとか名前とか取られるのがやなんだけど。
0055デフォルトの名無しさん
NGNG0056デフォルトの名無しさん
NGNG0057デフォルトの名無しさん
NGNG外部のエディタでソースを保存してBuilderに戻ると、
--------------------------------------------------
モジュールXXXXXXXのタイムスタンプが変更されました。
読み込みなおしますか?
--------------------------------------------------
と確認のダイアログが出るのですが、このメッセージを出さないようにする方法はありますか?
自動的に読み込みなおすようにしたいのです。
0058デフォルトの名無しさん
NGNGはないでしょうか?
Canvas->Pixels[x][y]=TColor;のループだと非常に遅い感じです。
0059デフォルトの名無しさん
NGNGScanLine使え
0060デフォルトの名無しさん
NGNGTMemoコンポーネントを使ってるんですが、
Lines->Add(ホゲホゲ)って文字列を追加していくと、
最後の改行の影響かなんかで、空白行が発生するんです。
これを無くすような文字列リストの追加方法を教えてください。
BCB5です。
0061デフォルトの名無しさん
NGNG0062デフォルトの名無しさん
NGNG改行入れられたくないなら、
Memo->Text = Memo->Text + hogeじゃダメ?
0063デフォルトの名無しさん
NGNG文字列リストへAdd(ほげ)、Add(ほげ)…ってやった後に、
Text+=ちょめってやったら、
***********
ほげ改行
ほげ改行
ちょめ
***********
ってなるのかな?
素人おしえてくんスマソ。
自分でやってみます。
006463
NGNGできました。
for(int i=0; i<10; i++) {Memo1->Lines->Add("これは中間行");}
Memo1->Text = Memo1->Text + "ここが最後の行";
これで最後の改行がきえました。
サンキュウデス。
0065デフォルトの名無しさん
NGNGCodeGuardに補足されるのだけど。
0067デフォルトの名無しさん
NGNGありがとう。試してみたけど駄目だった。
こんな変なコンポーネント使うのも恐いので、他のもので代用することにした。
しかし、Delphi4で修正されたものがどうしてBCB5に残ってるのか。
0068デフォルトの名無しさん
NGNGD4でも直ってないし。
0069デフォルトの名無しさん
NGNG文字列を高速に別の文字へ置換したいのですが、
AnsiString str; // 文章
AnsiString oldstr; // 置換対象の文字
AnsiString newstr; // 置換後の文字
int pos; // 削除指定 先頭場所
int length = oldstr.Length(); // 削除指定 長さ
while ((pos = str.Pos( oldstr )) != 0)
{
str.Delete( pos , length );
str.Insert( newstr , pos );
}
この方法だと、文章50万文字中に置換対照の文字が
5000〜10000程あると、如何しても何十秒もかかって
しまうのですが、何か良い方法は無いものでしょうか?
0070デフォルトの名無しさん
NGNG素直に、StringReplace使えば?
0071デフォルトの名無しさん
NGNGほれ。
str = StringReplace(str, oldstr, newstr, TReplaceFlags()<<rfReplaceAll);
0072Delフサギコ ◆zE1iiRdQ
NGNG,,,,,,,,,,,,,,,,∧,,∧ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
〜′,,,,,,,,,,ミ,,゚Д゚彡 < 文字列置換のコツがわかるかも
UU"""" U U \_______________
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1015685238
最初に出力するoutStrを用意して
SetLengthで予測される十分な長さを確保して
strからoutStrにコピーするのがいいです。
0073デフォルトの名無しさん
NGNG__finally使った下のコードで
[C++ 警告] xx: W8070 関数は値を返すべき って言われたんだけど
これは例外が起きた時に帰り値が不定になるって事だよね?
でも、じゃどう書けばいいの?
long *getBin(char *fname)
{long *mem;
FILE *fp=fopen(fname,"r");
if(fp==NULL) return 0;
try {
if( 0!=fseek(fp, 0, SEEK_END ) ) return 0;
long size=ftell(fp);
size=(size+3) &(-4);
if( 0!=fseek(fp, 0, SEEK_SET ) ) return 0;
mem =(long *) malloc( size );
fread(mem,size/4,4,fp);
return mem;
}__finally{fclose(fp);};
}
007473
NGNG0075デフォルトの名無しさん
NGNGつーかそれ以前にBuilderは関数の途中でreturnしたら
__finally内は実行されないのでそのコードははげしく問題あるぞ。
007673
NGNG気になって今、fcloseで改行入れてブレークポイントかけたらちゃんと 停止しました
007873
NGNGDelphiだと 単に exit するだけだから、 こういう処理スタイルでいいんだけど
C++とcライブラリの組み合わせで __finally って案外と使い難いですね。
・・・だから最初からfinallyが導入されなかったのかな
007975
NGNGたしかにC++だと__finallyよりauto_ptr等のように
スタックの巻き戻しでやるのが一般的かな。
とりあえず>>73のコードは return mem; を __finally の外に
書けば Warning は消えそうな気がする。
コンパイラの警告が __finally に完全対応していないのかな?
008073
NGNG__finally の下に return 0; 書いたら 警告はきえたし、ちゃんと動いた。
ありがとう。
cのライブラリだけだから例外が起きる可能性は無いと思うんだけど、そこまでは
コンパイラは判らないんだろうね
008173
NGNGたしかにコッチの方が __finally よりスッキリするみたい
long *getBin(char *fname)
{long *mem=0;
struct DFILE{
FILE *fp;
DFILE(char *n) {fp=fopen(n,"rb");};
~DFILE(){ if(fp){fclose(fp); };}
}f(fname);
if( 0!=fseek(f.fp, 0, SEEK_END ) ) return 0;
long size=ftell(f.fp);
size=(size+3) &(-4);
if( 0!=fseek(f.fp, 0, SEEK_SET ) ) return 0;
mem =(long *) malloc( size );
fread(mem,size/4,4,f.fp);
return mem;
}
0082デフォルトの名無しさん
NGNGで、2次元配列をソートする方法ってありませんか?
0083デフォルトの名無しさん
NGNG0084デフォルトの名無しさん
NGNGどのようなソートを望むのだ。
008582
NGNGn番目のiをソートキーとして、行単位にソートしたいです。
0086Delフサギコ ◆zE1iiRdQ
NGNG〜′,,,,,,,ミ,,゚Д゚彡< できると思いまフ>>83
UU""" U U \_______________
とりあえず
TCuteMemoを利用するなり
0087デフォルトの名無しさん
NGNGfseekの前にfpのNULLチェックしないの?
それと余計なセミコロンは癖ですか?
0088デフォルトの名無しさん
NGNG0089通り掛かり
NGNGこんなのでいかがですか。
void __fastcall TForm1::FormPaint(TObject *Sender)
{
char bmih[sizeof(BITMAPINFOHEADER)+4*256];
unsigned char Pixels[256][(256+3)/4*4];
BITMAPINFOHEADER *lpbi=(BITMAPINFOHEADER *)bmih;
lpbi->biSize=sizeof(BITMAPINFOHEADER);
lpbi->biWidth=256;
lpbi->biHeight=256;
lpbi->biPlanes=1;
lpbi->biBitCount=8;
lpbi->biCompression=0;
lpbi->biSizeImage=256*256;
lpbi->biXPelsPerMeter=0;
lpbi->biYPelsPerMeter=0;
lpbi->biClrUsed=0;
lpbi->biClrImportant=0;
RGBQUAD *lpQuad=((LPBITMAPINFO)bmih)->bmiColors;
for (int i=0;i<256;i++)
{
lpQuad[i].rgbRed =(unsigned char) i;
lpQuad[i].rgbGreen =(unsigned char) i;
lpQuad[i].rgbBlue =(unsigned char) i;
lpQuad[i].rgbReserved =0;
}
for(int i=0;i<256;i++)
{
for(int j=0;j<256;j++)
{
Pixels[i][j]=(unsigned char)j;
}
}
SetDIBitsToDevice(Canvas->Handle,0,0,256,256,0,0,0,256,Pixels,(LPBITMAPINFO)lpbi,DIB_RGB_COLORS);
}
0090デフォルトの名無しさん
NGNG{
AnsiString test = "abc";
return test;
}
main()
{
AnsiString str;
str = testfunc();;
}
というようにやった時strは元のtestがスコープ外に出てしまっているので
中身が不定になる可能性があるのでしょうか?
それともかならずstrの中身はabcになるのでしょうか?
0091デフォルトの名無しさん
NGNG大丈夫。だと思う。
VCLのソースをみた訳じゃないからなんとも言えないけど、
常識的な文字列クラスなら普通大丈夫。
0092デフォルトの名無しさん
NGNGどうやればいいの?
0093デフォルトの名無しさん
NGNG常識的な文字列クラスなので、大丈夫。
0094デフォルトの名無しさん
NGNG行と列が逆なら簡単なんだけど、それじゃだめ?
0097デフォルトの名無しさん
NGNG0098デフォルトの名無しさん
NGNGできますか?
009994
NGNGコンパイラ通してなから間違いがあるかも知れないけど…。
typedef std::vector<AnsiString> StrVec;
class compare_by_nth : public std::binary_function<const StrVec&, const StrVec&, bool>
{
int i_;
public:
compare_by_nth(int i) : i_(i) {}
bool operator<(const StrVec& a, const StrVec& b) const {return a[i_] < b[i_];}
};
std::vector<StrVec> mat;
// mat...
std::sort(mat/begin(), mat.end(), compare_by_nth(1));
詳しいことはSTLスレで聞いて。
0100デフォルトの名無しさん
NGNGこれでは一次元のvectorのソートじゃない?質問は二次元のvectorだった
ような気がするけど。
0101デフォルトの名無しさん
NGNGマウスクリックを感知できませんか?
0103デフォルトの名無しさん
NGNGなるほど。std::vector<StrVec>という所で既に二次元になっているわけか。
ファンクタ作る所なんか、C言語のqsortを彷彿とさせますね。
0104デフォルトの名無しさん
NGNG<で比較すると、単純なバイトレベルでの比較となるそうだからOKじゃない?
ロケールまで入れるとAnsiCompareを使用。ほとんど意味無し。
0105デフォルトの名無しさん
NGNG0106デフォルトの名無しさん
NGNG交互に表示するには、どうすれば良いでしょうか?
0107デフォルトの名無しさん
NGNGCppWebBrowserにNavigateメソッドでアニメーションGIFを読み込ませるw
色々方法があるから何とも言えん。
0108デフォルトの名無しさん
NGNG0111デフォルトの名無しさん
NGNGアクションマネージャーの使い方がよくわかりません。
アクションマネージャーで作成したアクションの
プロパティを変更したい場合、どうやって指定したらいいのだろう・・・。
その方法か、参考になるページがあれば教えてください。
よろしくお願いします。
0112デフォルトの名無しさん
NGNG出力される exe のファイル名を設定するには
どうすればいいですか?
.bpr をメモ帳で開いて
<PROJECT value="ここ.exe"/>
を書き換える以外の方法で、おながいします。
0113デフォルトの名無しさん
NGNGプロジェクト名を変える。
0114106
NGNGすでに指摘された欠点もありますし、
ファイル内にうまく組み込めなかったので、
何か他の方法を教えて頂けないでしょうか?
どうにかして、1秒おきに2枚の画像を
切り替えて表示する動作を実現したいのですが、
そのような方法をどなたかご教授ください。
0115デフォルトの名無しさん
NGNG2個のImageを重ねて置いて、1秒おきにVisibleをtrueにしたりfalseにしたりする。
0117デフォルトの名無しさん
NGNG0118デフォルトの名無しさん
NGNG★BCB★
(σ´ー`)σ
0119デフォルトの名無しさん
NGNGcharのフィールドにNULLを登録するのはどうするの?
以下のやり方だと0が入るのですが
TQuery *sql;
(省略)
sql->SQL->Text = "INSERT INTO TBL ( FLD) VALUES ( :DAT)"
sql->Params->ParamByName( "DAT")->AsString = NULL;
sql->ExecSQL();
0121デフォルトの名無しさん
NGNG0122デフォルトの名無しさん
NGNG「VALUES ( :DAT)」って、これでいいのかなぁ?
0123無責任だが
NGNGなにせ問合せでパラメータは使うけど挿入でそんな事した事ないや。
BDE なら sql->Insert();して sql->Fields を使うのがなんと言っても簡単だし
0124119
NGNGおぉ、行けました。
Clear();だけなら型がわからんから指定しとけってことだったのかぁ
さんきゅです
0125デフォルトの名無しさん
NGNG言いえて妙。
"INSERT INTO TBL ( FLD) VALUES ( :DAT)" なんて
文字列で SQL文を書いてしまうと、
せっかくのコンパイラのチェック機能がスルーされてしまうし。
…ってことかな?
ヽ(;´Д`)ノ アレ ?
( ____ )
@== > = >==
0126デフォルトの名無しさん
NGNGMS-DOSプロンプトで結果が表示された後すぐにウィンドウが閉じてしまうのですが、
閉じないようにするにはどうしたらいいのでしょうか?
MS-DOSのプロパティで「プログラム終了時にウィンドウを閉じる」のチェックは
はずしてみましたが駄目でした。
0127デフォルトの名無しさん
NGNG#include <conio.h>
int main()
{
...
...
getch();
return 0;
}
0128デフォルトの名無しさん
NGNG#include <cstdlib>
using namespace std;
int main()
{
..
..
system("pause");
}
0129デフォルトの名無しさん
NGNGint main()
{
...
...
while(1)
;
}
0130デフォルトの名無しさん
NGNG(?∀?)ドレ?
0131デフォルトの名無しさん
NGNG0132デフォルトの名無しさん
NGNGどれ、おいちゃんがageといてやろう。
0133デフォルトの名無しさん
NGNG何も書かなくても450kbか。
0135デフォルトの名無しさん
NGNG>>126-130
漏れは、DOS窓を起動してから
ProjectHoge.exe [Enter] していますが、何か?
標準出力に何かを出力するアプリケーションなら、
リダイレクトしてファイルに採っておけばよいし。
0136デフォルトの名無しさん
NGNG出来ました。
ありがとうございます。
0137Ð ë á t h ¹³
NGNGstruct TValue
{
int Value1;
int Value2;
};
asm
{
MOV [ESI+.Value1],EAX //○
MOV [(TValue PTR ESI).Value1],EAX //×
}
STRUC〜ENDSで構造体を定義すると×の行もエラーは出ないのですが、
そうするとC++のほうで、その構造体が使えなくなります。
○の方法だとオペランドサイズのチェックをしてくれないので
どうしても×のようにチェックしてくれる方法を使いたいんですが、
何か方法(×の行のエラーの出ない書き方とか)はないでしょうか。
0138無責任だが
NGNGそういうふうにしたい場合は、H2ASH (使い方はTSM_UTIL.TXTに )で構造体を変換して
それをインクルートするのが普通じゃないかな
MOV [ESI+.Value1],EAX のような使い方だと、それはBCC32でコンパイルされると
MOV [ESI+0],EAX になってしまう
0139Ð ë á t h ¹³
NGNGありがとうございます。そんなのがあったんですね。
なぜかうちのBCBにはH2ASHが無い・・・CDにも入ってない・・・。
バージョン古いからかな。
> MOV [ESI+0],EAX になってしまう
そう、これで困ってました。即値になるだけで修飾はされないんですよね。
WEBでTSM_UTIL.TXT見るとH2ASHを使えば解決できそうですが、
無いものは仕方無いので、夜になったら(テレホなので(*´д`) )
フリーのBC++ダウンロードして入ってないか調べてみます。
0140デフォルトの名無しさん
NGNGBCCはTASM自体が入ってないよ。
0142Ð ë á t h ¹³
NGNGH2ASHと同じ事を手作業でやるという最終手段を使うしかないかな。
>>140 テレホタイムを浪費するところでした。ありがとうございます。
>>141 TASM単体に付いてくるということなんですね。
BCBのTASMと一緒に付けて欲しかったスBorlandサン。
0143無責任だが
NGNG構造体メンバがバイトなのか16bitなのかとかが反映されないから嫌なんでしょ?
でもそれをインラインアセンブラで書こうというのが無理やりのように思う
あとで間違えないようにという事なら assert で サイズチェックを入れておいたら?
0144デフォルトの名無しさん
NGNGフリーで落とせるペーヅ教えてくださレ」。
0145Ð ë á t h ¹³
NGNG例えば
FLD DWord ptr [ESI+.Value] を、
FLD [(TValue PTR ESI).Value],
とできると、Valueがfloatからdoubleに変更になってもコードは変更しなくて済みますよね。
修飾してる場合は、全て修正しなくてはなりませんし、修正忘れが1つでもあるとバグになります。
こういう変更が時々あって、構造体もアセンブリコードもマグナムサイズなものですから、
楽でバグを出しにくい書き方のほうを使いたかったのです。
結局自前でstructと同じ構造のSTRUC〜ENDSを作ることになりそうですが。(*´д`)
0146デフォルトの名無しさん
NGNG過去ログ読んでて、気になって仕方がないんですが、
なんでOKなん?
char *型 "ABC"
AnsiString型 ローカル変数 testが動的確保した"ABC"
AnsiString型 戻り値が動的確保した"ABC"(testのコピー)
の3種類作られるけど、関数抜けた時点では最初の2つしか開放されないから?
そんなの実装次第じゃん、厨房な俺に教えてくれ〜
BCCとあまり関係なくてスマソ
0147無責任だが
NGNGうーん x86に限ってはBCCもそれほど目立って効率の悪いコードを
出す訳じゃないのと、特に浮動小数点コードを使うとその演算に隠
れてしまうので、その手の構造体の絡んだコードをアセンブラで書
こうとした事はありません
まあ自前で struct 変換ルーチンを作るのが簡単かも
0148無責任だが
NGNG実装次第だから、その実装をそれでOKなように作っているという事では?
int testfunc()
{
int test = 0xabcd;
return test;
}
なら 大丈夫なので、それと同じように使えるように AnsiStringクラスを作ったという事でしょう
それから、文字列クラスはもう一つ作られている筈です。
それは>>90のtestfuncの返値の隠れた文字列クラスです。
このコンストラクタは関数の呼び出し直前に呼ばれて、関数が帰って代入動作をすると消えます。
0149デフォルトの名無しさん
NGNG実行中、同時に音楽や動画を再生しても途切れなく再生できます。
自作のプログラムが固有するCPUの割合は調整できないのでしょうか?
0150デフォルトの名無しさん
NGNG動作が遅いといっても、他に何も同時実行させてなければ、CPUをフルに使えるはずだが。
他のプロセスやスレッドと同時実行させてて、そっちよりも優先的にCPUを使いたいってことなら、
SetThreadPriority や SetPriorityClass を使えばよろし。
0151デフォルトの名無しさん
NGNG解説サンキュー
必ず基本型と同じ感覚で使えるように作ってるってわけですか
(自分で作るとき、そこまで考慮してないけどなぁ)
C++の文法は大体わかったつもりだけど、このへんの暗黙のルールとか
ライブラリとかは、まだまだ理解不足だねぇ
頭の中はC言語とアセンブラのまんま〜
>それから、文字列クラスはもう一つ作られている筈です。
>それは>>90のtestfuncの返値の隠れた文字列クラスです。
>>146の3つ目がそのつもりだったんだけど書き方が悪かったね
0152デフォルトの名無しさん
NGNG0153デフォルトの名無しさん
NGNGEDITコンポを2つ配置し"A"を名前"B"を読み仮名とします。
ユーザーが"A"に名前を漢字で入力すると"B"に読みが半角カナで仮表示
(ユーザーが修正可能)されるというものを作りたいのですが、どのよう
にしたら良いかわかりません。
"B"に何か別なコンポーネントを使えばよいのでしょうか?
アドバイスやここを見れと言うのでもかまわないのでご教示
お願いいたします。
0154デフォルトの名無しさん
NGNGDelの例ですが
ttp://www2.big.or.jp/~osamu/Delphi/Tips/key.cgi?key=25#0201.txt
に、そのままがありまっせ。
0155デフォルトの名無しさん
NGNG図1)のように、画面を分割したいのですが、縦分割は簡単にできたのですが、B領域とC領域の横分割がうまくできません。
TSplitterにて、AとBCの分割は、Align=alLeft、Left=分割位置、にて簡単にOKだったのですが、
BとCの分割を行おうとして、Align=alTop、Top=分割位置とすると図2のようになってしまいます。
Align=alTopを指定すると、Topの値は無視されるようです。
図1)
AAAAAAAA|BBBBBBBBB
AAAAAAAA|BBBBBBBBB
AAAAAAAA|BBBBBBBBB
AAAAAAAA|------------
AAAAAAAA|CCCCCCCCC
AAAAAAAA|CCCCCCCCC
AAAAAAAA|CCCCCCCCC
図2)
BBBBBBBBBBBBBBBBB
BBBBBBBBBBBBBBBBB
BBBBBBBBBBBBBBBBB
-----------------------
AAAAAAAA|CCCCCCCCC
AAAAAAAA|CCCCCCCCC
AAAAAAAA|CCCCCCCCC
AAAAAAAA|CCCCCCCCC
画面を縦に分割して、その分割した右側を横に分割する方法をアドバイスお願いします。
0156デフォルトの名無しさん
NGNG0157155
NGNGありがとうございます。できました。
TPanelにTSplitterを入れることができるのですね。
VCの考え方と全然違うのでとてもとまどってしまいました。
MFCの、CSplitterWndに相当するものを必死で探してしまいました(汗)。
0158デフォルトの名無しさん
NGNGこないだの漏れと同じだ(笑)
・AをAlign=alLeftで作る
・Aの右にスピリッタ入れる
・BC領域にあたる部分にパネルを張る
・Bをalign=alTopでパネル上に作る
・Bの下、パネル上にスピリッタを入れる
・Cをalign=alClientで作る
パネルはBevelOuter=bvNoneにすると吉
0159.
NGNGTEditを並べてVK_RETURNで次のEDITへ
SetFocusしてます。
そのとき、ポーンとBEEP音がなりうるさいのですが
なんとかならないでしょうか?
一行テキストですから本来入力できない リターンがくると
警告音がなるには当然ですが・・・
0160デフォルトの名無しさん
NGNGいちいち読み込んでいて、埒があきません
0161デフォルトの名無しさん
NGNG0162デフォルトの名無しさん
NGNGを有効にして生ソケットを扱ってみたのですが、
sendto で WSAError の 10049 が発生します。
VC6 では問題なく実行できました。
何か原因考えられないですか?
0163デフォルトの名無しさん
NGNG試してないけどOnKeyDownで
if(Key == VK_RETURN)
Key = NULL;
0164.
NGNG試してみましたがダメでした。
0165無責任だが
NGNGDelphiの場合、そういう場合はAbort例外を投げるんだけど
if Key=#13 then begin
Edit2.SetFocus;
Abort;
end;
Builderでも同じじゃないかな?
0166デフォルトの名無しさん
NGNGOnKeyPressでは駄目かな。とりあえずどちらかで出来たよ。
0167デフォルトの名無しさん
NGNGKey = NULL;
0168.
NGNGOnKeyPressでAbortで出来ました
0169デフォルトの名無しさん
NGNG0170デフォルトの名無しさん
NGNGと言われるのですが、どうしたらいいのでしょうか?
windows.h はインクルードしていますが、VCL関連のヘッダは
インクルードしていません。
0171デフォルトの名無しさん
NGNG0172170
NGNGあります。
\CBuilder\Lib\Objフォルダにあります。
プロジェクトオプションのライブラリパスでも通っています。
ファイル名は Sysutils.res と小文字ですが、関係無いですよね・・・。
0173デフォルトの名無しさん
NGNG0174170
NGNG*.makファイルをいじったのがいけなかったようです。
0175デフォルトの名無しさん
NGNG0176デフォルトの名無しさん
NGNG0177デフォルトの名無しさん
NGNGつまんねーよ、カス
0178デフォルトの名無しさん
NGNG>>177
やめろーDelスレとかC言語スレみたいになる
0179デフォルトの名無しさん
NGNG0180デフォルトの名無しさん
NGNG覚えたんですか?
0181デフォルトの名無しさん
NGNG0182デフォルトの名無しさん
NGNG0183デフォルトの名無しさん
NGNG0184デフォルトの名無しさん
NGNG0185デフォルトの名無しさん
NGNG0186顔も名前も出さずに毎月100万円
NGNGなんと10,000円単位の収入
●10,000円単位の高収入
1件につき最大10、000円の高額収入。月収100万円以上も可能。
●画期的なビジネス!
インターネットを利用したこれまでにない斬新で画期的なビジネスです。
●誰でも出来ます!
インターネットが出来る環境の方なら誰でも参加可能です。
●専門的な知識は一切不要!
ビジネスに必要なツールはすべて当社で用意いたします。また、サポ
ートも万全です。
●詳細は今すぐHPをご覧ください。
http://www.future-web.tv/7823/
0187新米
NGNGセーブする方法で悩んでいます。Form上のCanvasプロパティを使って、読み込んだ
Bitmapに図形を書いたり、消したりすることができることがわかったのですが、
それでは、図形がBitmapに書き込まれたことにはならないので、Imageコンポーネント
にあるBitmapをセーブしてもNGですよね。 何か良い解決策はないでしょうか?
一度、書き込んだ図形の消去も可能にしたいのですが、よくやり方がわかりません。
どなたか助けてー
0188デフォルトの名無しさん
NGNGttp://www.netjoy.ne.jp/~tuya/DlphTutor/DlphTutor5.html
ttp://www.netjoy.ne.jp/~tuya/DlphTutor/DlphTutor6.html
0189デフォルトの名無しさん
NGNGFormではなくImageのCanvasつまり Image1->Canvasに描くと
図形をBitmapに描いた事になる
0190デフォルトの名無しさん
NGNGWindows 98 SE + C++Builder5.5 にて、
他人(誰?)が書いたソースを使ってビルドすることを企てております。
どうしても struct _timeb と _ftime() が定義されていないという理由で
コンパイルが失敗します。
いちおう、
#include <sys\types.h>
#include <sys\timeb.h>
こんなふうにヘッダファイルをインクルードしてあるんですけれど、
ダメなんです。
#define _timeb timeb
とか、勝手にやっちゃえばいいんでしょうか? アヒャー(・∀・;)
0191デフォルトの名無しさん
NGNGいいんじゃない?
0192デフォルトの名無しさん
NGNG0193デフォルトの名無しさん
NGNG0194デフォルトの名無しさん
NGNG0195デフォルトの名無しさん
NGNG0197デフォルトの名無しさん
NGNGttp://homepage1.nifty.com/cosmic/delphi/vcl.html
ここの「テキストファイルプレビュー機能付きオープン・セーブダイアログ」なんですが
テキストプレビュー部分で右クリックすると
親コントロールが無いと言われ例外が出てしまいます。
どうしたらいいんでしょうか。
0198197
NGNGBCB6です。
0199デフォルトの名無しさん
NGNG作者に聞けよ…
0200名無し~3.EXE
NGNG作者のサイトに
>C++Builder に関する質問は、回答できない(する能力がない)ので送らないでください。
と書かれていたので
使ったことある人いるかな、と思いここで聞いたのですが。
0201デフォルトの名無しさん
NGNGTCSpinEditって、なんかおかしいような気がします。
数字入れるものとして使いたいのに、エディットの中でEnter押すと、
なぜか改行が入力されてしまいます。数字以外も入力できるし。
スピンつきの数値入力にはなにか別のものを使うんでしょうか?
0202デフォルトの名無しさん
NGNGBCB6持ってないから試せないけど、
unit TextDlgs;
: ←ここの、{$ではじまる行を全て削除してみるとか
interface
0203デフォルトの名無しさん
NGNGeditとspin組み合わせてもそうなる、使用じゃないの?
0204デフォルトの名無しさん
NGNGTTextOpenDialog で起きるの?
0205デフォルトの名無しさん
NGNGDel6で試したけどエラー出る・・・。
>>202は関係なかったみたい。ゴミン無視して。
0206197
NGNGはい、そうです〜。
>205
自分もDel6Personalいれて試してみました。
エラー出ますね。
ってことで一応作者の人にメールしておきました。
返答ありがとうでした。
0207デフォルトの名無しさん
NGNG0208Delフサギコ ◆zE1iiRdQ
NGNGミ*゚Д゚*ミ < 一歩一歩
(ミ ミ \大人になっていくのです
〜ミ ,,, ミ
し' `J
最近は電車の部品の名前では...
なんとなく、.NET対抗age月間
0209デフォルトの名無しさん
NGNGhttp://www.nevrona.com/Indy/download80.html
に書かれている
Please note that the install does work properly
with C++Builder 4, 5 and it will fail to generate
the compiler binaries on drives (E: and N:).
This is a failure in the installation ONLY and not in Indy itself)
という文章は、E又はNドライブにIndyを
インストールしちゃだめでっせ。という解釈で
よろしかでしょか?
当方、BCB5 Pro(Update1)でし。
0210デフォルトの名無しさん
NGNG0211209
NGNGなんで、そんな制約があるんでしょうね。
TCppWebBrowserを越える使い勝手があることを祈ってまする>Indy
0212デフォルトの名無しさん
NGNGなんでそんなバグかは非常に興味がある。
0213デフォルトの名無しさん
NGNGIndy のインストーラがなんか変なことやっているのかな?
0214デフォルトの名無しさん
NGNGIndyとTCppWebBrowser?
比較対象がおかしいぞ。
0215デフォルトの名無しさん
NGNG0216201
NGNGありがとうございます。
TCSpinEditを使わないとすると、
代替のブツはどのような方向性で作る(探す?)のがいいんでしょうか?
最悪、APIで組み合わせることになるとか?
0217Delフサギコ ◆zE1iiRdQ
NGNG∧,,∧∩ /TEditと
ミ*゚Д゚*ミ < TUpDownをセットで
(ミ ミ \ お使いになるのが
〜ミ ,,, ミ よいと思います
し' `J
TUpDown.Associateがあるぞよ
ちょっとデザインが違うけどね
0219デフォルトの名無しさん
NGNGオブジェクトや実データにつけるTとかFってどういう意味でしょう?
TはオブジェクトのTかなぁと思ってみたりもするのですが…。
0220デフォルトの名無しさん
NGNGオブジェクトのTって…強引すぎ(w
型(Type)のTな。
TurboPascal時代からの慣習だYO!
メンバのFはなんだっけ…
0221Delフサギコ ◆zE1iiRdQ
NGNGミ,,゚Д゚彡< フィーは♪フィー♪ルドの♪フィー♪
'ミ つ旦)~~ \___________
⊂ミ",, ,,ミ つ
0222219
NGNG全然見当違いでした。知ってどうなるわけでもないけど結構気になってたので
聞いて良かったです。ありがとです。
0223211
NGNGぐはっ、両者を比較するのは間違ってますか・・・・
やりたいことは、HTTPクライアントを作って
特定のURLを巡回し、指定されたHTMLファイルを
取得できるかどうかを調べる、簡易WEBサーバ監視ツールを
作りたいんですが・・・・・
TCppWebBrowserを使ってみたんですが、どうも思って
いた物と違ったようなので、winInet関連にもはしりましたが
Indyの中にもHTTPクライアントとして使えるような
コンポーネントがあると思っていたんですが・・・・
とりあえず、これからインストールしてみます。
0224デフォルトの名無しさん
NGNGそれならIndyでOK
223自身も言ってるようにTCppWebBrowserを使うのが変
0225211
NGNGありがとうです。
いま、インストールしてとりあえずサンプル動かしてみたんですが
winInetなんて使ってられないくらい便利ですね。
が、HTTPのステータスコード(TIdHTTP->ResponseCode:404 Not Foundとかのやつ)が
おかしな事になっています。
たとえば、
http://www.2ch.net/
http://www.2ch.co.jp/
を巡回すると、1つ目の方は当然のごとく200(OK)を返しますが、
2つ目の方でも200を返します。
本来、2ch.co.jpなんてのは実在しないんだから
NULLか0あたりを返してくれることを期待していたんですが・・・
何かご存じの方いませんか?
0226デフォルトの名無しさん
NGNG0227デフォルトの名無しさん
NGNG男ならTClientSocket・・・は使いにくいのでソケットAPI叩こう!
0228げるるん
NGNGいや、WinINETAPIで十分だろう
0229デフォルトの名無しさん
NGNGttp://www.bradsoft.com/topstyle/2.5/screenshots/1.gif
こういうデザインのソフト増えてきたけど
こういうツールバーとかタブってどうやって作ったら
いいんだろう・・・。
0230Delフサギコ ◆zE1iiRdQ
NGNGhttp://www.geocities.co.jp/SiliconValley-PaloAlto/1512/
\
 ̄ ̄ ̄ ̄ Ο  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
ο
♪ ∧,,∧゚ ♪
ミ,,゚Д゚彡 ♪
ミつ[|lllll]).
〜ミ ミ
U''U
0231デフォルトの名無しさん
NGNG{
// Memo1->SetFocus();
Memo1->SelectAll();
}
SetFocusしないと SelectALlが効かないんですが、これってそういうもの?
それから Memo1のReadonly=true;にしてあると
CutToClipbordも効きません。
W2000でBCB5です。
0232Delフサギコ ◆zE1iiRdQ
NGNGミσ゚Д゚ミσ
HideSelection=False?
ReadOnlyなんだから、Cutはできないのは普通じゃないかな?
0234デフォルトの名無しさん
NGNGこれって対応Windowsってどれどれ?
0236デフォルトの名無しさん
NGNG例によっての話、IEのバージョンによってバグの入り方は違う。
何でバージョンによってDLL名変えないのかねえ
0237デフォルトの名無しさん
NGNG0238デフォルトの名無しさん
NGNGどれか1つ使った場合も全部exeにくっついちゃうの?
0239デフォルトの名無しさん
NGNG0240デフォルトの名無しさん
NGNGリンカが取り除けるものは取り除くけど
使っているものはもちろん
使われるかどうか判らないものはリンクされる。
使っているもの
それぞれのunitの nitialization finalization
使っているかどうか判らないもの
publishedな部分
リソース
0241デフォルトの名無しさん
NGNG>238さんじゃ無いけど。
ってことは、出来るだけパッケージ分けた方がいい?
0243デフォルトの名無しさん
NGNGあー、すまんっす。
勘違いしてた。
0244デフォルトの名無しさん
NGNGimplibでDLLからlibファイルこさえてSDKのヘッダファイルincludeすればいいだけだと思うが。
0245デフォルトの名無しさん
NGNGとりあえず、チュートリアル通りにエディタを作って
みたのですが、そこで少し疑問がでたので質問します。
この手のサンプルを見てると
「新規作成」を選ぶと画面をクリアするように
なってますが、エディタって大抵新しいウィンドウ(フォーム)を
開きますよね。
でも、その方法がわからないのです。
ご教授、よろしくお願いします。
0246デフォルトの名無しさん
NGNGTForm1.CreateModal();だったっけ?
0247245
NGNGCreateModalというメソッド無いみたいなんですが・・・。
一応ShowModalかな?と思い試してみたんですが
「表示されているウィンドウをモーダルにすることはできません」
と言われてしまいます。
0248デフォルトの名無しさん
NGNG0249デフォルトの名無しさん
NGNGform->ShowModal();
delete form;
0250デフォルトの名無しさん
NGNG>「新規作成」を選ぶと画面をクリアするように
>なってますが、エディタって大抵新しいウィンドウ(フォーム)を
>開きますよね。
メモ帳やワードパッドはそんなことないよ。と言ってみるテスト。
VCLにはメインフォームというものがあって、ちょっとやっかいな構造になっております。
新しいフォームを開くのはいくらでも出来るんですが、
最初に開いたフォーム(メインフォームと呼ばれる)を閉じると、
後で開いたフォームも全部閉じてしまうです。
・・・続き(解決編)聞きたい?
0251デフォルトの名無しさん
NGNG確か、8になってから
その方法でも使えなくなったってどこかで見たな。
0252デフォルトの名無しさん
NGNG0253245
NGNGうあ、そうだったんですか。
MDIアプリにした方がスマートなのかな・・・。
続き、一応聞きたいです。
理解出来るかはわかりませんが(苦笑
0254デフォルトの名無しさん
NGNGhttp://www.geocities.com/foetsch/cbuilder.htm
こんなものをどうぞ
0255デフォルトの名無しさん
NGNG〜bor.dllの配布がいやん。
0256デフォルトの名無しさん
NGNG――― ★ ―――
// | \
/ /. | \
/ |
ワガママ 言うな!
-  ̄ ̄ ―
/
/ ヽ
∧_∧_
| ( ´Д`)  ̄"⌒ヽ
| / ) ヽ' / 、 `、_
γ --‐ ' λ. ; !
f 、 ヾ / )
! ノヽ、._, '`"/ _,. ‐'"
| j ヽ 〈_,,,ノ" ヽ
! ヽ 冫 y' .ノ
`、 \ | / /
\、ヾ | | イ-、__
l.__| }_ l
_.| .〔 l l
〔___! '--'
0257デフォルトの名無しさん
NGNGエディタのフォームとは別にダミーのメインフォームを作ります。
これでエディタフォームは開いたり閉じたりしても大丈夫ですが、問題がいくつかあります。
1.メインフォームが邪魔
・・・画面外に追いやって見えなくするとか API を使って非表示にするとか。
2.個々のエディタフォームがタスクバーに現れない
・・・SetParentで親をNULLにするとか、WS_EX_APPWINDOWを付けるとか。
3.エディタフォームを全部閉じてもアプリケーションが終了しない(メインフォームが残ってるので)
・・・エディタフォームが全部閉じられたらメインフォームも閉じるよーにします。別にメモリに常駐しててもいいけど。
別なアプローチとしては、新しいフォームを開く代わりに自分の exe をもう1個起動させることも出来ます。これはカンタン楽チン。不便な面もあるけど。
0258デフォルトの名無しさん
NGNGモナーむこう側を向いてる方が絵的にいいなー。
0259245
NGNGなるほど・・・。
何となく理解しました。
例えばタスクトレイに入れておく
ダミーのメインフォームを作って
そこから>249さんが書いてくださった方法で
開いていけばいいと。
頑張ってみます〜。
0260デフォルトの名無しさん
NGNGタブにしたらどう?
TPageControl に挿入するか TTabControlにして 作成したフォームを一つだけ有効にするか
0261245
NGNGウィンドウは開けるんですが、
一番最後に開いたウィンドウにしかフォーカス当たらない(苦笑。
ってことで、道は遠そうです。
>260
それもいいですね。
そうしてみようかな・・・。
0262デフォルトの名無しさん
NGNGShowModal は、モーダルダイアログと呼ばれるやつです。他のフォームが全部使えなくなる。
ただの Show なら大丈夫。(でもすぐ delete しないように)
0263245
NGNGおおっ、できました〜。
やっぱり自分が思ったとおりに動くと嬉しいですね。
これからも頑張ります〜。
0264デフォルトの名無しさん
NGNG英語版Windws環境上で、英語メッセージが出てくるようにするには、
どうしたら良いでしょうか?
0265デフォルトの名無しさん
NGNG分レビューは正常なのですが、実際に印刷すると
C
A
B
C
D
となってしまいます。
実際にはデータは、A,B,C,Dしかないのですが。。。
BCB5 QR Ver3.0 です。m(_ _"m)ペコリ
0267デフォルトの名無しさん
NGNGありがと、試してみます。
難しそう・・・
0268デフォルトの名無しさん
NGNG質問があります。
自分で new をつかって作成したオブジェクトでも、delete しなくていい(しちゃいけない?)
ときってありますよね?
そこの線引きがよくわかりません。
たとえばImageListにnewでつくったBitmapを追加したとき、
その追加メソッドの呼び出しに渡したポインタはdeleteしてもいいのか、とかです。
なにかわかりやすい指標のようなものはないでしょうか?
それとも、なんか勘違いしてます?
0269デフォルトの名無しさん
NGNGかな?
0270デフォルトの名無しさん
NGNG基本的に自分で作った物はFree。
TListのデストラクタをオーバーライドして解放ルーチンを埋め込んだり。
0271268
NGNGはいーわかりましたー。
もいっこ、確認ですが、 Owner を設定して new で作ったモノは delete
してもいい?しちゃだめ?
0272デフォルトの名無しさん
NGNG~( )−
/ >
0273デフォルトの名無しさん
NGNG0274268
NGNGこれでVCLとは友達だ。
0275Delフサギコ ◆zE1iiRdQ
NGNG> してもいい?しちゃだめ?
∧,,∧ / ̄ ̄ ̄ ̄ ̄ ̄ ̄
ミ 彡 < あえて言っておこう
(ミ ミ) \_______
ミ ミ
∪ ∪
∧,,∧ サッ / ̄ ̄ ̄ ̄ ̄ ̄ ̄
ミ,,゚Д゚ミ < しなくてもいいんだ。
⊂ Om \_______
ミ、,, ミ,
.しヾJ してもいいけどネ
0276デフォルトの名無しさん
NGNGxボタンでソフトを終了されると落ちるんですけど、
どうしたらいいでしょうか?
XXX->FreeOnTerminate = false;
XXX->Resume();
で、一個スレッド作ってから、そのスレッド内で
YYY->FreeOnTerminate = true;
YYY->Resume();
bool bn=YYY->WaitFor();
と、もう一個スレッドを動かしてます。
0277デフォルトの名無しさん
NGNGアプリが終了したときのXXXとYYYの終わらせ方に問題があるのかも。
0278デフォルトの名無しさん
NGNGXXXは勝手に開放されるのかな〜と思いますが
YYYはやっぱり開放しなきゃいけませんよね?
アプリ終了時何もして無かったです。
0279デフォルトの名無しさん
NGNGXXXは明示的に開放が必要だよね。
0280デフォルトの名無しさん
NGNGXXX->FreeOnTerminate = true;
XXX->Resume();
で、一個スレッド作ってから、そのスレッド内で
YYY->FreeOnTerminate = false;
YYY->Resume();
bool bn=YYY->WaitFor();
と、もう一個スレッドを動かしてます。
でした。
スレッドが動いてる最中にユーザーにソフトを終了された場合
どのようにスレッドを終了すればいいのでしょうか?
0281デフォルトの名無しさん
NGNG0282デフォルトの名無しさん
NGNG調べる方法ってないですか?
0283デフォルトの名無しさん
NGNGありがと
0284デフォルトの名無しさん
NGNGC++ Builder 5.5 を使ってるんです。で、
プリプロセッサの出力結果とかは、
IDE のほうのオプション指定でテキストファイルに出力
できるのでしょうか?
0285デフォルトの名無しさん
NGNG0286デフォルトの名無しさん
NGNGてへっ
く( ´�D`)
そしたら、名句ファイル吐かしてからやってみますです。
(´∀`) ありありがとう☆
0287デフォルトの名無しさん
NGNG0288デフォルトの名無しさん
NGNG__ / ヽ
\  ̄\ \ ̄\ / ̄ ̄ ̄
||\ ___| ( )|_ \ < ・・・・
||\|| | | V ̄V| | _|| ̄ \___
|| || ̄ | | ̄ ̄ ̄| | ||
.|| U U .||
0289デフォルトの名無しさん
NGNG__∧_∧ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
/( ´Д`)V < はッ!先生、ちがっ・・・!、2日間も寝たりなんかしてません!
__ / /| u゚_/ ) \________________________
\ ( ( ̄ ̄⊆_ノ ̄\
||\ `ー⊃ \
||\|| ̄ ̄ ̄ ̄ ̄ ̄ ̄|| ̄
|| || ̄ ̄ ̄ ̄ ̄ ̄ ̄||
.|| ||
0290デフォルトの名無しさん
NGNG0291デフォルトの名無しさん
NGNGメニューをIEみたくドッキング可能にしたいのですが、方法がわかりません。
TControlBarを置いて、TMainMenuを作ったら、単にメニューがTControlBarの上に表示されてしまいました。
そもそもTMainMenuを使ってドッキング可能なメニューは作成できますか。
0292デフォルトの名無しさん
NGNGTMainMenu系は APIのCreateMenu InsertMenuのラッパです
windows標準のメニュー バーはオーバーラップ ウィンドウかポップアップ ウィンドウにしか付加できません
0293デフォルトの名無しさん
NGNG0294デフォルトの名無しさん
NGNG0295291
NGNGということは、TPanelにTSpeedButtonを張ってCaptionに、ファイル(&F)とか設定して
押された場合は自前でポップアップメニューを表示する・・・みたいにしなければならないと
いうことなのでしょうか。
0296292
NGNGhttp://info.borland.com/devsupport/delphi/downloads/index.html
TMenuBar をダウンロードしたらいんじゃないの?
0297291
NGNGありがとうございます。何とかできそうです。
なにせC++Builder使い始めてまだ3日なもので・・・(汗
0298デフォルトの名無しさん
NGNGAlt + Cならば、Nameプロパティに&Cってやればいいのは知っているのですが・・・
0299デフォルトの名無しさん
NGNGヘルプに烈しく載ってる気が…
0300Delフサギコ ◆zE1iiRdQ
NGNGミσ゚Д゚ミσTMenuItem.ShortCutプロパテ
0301デフォルトの名無しさん
NGNGSTLスレッドとWin32API 質問箱もあるからねえ。
0302デフォルトの名無しさん
NGNG++ がないから偽者にひっかかっちゃったよ。
0303デフォルトの名無しさん
NGNGC++Builder5にて、ファイル(F)-新規作成(N)-プロジェクトタブを選択-アプリケーションウイザード
にて、SDIアプリケーションを作成しました。そして、
http://www.borland.co.jp/tips/cbuilder/cb008/
に記述してある方法にて、タスクトレイに常駐させようとしたところ・・・
実行すると、EStackOverflow クラスの例外を生成しました・・・
というエラーが発生してプログラム起動すらしません。
調べたところ、
http://www.borland.co.jp/tips/cbuilder/cb008/task_2.html
に記述してある、
BEGIN_MESSAGE_MAP
MESSAGE_HANDLER(WM_USER+1, TMessage, TrayEvent)
END_MESSAGE_MAP(TForm)
をコメントアウトするとプログラムの起動はするようになります。
なにがいけないのでしょうか。
0304デフォルトの名無しさん
NGNGリンカのオプションでスタックサイズ増やしてみれば?
0305303
NGNGアプリケーションウイザードで作成してほんのちょっとのコードを付け足しただけなんですが・・・
0306デフォルトの名無しさん
NGNG0307303
NGNGTMainForm になってます。
class TMainForm : public TForm
{省略} です。
これは、自分が名前を付けたのではなく、アプリケーションウイザードが勝手に作成したのですが。
0308303
NGNG動きました。ありがとうございます。
END_MESSAGE_MAP(TMainForm)
を
END_MESSAGE_MAP(TForm)
に修正したら一発で動きました。
0309303
NGNG#define END_MESSAGE_MAP(base) default: \
base::Dispatch(Message);\
break; \
} \
}
base パラメータは,これらのマクロを使ってメッセージマップが宣言されるコントロールの基本クラスを指定します。
とちゃんと書いてありました。
これだけで3時間くらい悩んでしまった。
どうもありがとうございます。
0310デフォルトの名無しさん
NGNG0311デフォルトの名無しさん
NGNG0312.
NGNGTlistBoxで Item->Add (XXXXX)でリストを増やしていき
枠外に出たとき、スクロールバーは出ますが追加した行は
そのまま枠外に出てしまいます。もちろん手動スクロールすれば
見れますが自動的に今追加した行が(行末)が出るように出来ないでしょうか?
0313デフォルトの名無しさん
NGNGがあれば、Windowsアプリケーションは作れますか?
0314デフォルトの名無しさん
NGNGint Index = ListBox1->Items->Add("あいうえお");
ListBox1->ItemIndex = Index;
選択させずにスクロールさせる方法はちょっとわからないっす
0315デフォルトの名無しさん
NGNGSetTopIndex
>>313 あなた次第でいかようにも しかし初心者ならDelphiをお勧めします
0316315
NGNG0317デフォルトの名無しさん
NGNG雑魚い方法を晒してしまい申し訳ないっす。
0318312
NGNG最近C++Builderを使い始めてよくわかりませんでした。
良いスレですね。昔からBORLAND派には悪人はいないと
ありがとうございます。
0319デフォルトの名無しさん
NGNGとりあえず、MSのサイトからPlatformSDKを落としてきてください。
で、sampleの"Generic"をいじってください。
0320デフォルトの名無しさん
NGNGWindowsプログラムでゲームを作りたい。
http://mentai.2ch.net/prog/kako/957/957341074.html
とかやって、次は猫でもかな
0321volvic
NGNGインスコした途端、凍りまくりです。メモリは256でXPなんですが、
どうにかして簡単なプログラムなら回せるようになりませんか?
マジレスおながいします。
0322デフォルトの名無しさん
NGNG[C++ エラー] Unit1.cpp(16): E2015 'TBitmap' と 'Windows::TBitmap' の区別が曖昧
って言われるんだけどどうしたらいいか知らない?
0323デフォルトの名無しさん
NGNG0324デフォルトの名無しさん
NGNGボーランド本家 (http://www.borland.com) からBorland C++ Compiler 5.5をダウンロードしようとすると、
なぜか99%で切断されてしまいます。
これを最後までダウンロードするには、どうしたらいいのでしょうか?
・・・やはり付録ですか?
雑誌の付録からインストールしろという事ですか?
アナログ回線で30分もかけた労力と電気代を返せ!ヽ(`Д´)ノ ウワアアン
0325デフォルトの名無しさん
NGNGおおサンキュー
ユニット名が名前空間になってたんだね
知らなかった
0326デフォルトの名無しさん
NGNG今ダウンロードしてみたけど普通にできたよ。
30分かけてもう一度・・・
0327デフォルトの名無しさん
NGNG>>324 iriaとかダウンロードツールを使ってみるとか、プロキシを使うとか
0329デフォルトの名無しさん
NGNGとかやった後で
::DrawText(...)// WIN32API
でやってもスタイルに反映されません。
Delphi6でできたのに、C++Builder6では別の手順が
あるんですか?
0330デフォルトの名無しさん
NGNGならどう?
0331デフォルトの名無しさん
NGNGやってみます。自宅に環境がないので明日確認します。
0332デフォルトの名無しさん
NGNGCanvas->Font->Style = Canvas->Font->Style << fsBold;
0333デフォルトの名無しさん
NGNG0334321
NGNG0335デフォルトの名無しさん
NGNG0336デフォルトの名無しさん
NGNGコンソールでは大丈夫でも、IDEからGUIアプリを作ろうとすると、AccessViolationで落ちちゃう。
BCB5では問題なかったんだけど、同じ症状の人、解決した人、いない?
0337デフォルトの名無しさん
NGNGhttp://www.bcbdev.com/articles/boostregex.htm
0338デフォルトの名無しさん
NGNG0339デフォルトの名無しさん
NGNGどこかにいいのがあったら紹介してほしいです。
0340デフォルトの名無しさん
NGNGBCBのCodeGuardは コンパイル時に余分なコードが付くから実行そのものが遅くなってしまうんだよね
0341デフォルトの名無しさん
NGNG1.28は、うちでも動かなかったので、1.27を使ってます。(BCB5でも駄目だった様な)
BCB6+1.27+bcbdev.comのメイクファイルなら動きました。
0342デフォルトの名無しさん
NGNG初心者です。
C Builderとは関係ないかもしれませんが、
RGBからHSLへの変換方法を教えてください。
よろしくお願いいたします。
0343Delフサギコ ◆zE1iiRdQ
NGNGhttp://www2.justnet.ne.jp/~arion/iro.html
・Leafel's monochrome note
http://hp.vector.co.jp/authors/VA015850/program/mchrome.html
とりあえず、2個所ほど、リンクなど。
∧,,∧
ミ,,゚Д゚彡
ミ つ旦)~~
〜と,,,~),,~)
0344デフォルトの名無しさん
NGNGやっぱりコンパイル速度も速くなるものでしょうか?
>>340
どの関数がどのくらい時間くっているか調べる奴じゃない?
0345デフォルトの名無しさん
NGNGhttp://rossm.net/Electronics/Computers/Software/C++/Algorithms/
HSL.hにRGB→HSL、HSL→RGB変換クラス有り。
0346デフォルトの名無しさん
NGNGなりません。
0348342
NGNG0349デフォルトの名無しさん
NGNGgprof
0350デフォルトの名無しさん
NGNGどうしたらいいの?
0351デフォルトの名無しさん
NGNGポートを占有して RING 文字列を受け取ったら?
0352デフォルトの名無しさん
NGNGどうしてます? 6になってから、ADOは標準でコンポーネントが
付いてくるけど、ADOXは依然、自前で何とかしないといけないですよね。
私はタイプライブラリの取り込みで生成されるTCOM_XXXを使っています。
0353デフォルトの名無しさん
NGNGすみません、ポートの占有はどのようにすればいいのでしょうか?
TAPIを使えば出来ますか?
0354デフォルトの名無しさん
NGNGやはり
×Canvas->Font->Style += (TFontStyles() << fsBold);
// ダメ
○Canvas->Font->Style = Canvas->Font->Style << fsBold;
// オッケー
でした。ありがとうございました。
+=演算子の定義がヘンなんですかね。
0355デフォルトの名無しさん
NGNGそれ、Canvas->Font->Style の get メソッドで帰ってきた戻り値である一時オブジェクトを変更するだけだから、本体に影響を与えないの。
0356355
NGNG0357336
NGNG確かに、1.28はBCB5でもだめだった気がします(1.26に戻して使ってました)
時間があったら頑張って原因究明してみます。
>>337 もありがとう。
0358355
NGNG0359デフォルトの名無しさん
NGNGWindows2000ではダイヤルアップ情報はレジストリのどこに記述
されているのでしょうか?
0360デフォルトの名無しさん
NGNGひまわりと幼女のすじまんこに異様な執着心を燃やしているロリペド絵描き
2浪して九州大学歯学科に進むがプロのイラストレーターになるために大学を中退、
同人活動とUOに専念する日々を送るが、その生活は苦しいらしい(藁
自らを画家と呼び、ともすれば不真面目なものと見られかねないアニメ絵
それも、無毛のすじまんこすらも「芸術」の域にまで高めようとしている(らしい)。
心の支えは自分の描いたひまわりの絵らしい(ぷ
マスコミ(西日本新聞)で写真付きで取り上げられたこともあるらしい。
最強のネットゲーUOではIzumoでKanae、SASAWOというキャラを使用。
http://yasai.2ch.net/test/read.cgi/doujin/1021463865/
http://www.p80.co.jp/p/k_sinki/yoshiharu/oomori.html
@さぽーる
http://www.sub-all.com/test/read.cgi/dojin/019473696/
@MEGABBS
http://203.138.109.168/cgi-bin/megabbs/readres.cgi?bo=Baby&vi=1020753024
関連スレ
【すじ】 ようじょのすじ 【すじ】
http://www2.bbspink.com/test/read.cgi/erog/1017041827/
【抱き枕】すじ丸出し抱き枕ってどうよ?
http://mentai.2ch.net/test/read.cgi/otaku/1016198191/
0361デフォルトの名無しさん
NGNGレジストリ検索しても無かった。
APIのRasEnumEntriesで取得するといいんでないかな。
使い方分からなければ↓で聞いたほうがいいと思う。
Win32API相談室
http://pc.2ch.net/test/read.cgi/tech/1017072275/
0362359
NGNGお答え有難う御座います。
早速RasEnumEntriesを調べてみます。
0363359
NGNGRasEnumEntriesを使用して、ダイヤルアップ一覧を取得することに
成功しました。
有難う御座いました。
0364デフォルトの名無しさん
NGNGC Builder
0365デフォルトの名無しさん
NGNGEnglish版かよ。
0366デフォルトの名無しさん
NGNGで、コンポーネント内にコンポーネントを持たせると、
プログラムの終了時にEACCESS vaiolationが発生します。
解決方法は簡単で、InsertComponentを使わないことです。
(Parentを設定して、終了時にデストラクタがちゃんと
呼ばれさえすればいいみたい)
これはバグ?
注)
このときは、TV番組録画予約表のようにずらーっと時刻が並んだ表の
コンポーネントで親はTPanel、子はTDateTimePickerです。
0367デフォルトの名無しさん
NGNGとりあえず、テキストエディタチュートリアルを35分以下で作れるように練習した(ヘルプファイルを除く)。
次は海洋生物データベースのチュートリアルだな。
0368デフォルトの名無しさん
NGNGあったなこれ(w
0369デフォルトの名無しさん
NGNG名をOwner->Name のようにして取得しようとしたのですが、コンパイルは出来る
ものの、実行するとエラーが出ます。なにがいけないのでしょうか?
0370デフォルトの名無しさん
NGNGコンストラクタの AOwner 引数に放り込んだものがオーナーになります。
0371デフォルトの名無しさん
NGNGSTLでsortは大丈夫なのにstable_sortを使うと必ずアクセス違反でコケます。
もしかしてバグでしょうか?
0372デフォルトの名無しさん
NGNG351ではないが、普通にCreateFileでシリアルポート開けてタイマーか別スレッドで
ReadFileしてればいいんでない?とりあえず初期設定のところだけ貼っておく
(ボーレート等は適切に設定してやること)。
bool PCtrl::OpenPort( char* pnum ) //引数例:pnum="COM1"
{
DCB dcb;
COMMTIMEOUTS cto;
if ( this->h != NULL )
return false;
this->h = CreateFile( pnum,
GENERIC_READ | GENERIC_WRITE,
0,
0,
OPEN_EXISTING,
0, 0);
if ( this->h == INVALID_HANDLE_VALUE )
{
return false;
}
BuildCommDCB( "baud=600 parity=E data=8 stop=1", &dcb );
SetCommState( h , &dcb );
cto.ReadIntervalTimeout = 100;
cto.ReadTotalTimeoutMultiplier = 0;
cto.ReadTotalTimeoutConstant = 100;
SetCommTimeouts( h , &cto );
return true;
}
0373353
NGNGソースまで書いて頂いて有難う御座います!
これを参考にして試してみます。
0374369
NGNGお答え有難うございます。
コンストラクタのOwnerには作成元のオブジェクトを
入れているつもりだったのですが、以下のように書いた
場合は作成元がOwnerとして渡っていないのでしょうか?
Form1上にButton1を配置してButton1からForm2を作成
する場合
void __fastcall TForm1::Button1Click(TObject *Sender)
{
TForm2* NewForm=new TForm2(this);
NewForm->ShowModal();
delete NewForm;
}
とした時、thisで示されているオブジェクトはButton1では
ないのでしょうか?
0375デフォルトの名無しさん
NGNGそのthisはForm1で、Button1はSender
0376369
NGNG有難うございます。TComponentに型キャストしてSenderを渡した
ところ、呼び出し元のコンポーネント名を取得できました。
0377デフォルトの名無しさん
NGNGcbuilderで作った実行ファイルってlinux(redhat)でも動くの?
0378デフォルトの名無しさん
NGNG0379デフォルトの名無しさん
NGNG0380デフォルトの名無しさん
NGNG0381デフォルトの名無しさん
NGNGShellExecute()で外部プログラムを起動させることは
分かったのですが、起動させたプログラム中のボタン
を押したりテキストフィールドへ文字を入力したりする
にはどのような方法を取ればいいのでしょうか?
0382デフォルトの名無しさん
NGNGPostMessage
0383デフォルトの名無しさん
NGNGファイルから呼んでメモリーに格納してある
JpegファイルのイメージをTJPEGImageに入れたいのですが
どうすればよいのでしょうか?
LoadFromFileでファイルから読めますが
インターネット(SOCKET)からJPGをメモリーに読み込んで
TImage->Picture=(TJPEGImage*)buff;// Socketで読み込んだデータ−
こんな感じにしたいで。どなたか教えてください
0384デフォルトの名無しさん
NGNG0385デフォルトの名無しさん
NGNGmem->Read (m_pBody, m_iBodyLength);
TJPEGImage* jpg = new TJPEGImage;
jpg->LoadFromStream (mem);
View2->Picture = (TPicture*)jpg;
delete jpg;
delete mem;
こんな感じですよね?
ただ、これだとハングします・・・
0386デフォルトの名無しさん
NGNGでも、それでもダメでした mem->sizeはいい値を示していますが
0387デフォルトの名無しさん
NGNGTMemoryStream* Stream = new TMemoryStream;
Stream->Write(Buffer, Length); //ReadじゃなくてWrite
Stream->Position = 0; //使う前にPositionを戻す
Jpeg->LoadFromStream(Stream);
0388デフォルトの名無しさん
NGNGRead←→Writeを直してるなら、あとはPositonを元に戻すだけでできると思う。
0389デフォルトの名無しさん
NGNGこれはいいのか?
0390デフォルトの名無しさん
NGNG0391デフォルトの名無しさん
NGNG0392デフォルトの名無しさん
NGNG参考になるページは無いでしょうか?
IndyのTCPクライアントでconnectした後、どうすればいいのか
さっぱりわからない・・・。
0394デフォルトの名無しさん
NGNGもう少し具体的に何がしたいのか書かないとアドバイスの
しようがないよ。
0395デフォルトの名無しさん
NGNGとりあえず読んでます
>394
とりあえず、IRCクライアントとしての最低限の機能
(サーバ接続・目標のチャンネルに入る・ログの取得・発言くらいかな)
がしたいです。
0396デフォルトの名無しさん
NGNG0397デフォルトの名無しさん
NGNG可能
0398デフォルトの名無しさん
NGNG0399デフォルトの名無しさん
NGNGどう書いて良いかわかりません。どなたか、アルゴリズムを教えてください。
言語はC++です
0400デフォルトの名無しさん
NGNGガッコウノシュクダイハジブンデカンガエタホウガジブンノタメニナルヨ
0401デフォルトの名無しさん
NGNG英語にする方法ありますか?
0402デフォルトの名無しさん
NGNG素直にMessageBox使う。
0403デフォルトの名無しさん
NGNG0404401
NGNGありがとうございました
0405デフォルトの名無しさん
NGNG使いたいんですけど、
Xercesがテスト通りません。
.regファイル入れたのにダメ。
当方BCB6パーソナルです。
どっかで成功しているバイナリをダウンロードできませんか?
Exceptions Test # 105: wrong DOM_DOMException thrown.
Exceptions Test # 109: wrong DOM_DOMException thrown.
Exceptions Test # 110: wrong DOM_DOMException thrown.
1 StringHandles.
1 StringHandles. 1 StringBuffers.
1 StringHandles. 1 StringBuffers.
Exceptions Test # 201: wrong DOM_DOMException thrown.
Exceptions Test # 202: wrong DOM_DOMException thrown.
Exceptions Test # 201: wrong DOM_DOMException thrown.
Exceptions Test # 202: wrong DOM_DOMException thrown.
0406デフォルトの名無しさん
NGNGイベントは、どうやって作ればよいのだろう。
0407デフォルトの名無しさん
NGNGTClipboardを継承して、WndProcをオーバーライド。
SetClipboard関数でグローバルインスタンスを変更。
0408デフォルトの名無しさん
NGNG割り当ててあります。
TServerSocketで、片方のIPアドレスにだけポートを
開くにはどうすればよいのでしょうか。
0409デフォルトの名無しさん
NGNG継承とかオバライドとか、
C++ の長所をすっかり忘れていますた (・∀・)=3
手順まで教えていただき、これでなんとかなります。
多謝!!(´▽`*)
0410Delフサギコ ◆zE1iiRdQ
NGNGいわゆるクリップボードの監視をするときに使う
WMDrawClipboard
や
WMChangeCBChain
の方とは違うんですよね?
>SetClipboard関数でグローバルインスタンスを変更。
なんか、うまく解放してやらないと
クリップボードがあぼーんの可能性が??
昔、OSのクリップボードが吹っ飛んで
焦った事あったです。
0411デフォルトの名無しさん
NGNGClipboard関数の最初の呼び出し時にインスタンスが作成されるので、
その前にSetClipboard関数を呼ぶ必要がある。
0412デフォルトの名無しさん
NGNGC++BuilderはVC++よりいいですか?
0413名無し~3.EXE
NGNG使う場面によります。
0414デフォルトの名無しさん
NGNGちょっとしたプログラムをWindowsで組んでみたい時はC+Builderは便利。
本格的な実用プログラムを組むと、サイズが抑えられるのはVC++。
でもどちらが何ができるかと言うと、どちらでもいい。C++BuilderでもMFC
は使えるのだし。
0415名無しサンプリング@48kHz
NGNGTCppWebBrowserコンポーネントで
_blank
で新規ウインドウを生成しないようにしたいんですが
どうしたら良いでしょう…(同一ページでリンク先に飛ばせたい)
ご存知の方がいましたらば情報キボンです!
0416名無しサンプリング@48kHz
NGNG0417デフォルトの名無しさん
NGNG0418デフォルトの名無しさん
NGNG去年迄の派遣シフト中は派遣なら就職出来た。派遣だと VC/VBが多いからね。
しかしもう派遣シフトも完了した状態。 海外シフトが始まってるし、コードが書けるだけ
ではいよいよ就職は出来ないよ。
就職したいなら、キャラクターを磨け。人付き合いの良さとか、創造力とかさ
0419デフォルトの名無しさん
NGNGDelphi用はこんなのが出てるんですけど、C++Builderでの作り方がわか
りません。
Delphi用
↓
http://member.nifty.ne.jp/~hiryu/download/xpct1004.zip
0420デフォルトの名無しさん
NGNGDelphiで書かれたコンポーネントは、そのままC++Builderで利用できます。
0421デフォルトの名無しさん
NGNGありがとうございます!!いろいろ試してみた所、C++Builder6でDelphi用の
WindowsXPコンポーネントが使えるようになりました。
C++BuilderはDelphi相当のコンパイラを内蔵してるんですね!全然知りませ
んでした。
0422名無し~3.EXE
NGNG相当っていうか、全く同じもの・・・。
0423デフォルトの名無しさん
NGNGっていうか、パスカルで書いてあるの知らずにコンポーネントのインストールをして、あとでソースを見たらパスカルだった。
Delphiって文法はだいぶ違うけど、クラスとかはC++とほとんど一緒なんだね。
0424デフォルトの名無しさん
NGNGいきなりzipファイルへのリンク書くなよ。
説明用のページを貼るくらいはできるだろ?
0425デフォルトの名無しさん
NGNGということはDelphiで勉強してもBCBに簡単に移行できるって事?
0426デフォルトの名無しさん
NGNGスマソ。こちらで確認してからDLして下され。
http://member.nifty.ne.jp/~hiryu/
>>425
BCBはC++の知識が不可欠なので、Delphiからいきなり移ってきて
もキツいものがあると思う。でも、VCLを扱うプログラムだけなら、ほ
とんど何も考えずに手動でコンバートできる。
0427デフォルトの名無しさん
NGNGマウスクリックしてどうとか言うの。
0428デフォルトの名無しさん
NGNGVCLを使って実際にプログラミングしていくやり方の事?一緒だよ。
フォームにコンポーネントを貼り付けるやり方は全く同じ。
ただ、コードはC++で書かないといけないけどね。
0429うー
NGNGVBみたいな感覚で使える?BCB。
欲しいんだけど
0430デフォルトの名無しさん
NGNGVBとC++も理解してるのなら大丈夫でしょう。
Delphiも使ったことがあればBCBで幸せになること間違いなし。
0431デフォルトの名無しさん
NGNGというか、無料DEL+BCCでいいんじゃないのか?
0432デフォルトの名無しさん
NGNG難しいところだね。Delphiの爆速コンパイルを一度味わってしまうと、
なかなか他のコンパイラに移行できない。
BCBはやっぱり重いから、ある程度リッチなマシンでないとストレス
が溜まるかも。
俺はBCB Pro+無料Delで幸せ。DelphiのコンポーネントをBCBに
入れまくって遊んでいる。
0433429
NGNG早速インスコして使ってるんだけど、これヨサゲね。
幸せの予感。
買うとき散々迷ったんだけど、もしかしてVC++.NETも似たようなインターフェース?
0434デフォルトの名無しさん
NGNGキタ━━━━━━(゚∀゚)━━━━━━ !!
これで仲間が増えた!!
俺はと言えば、Delphiの参考書片手にWindows APIとC++のお勉強。
DelphiのObject Pascalが、ほとんどそのまま何も考えずにC++に
移植できるのは一種の快感だね。
0435デフォルトの名無しさん
NGNG○ C#.NET / VB.NET
0436デフォルトの名無しさん
NGNGfor(i=0;i<cnt;i++){
TTrackBar &bar =* new TTrackBar(this) ;
bar.Parent = this;
bar.Name = "BAR"+IntToStr(i+CRAMAdr);
bar.Top = i*bar.Height+45;
・・・略・・・
みたいに TTrackBarを動的に作成しようとしたら cntが1以上の場合
そのクラスは既にありますというエラーが出ます。
で、.PASで
procedure test(AOwner:TWinControl);
var i:Integer;
begin
for i:=0 to 3 do begin
with TTrackBar.Create(AOwner) do
begin
Parent := AOwner;
Top:=Height*i+32;
end;
end;
end;
と試験コードを書いて試した所、やはり同じエラーが出ます (このコードでもDelphi5なら成功する)
いったいどうやればいいんでしょう?
0438436
NGNGそれまで作成していたものは、.dfm .cpp .h .bpr 以外のファイルを全て削除しても直りません
結局、別ディレクトリに作成し、ソースとフォームだけを
コピーして直りました。 なんだか訳が判りません・・・・
0439デフォルトの名無しさん
NGNGBCB5の賞味期限が切れた模様。BCB6を買いなされ。
0440デフォルトの名無しさん
NGNGお待ちしています
 ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
∧_∧ ニヤニヤ
( ・∀・)
( )
| 某|
(__)_)
0441デフォルトの名無しさん
NGNG用意されていることがわかったよ。
カナーリ気色悪いモードだねこれは。過去の遺物だとか本には書いてあっ
たけど。
WindowsもインテルのCPUと同じで、互換性を重視してバージョンアップ
していったら、いつの間にかアーキテクチャが汚くなっていたという奴か?
0442デフォルトの名無しさん
NGNG9x系が不安定なそもそもの原因なのでは?>互換性を重視して〜
0443デフォルトの名無しさん
NGNGBIOS(SVGA)で対応している基本的なモードの一つだから当然だろ
0444デフォルトの名無しさん
NGNGなんでVGAと
0445デフォルトの名無しさん
NGNG256色インデックス(パレット)付カラーは 今でもGIFでおなじみだと思ったが
0446429
NGNGBCBマンセー気味に。
はぁはぁ、もっとVCLが欲しい、、プロ版買っとくんだた(´_`
0447デフォルトの名無しさん
NGNG俺はBCBプロフェッショナルと
デルファイ6プロフェッショナルを
買ったが手に入れた事で満足してしまい
今じゃ押入れの中だ。
パーソナル版で充分だったな、、、、
0448デフォルトの名無しさん
NGNGユーザ向けの優待販売使うとPro単体より若干、安い罠。
0449デフォルトの名無しさん
NGNG多分無理だろうが(w
0450デフォルトの名無しさん
NGNGVCLコンポならインターネット上にたくさん落ちてるYO!
とりあえず ↓ から始めてみては?
http://home1.infonia.ne.jp/~delphian/delphi/
0451デフォルトの名無しさん
NGNG0452デフォルトの名無しさん
NGNGとがあります。
StringGrid コンポーネントで、Cells[col][row] = "ABC" という具合に文字列
をセットしたあと、そのセルの文字列を中央寄せしたいのですが、うまくいきませ
ん。したいことは、
StringGrid1->Objects[col[row]->Alignment = taCenter
みたいな感じですが、エラーが出てしまいます。
判る方、どうか教えてください。
0453452
NGNGttp://market.agr.tottori-u.ac.jp/ken/
『何だこいつは!!』とお思いください…。失礼しました。
0454デフォルトの名無しさん
NGNGヘルプはインストールされてるけど起動方法がわかりません。
0455デフォルトの名無しさん
NGNGBCB6Personalが一万円切ってたから、買ってみるかな。
0456デフォルトの名無しさん
NGNGBCB面白いよ。俺はPro版使ってるけど。Delphiと違って、コンパイルが
激遅なのが玉にキズだけど、MFCで培ったテクニックもそのまま使えて
幸せ。
0457デフォルトの名無しさん
NGNGフリーのコンポーネント(Pascalで書かれた)を登録しようと
パッケージを新規で作成して登録しました。
登録したコンポーネントを使ったプロジェクトをコンパイルすると
リンカエラーが起きます(登録したコンポーネントのコンストラクタは未解決等)
これはプロジェクトにそのコンポーネントをコンパイルした際に出たobjファイルを
プロジェクトに追加すれば出なくなるのですが おそらく自分のコンポーネントのインストール
手順が 何か抜けてる部分があるのだと思います。
このようなエラーが出る場合 どのような作業を行えばエラーは出なくなるのでしょうか?
0458デフォルトの名無しさん
NGNGエラーメッセージを詳細に書くナリ。
ありがちなリンクエラーは、namespace が違ってたり、パケージ選択
を間違えたりとか etc...
0459457
NGNGすいません(鬱
0460デフォルトの名無しさん
NGNGSQLビルだって、たしかEnt版しか使えなかったような。
俺はPro版しか触ったこと無いのでわからんが・・・・
0461454
NGNGごめん、TQuery右クリックで起動できた。
0462デフォルトの名無しさん
NGNGコンポーネントを追加しようと、メニューから [コンポーネント] - [パッケージのインストール] の
[追加] で *.bpl を選択しました。
が、VCL50.BPL が見つからない、というようなメッセージが出ました。VCL60.BPL はあるようなので、
バージョンに関連したものではないかと思うのですが、このコンポーネントは Ver.6 では使えないの
でしょうか? それともどうにか使う方法はあるのでしょうか?
0463デフォルトの名無しさん
NGNGもしかしてコンポーネントがBCB5でコンパイルしたものじゃない?
BCB6でコンパイルし直さないといけないのでは。
0464デフォルトの名無しさん
NGNG置いてないでしょうか。
0466デフォルトの名無しさん
NGNGどうもすんまそん&アリガト。
早速インスコしてみたんだけど、これBitBtnもProgressBarもないのね。
一番よく使うのに。
MFCを紐解いて自作しないとだめなのか・・・・・・
0467デフォルトの名無しさん
NGNGBitBtn や ProgressBar は Manifest を(アプリケーションに)追加することで
new GUI になりませんか?
0468デフォルトの名無しさん
NGNGそうなんですが、配布する時のことを考えると、できれば
2000以前で普通のGUI、XPだとnew GUIと自動的に切り替わる
コンポーネントが欲しいんですよ。SP1で対応してくれるかもしれんけど。
0469デフォルトの名無しさん
NGNGだからこそ Manifest で良いのでは?
exeと同じフォルダに manifest ファイルを置くだけ。
もちろんWindows2000では無視されるのでXPに対してのみ効果があるし。
別に配布上問題はないと思ふが
0470デフォルトの名無しさん
NGNGそうかありがとう。そうしてみます。
0471デフォルトの名無しさん
NGNG>>468
SP1 では XP テーマ対応はしない。と明言しているはず。Delphi7 から。
BCB6 のコンポーネントは Delphi6 のそれと同じ物を使っているから BCB6 では
対応できない。
ただ「対応できない」というのは過去との互換性の部分がほとんどだから、3rd party
のコンポーネントを使ってしまえばすんじゃう話だよ?
新しくアプリケーションを作るのであればたいした問題じゃないよね?
あとは、ImageList の(Microsoft が作りこんだ)非互換性をどうするか、って
くらいしかめんどくさい話は残っていない。
0472デフォルトの名無しさん
NGNGがーん。対応しないんですか。BCB6では。
昨晩もマニフェストファイルを作ってみたんですが、XPスタイルになる
ものとならないものが混ざって醜いことこの上なかった。
外国のサイトでもさぐってみようかな。
0473デフォルトの名無しさん
NGNGご存知の方いっらしゃいませんか?
0474デフォルトの名無しさん
NGNG互換性の問題とかいろいろ出てくるんですよ。悪いのはイベントの出方やイメージリストの
フォーマットを変えた MS。
互換性を気にしなければ XP 対応コンポーネントはごろごろ転がってるよ。
http://www.delphi-unicode.net/
0475デフォルトの名無しさん
NGNGありがとうございます。無理にXP対応にしないようにしてみます。
世の中にはまだまだWin2000ユーザーも多いことですし、単に見映え
の問題ですからね。
ご紹介のホームページは今から覗いてみます。
0476デフォルトの名無しさん
NGNGを買ってきました。ちょっと値が張りましたが。
コンポーネントの使い方だけなら、これで十分です。もちろん中身は
Object Pascalで書かれているので、これをC++に翻訳するには相応
の言語力が要求されます。
と言ってもObject PascalとC++はよく似ているので、そんなに移植は
困難ではありません。逆だったら難しいかも。
0477デフォルトの名無しさん
NGNG>これをC++に翻訳するには相応の言語力が要求されます。
そうか?とバイリンガルなアタシはおもふ。
0478デフォルトの名無しさん
NGNGすげえな。C++の文法自体はわかっているのだが、Object Pascalが
サパーリなので、困難を極めます。Registerって何?のレベルです。
0479デフォルトの名無しさん
NGNGいや、Cにもその概念ありますがな・・・
0480Delフサギコ ◆zE1iiRdQ
NGNG∧,,∧___ /
/ミ,,゚Д゚ミ/\< この辺みてがんばってください
/| ̄∪∪ ̄|\/ \_____
|____|/
○C++(Builder)とDelphiの対応
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=999486538&res=7
0481デフォルトの名無しさん
NGNGそうですね。コンポーネントの登録でした。あまり使いませんね。
>>480
ありがとうございます。今見せていただいていますが、この調子だと
Delphiが即マスターできてしまいそうな気がしてきました。
0482デフォルトの名無しさん
NGNG☆ チン 〃 Λ_Λ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
ヽ ___\(\・∀・) < BCB6 SP1まだ〜?
\_/⊂ ⊂_ ) \___________
/ ̄ ̄ ̄ ̄ ̄ ̄ /|
| ̄ ̄ ̄ ̄ ̄ ̄ ̄| |
|JBuilder7SE返品|/
 ̄ ̄ ̄ ̄ ̄ ̄ ̄
そろそろ出てもいいと思わない?
0483デフォルトの名無しさん
NGNG0484デフォルトの名無しさん
NGNGアップデートは今暫くおまちください
 ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
∧_∧ ニヤニヤ
( ・∀・)
( ) BCB6++ Personal/SE/Enterprizeヲ
| 某| ジュンビシテイルカラナ
(__)_)
0485デフォルトの名無しさん
NGNGBcc の 5.5.1 は WindowsXP 非対応らしいですが
BCB の 6 に含まれる Bcc は XP 対応済みですよね?
Bcc のバージョンナンバーはあがってますか?
既出でしたらすいません
0486デフォルトの名無しさん
NGNGBCC5.5.1はXPでも問題なく使えますよ。
BCB6にはBCC5.6が付属していますが、ほとんど変わってないようです。
大きく違う点は、STLPortが標準装備になったのと、C99にいくつか対応
したぐらいで、BCC5.5.1にSTLPortをインストールして使えば、実用上
ほとんど差はありません。
0487デフォルトの名無しさん
NGNGバグが増えますた。
0488485
NGNG教えてくれてどうもありがとう、助かりました
5.5.1がXPでも使えるのはとてもうれしいでふ
BCC 5.6は無料公開されないのかな?でもバグ増えてたら悲すいね
0489デフォルトの名無しさん
NGNGGPSユニット+Super MAPPLEでパソコンナビをやってます.
mappleはCOM1〜6のうちの選択したポートからGPSのデータを
取り込んで地図上に現在位置を表示します.COMポートからは
データの受信のみをしているようです.
1) GPSユニットからは,精度のいいデータ(1/1000度単位)と精度の悪い
(1/100度単位)データが同時に出てきてしまうので,地図上に2本の
軌跡が表示されてしまいます.
たとえば,北東に進んでいるとき,精度のいい方のデータは斜めの
軌跡になるのに,精度の悪いほうは階段のようにぎざぎざになる.
GPSのデータを一回トラップしてやって精度のいいほうのデータのみを
取り出してmappleに食わせてやることができると気持ちいい.
2) GPSユニットからは,衛星の情報も同時に送信されているけど,
mappleでは確認する機能が無いため,データを途中でトラップして
やって衛星データを表示するソフトを作って同時に動かすと便利.
3) 曲がり角の座標に来たときに「次,右です」とか教えてくれるソフトを
作りたいのですが,mappleがCOMポートを占有してしまうので,
地図を確認する場合には音声ナビソフトを終了して(COMポートを
放して)mappleを立ち上げる必要がある.信号待ちの間にこれを
やるのはつらい.これもCOMからのデータを途中で取り出せれば
簡単.
だと思うのですが,何かいい方法はないでしょうか.
使っているパソコンにはCOM1,2の二つだけがついていて,COM3〜6
は空いてる状態なので,このへんにダミーのvxdでも作ってやれば
いいんだろーかとも思っているのですが,具体的な方法がさっぱりです.
それとも,もっと簡単な方法があるでしょうか.
教えて君ですんまそん.
0490デフォルトの名無しさん
NGNG特にsizeof(T)があるとかなりの確率で氏ぬです。
今はコード補完切ってるからいいけど、BCB5より補完や宣言表示が速いから
ホントは使いたいんだよね...。
0491デフォルトの名無しさん
NGNGBCC 5.5.1のbrc32.exe呼び出してやると何事もなかったようにリンクできるんだが‥‥
バグ?
0492デフォルトの名無しさん
NGNG0493デフォルトの名無しさん
NGNGbrc32 単体で動かすときのオプション指定を間違えていない?
0494デフォルトの名無しさん
NGNG「brc32 generic.rc generic.exe」
これであってるはずだけど‥‥
何故かリソースのコンパイル自体は行われているがexeファイルにリソースがリンクされていないと言う現象が‥‥‥
(エラーメッセージは-v付けても特になし)
うわぁぁぁん!!
0495デフォルトの名無しさん
NGNGstatic_castもdynamic_castも、コンストラクタも全部エラーになります。
StringGrid1->Cells[NumCol][i + 1] = CheckListBox1->Items[i];
0496デフォルトの名無しさん
NGNGCheckListBox1->Items->Strings[i]
0497デフォルトの名無しさん
NGNGありがとうございます。うまくいきました!
どうやら Itemsプロパティの扱い方が、DelphiとBCBで違うようです。
BCBの方がより文法に厳しいように思います。これでやってみます!
0498デフォルトの名無しさん
NGNGなんか思い出してきた。それ BRC32 のバグだった気がする。
BRC32 は実際にはりソースコンパイルはBRCC32 を呼び出し、
.exe とのリンクは ilink を呼び出しているのだ。
BCC32 に .rc や .res を渡した場合にも、BRCC32 や ilink を
呼び出しているんだが。BRC32 に ilink の呼び出しの不具合があった気がする。
ilink を呼び出してリソースリンクできないかな?たしかそうやって解決した記憶があります。
0499デフォルトの名無しさん
NGNGあるもらい物のソースを make すると
[リンカ エラー] 外部シンボル 'System::__linkproc__ __fastcall GetMem()' が未解決
(C:\〜.OBJ が参照)
[リンカ エラー] 外部シンボル '__fastcall Controls::TControl::ClientToScreen(const Windows::TPoint&)' が未解決
(C:\〜.OBJ が参照)
というようなエラーが 20 〜 30 くらい出ます。名前からすると、C++ Builder に付属の
ライブラリがリンクされてないようなことではないかと思うのですが、今まで C++ Builder
にさわったことがなく、どうして良いものかさっぱり分かりません。
上の情報だけで何らか原因/解決法が分かりますでしょうか?
0500499
NGNG再構築したら通っちゃった。
0501デフォルトの名無しさん
NGNG初心者板が無いようなのでここで質問させて頂きます
漢字の練習帳みたいなマス目を作って、そこをクリックや
ドラッグするとそのマスごとに線や○×などを
表示させたいのですがなにか良いコンポーネントはありませんか?
ループで線を引いて、Originで始点のマス目を割り出して、、、
と考えていました
よろしくお願いします
0503501
NGNGリンク先の>36ですか?w
使いようではそう言う動きも可能かと
0504501
NGNGBCBって一般的じゃないんだ;´Д`)
0505デフォルトの名無しさん
NGNGBCBとDelphiは内容的にはほとんど同じだと思うが、BCBがC++なので、
初心者に対して敷居が高いからのように思う。
0506デフォルトの名無しさん
NGNG0507デフォルトの名無しさん
NGNG0508デフォルトの名無しさん
NGNGやっぱVC++があるから
0509デフォルトの名無しさん
NGNGやりたい事はImage上にマウスカーソルが来たらImage上のBMPを別のBMP
に変化させるだけです。勿論、マウスカーソルがImage上に居なくなった
場合は元のBMPに戻すと言う事です。
よくある奴ですね。でも分からない・・・
たったこれだけの事がわからない・・・ あぁなんと情けなや・・・
どなたかご存知ありませんか? 説明が面倒くさければ、その説明のWebPage
だけでも・・・
BCB5+Win2000+SP1
0510デフォルトの名無しさん
NGNGImage1とImage2があり、それに既にBMPを読み込んで配置しています。
Image1にマウスカーソルが来た場合の判定方法と言う事です。
Leaveした時も判定したいです。
0511デフォルトの名無しさん
NGNGTImageをサブクラス化してWM_MOUSEHOVERとWM_MOUSELEAVEイベント拾えばいいんでないの?
TImageにWM_MOUSEHOVER飛んでくるかは知らんが。
0512デフォルトの名無しさん
NGNG0513デフォルトの名無しさん
NGNGhttp://leed.issp.u-tokyo.ac.jp/~takeuchi/delphi/browse.cgi?index=9631
0514デルファイの名無しさん
NGNGCM〜なら来るかも
0515510
NGNGありがとうござまーす。
この感激〜♪を何時までも♪
0516デフォルトの名無しさん
NGNGいいですが、BCBでこれに対応した構文はあるのでしょうか?
0517デフォルトの名無しさん
NGNGMESSAGE_HANDLER
END_MESSAGE_MAP
というやつ。
0518デフォルトの名無しさん
NGNGなるほどマクロで定義されているのですね。ありがとうございます。
しかしDelphiよりかなり汚いプログラムになってしまいますね。
C++にはもともとイベントハンドラという概念がないのでifやswitch
で分岐させるか、throwで処理するしかないわけですね。でも
throwは非効率的なので分岐処理となるわけですか。
0519デフォルトの名無しさん
NGNGでもまあ仕方なさげ。
0520デフォルトの名無しさん
NGNGDelphiはWindowsに特化して作ってあるので、これの真似をC++で
しようとすれば、どうしてもあちこちにアラが見えてくるのは仕方ない
ですね。
最近なぜ私はDelphiに移行せずBCBにこだわっているのかわからなく
なってきました。MFCでさんざん苦労してきたからかもしれません。
0521デフォルトの名無しさん
NGNGDelphiもフリー版のおかげで触ることが出来たけど、やっぱC++の方が好きだったんで。
C++ & RADってことでBCB。
0522510
NGNG( ´Д`)
⊂ ._つ
人 Y
し'(_)
出来ねぇ・・・
void __fastcall TForm1::OnMouseEnter(TMessage & msg)
{
if (msg.LParam == long(Image20))
{
ShowMessage("MouseEnter");
}
}
msg.LParam がいつも0・・・ どんなコンポーネントでもマウスを合わせ
たら拾ってきやがる・・・
誰かHELP ME・・・
0523デフォルトの名無しさん
NGNGそれはフォームのCM_MOUSENTERを処理してるの?
サブクラス化してるようには見えないし、
そのコードだけだとよくわからない・・・。
0524デフォルトの名無しさん
NGNG私も同じです。元々C言語で仕事してきたので(今はC++MFCメイン)、
BCBの方がすんなり入れました。VCL使う時はどうしてもDelphiの参考書を
読むしかないですね。
BCBの本がほとんど無いのは悲しいです。
>>522
たった今作り始めてみました。出来たらうpします。
0525510
NGNGすんません。CM_MOUSEENTERです・・・
private:// ユーザー宣言
void __fastcall OnMouseEnter(TMessage & msg);
void __fastcall OnMouseLeave(TMessage & msg);
public:// ユーザー宣言
__fastcall TForm1(TComponent* Owner);
protected:
BEGIN_MESSAGE_MAP
VCL_MESSAGE_HANDLER(CM_MOUSEENTER, TMessage, OnMouseEnter)
VCL_MESSAGE_HANDLER(CM_MOUSELEAVE, TMessage, OnMouseLeave)
END_MESSAGE_MAP(TForm)
0526デフォルトの名無しさん
NGNGぐわぁ〜
つ、作って頂けると・・・
なんともありがたや、ありがたや・・・
と言いますか・・・ 漏れ、なんて情けなや・・・
0527511
NGNGVCLのサブクラスがイマイチ解らなくてSetWindowLong使ってるしw
0529デフォルトの名無しさん
NGNG>>524さんがコード書いてくれてるみたいだけど(サブクラス化の方かな?)
それはTImageを継承してコンポーネントを作るときに使う方法。
0531デフォルトの名無しさん
NGNGサブクラス化までは必要ないです。TFormが受け取るメッセージをディスパッチ
すれば十分なようです。
ただし、DelphiのMLにもありますように、Panelの上にImageが乗ってたりすると
うまく行きません。
protected:
BEGIN_MESSAGE_MAP
VCL_MESSAGE_HANDLER(CM_MOUSEENTER, TMessage, CMMouseEnter);
VCL_MESSAGE_HANDLER(CM_MOUSELEAVE, TMessage, CMMouseLeave);
END_MESSAGE_MAP(TForm);
void __fastcall TForm1::CMMouseEnter(TMessage& Msg)
{
// Image1 にマウスが入った?
if (reinterpret_cast<TComponent*>(Msg.LParam) == Image1) {
// 赤く塗る
Image1->Canvas->Brush->Color = clRed;
Image1->Canvas->FillRect(Rect(0, 0, Image1->Width, Image1->Height));
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::CMMouseLeave(TMessage& Msg)
{
// Image1 からマウスが出た?
if (reinterpret_cast<TComponent*>(Msg.LParam) == Image1) {
// 白く塗る
Image1->Canvas->Brush->Color = clWhite;
Image1->Canvas->FillRect(Rect(0, 0, Image1->Width, Image1->Height));
}
}
0532デフォルトの名無しさん
NGNGサブクラス化したほうはOKでした。
0533501
NGNG漢字の練習帳みたいなマス目を作って、そこをクリックや
ドラッグするとそのマスごとに線や記号、○×などを
表示させたいのですがなにか良いコンポーネントはありませんか?
皆さん社会人のようで、土日と平日のレスの量に差がありますねw
0534デフォルトの名無しさん
NGNGサブクラスにした方がきっちり動くのは、Delphiでも同じですね。
これで胸がすっきりしました。
>>533
TLabelのCanvasに描画するだけのというのはダメ?
0535510
NGNGぐぉーーーーーーー 本当だーーーーーーーーーーーーーーーーーー!!
出来たーーーーーーーーーーーーーーーー
んですが、Panel上に乗ってるんですよね・・・ バッチリと・・・
これは弱った・・・ いや、、、ゲームを作ってまして・・・
操作系は全てPanel上にのせてるんですね・・・ これがまた・・・
そうですか・・・ サブクラスを勉強します・・・
お付き合い下さった方、誠にありがとうございます。
0536デフォルトの名無しさん
NGNGサブクラスについてはまた後ほど書いてみます。
ただ、テレビで見たい番組があるので、ちと遅れます。
サブクラスを書くと、friend class宣言をしないと不便なことがあるかも
しれません。これは書いてみてまたお知らせします。
0537デフォルトの名無しさん
NGNGCanvasがあれば何でもいいけど、絵を保持してくれるTImageでどう?
>>535
>>530でびっくりしてるけど、コンポーネント作りは難しくないよ。
サブクラス化でやるならこんな感じ。
--- .h ---
TWndMethod OldImageWndProc;
void __fastcall ImageWndProc(TMessage& Msg);
--- .cpp ---
※置き換え
OldImageWndProc = Image1->WindowProc;
Image1->WindowProc = ImageWndProc;
※置き換える必要がなくなったら
Image1->WindowProc = OldImageWndProc;
void __fastcall TForm1::ImageWndProc(TMessage& Msg)
{
if (Msg.Msg == CM_MOUSEENTER)
{
ShowMessage("Mouse Enter");
}
OldImageWndProc(Msg);
}
0538デフォルトの名無しさん
NGNG(´Д` ) 書き終わってリロードせずに貼ってしまいました。
/ y/ ヽ 切腹しますた。
Σ(m)二フ ⊂[_ノ
(ノノノ | | | l )
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
0539510
NGNGウワァァァァァァァァァァァァァァァァァァァァァァァァァァァァァン!!! わかりません〜〜〜〜 ・・・・
・・・
・・・
.hの部分はどこに追加しますか?・・・
.cppの置き換えって・・・ ・・・なんでしょう?
ってレベルなんですね・・・ いや、、、 もっと調べまする・・・
すんません。VBからの移行組なもんですから、そこら辺りはさっぱり・・・
0540511
NGNGVCLは初心者レベルなので勘弁w
//---------------------------------------------------------------------------
//フォームの配置はForm1(TForm)->Panel1(TPanel)->Image1(TImage)。
//動作にはWin98/NT4以降orWin95+IE3以降必須
//
TForm1 *Form1;
WNDPROC oldProc;
BOOL tmeFlag = TRUE;
LRESULT APIENTRY MyProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
switch(msg)
{
/*
case WM_MOUSEHOVER://TPanelにセットしているせいか、Panel上にマウスがある時に常時流れているので使えない(;´Д`)
break;
*/
case WM_MOUSELEAVE:
//マウスが離れた時の処理
Form1->Image1->Picture->LoadFromFile("適当0.BMP");
tmeFlag = TRUE;
break;
}
return CallWindowProc(oldProc, hwnd, msg, wParam, lParam);
}
void __fastcall TForm1::FormCreate(TObject *Sender)
{
oldProc = (WNDPROC)SetWindowLong(Form1->Panel1->Handle, GWL_WNDPROC, (UINT)MyProc);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Image1MouseMove(TObject *Sender, TShiftState Shift, int X, int Y)
{
if (tmeFlag == TRUE) {
//マウス進入時の処理
Image1->Picture->LoadFromFile("適当1.BMP");
tmeFlag = FALSE;
}
TRACKMOUSEEVENT tme;
tme.cbSize = sizeof(TRACKMOUSEEVENT);
tme.dwFlags = TME_LEAVE;
tme.hwndTrack = Panel1->Handle;
tme.dwHoverTime = HOVER_DEFAULT;
_TrackMouseEvent(&tme);
}
//---------------------------------------------------------------------------
0541510
NGNGいや、漏れが甘い夢を見ていたようです。
大人しく別の方法を模索します。
ありがとうございました。
0542デフォルトの名無しさん
NGNG>>539
ヘッダはこんな感じ
class TForm1 : public TForm
{
__published:
TImage *Image1;
private:
TWndMethod OldImageWndProc;
void __fastcall ImageWndProc(TMessage& Msg);
public:
__fastcall TForm1(TComponent* Owner);
__fastcall ~TForm1();
};
cppソースはこんな感じ
__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner)
{
OldImageWndProc = Image1->WindowProc;
Image1->WindowProc = ImageWndProc;
}
__fastcall TForm1::~TForm1()
{
Image1->WindowProc = OldImageWndProc;
}
void __fastcall TForm1::ImageWndProc(TMessage& Msg)
{
if (Msg.Msg == CM_MOUSEENTER)
ShowMessage("Mouse Enter");
OldImageWndProc(Msg);
}
0543デフォルトの名無しさん
NGNG旦~
旦~ 旦~
ヽ )ノ ビュンビュン
旦~ ⌒(゚д゚)ノ 旦~
/. ( ヽ
旦~ 旦~
旦~
0544デフォルトの名無しさん
NGNG( ・∀・) < たまに突然盛り上がるね。
(つ旦と) \______________
と_)_)
0545511
NGNG|Д`) BCBでWin32API直叩きはやっぱり邪道かな?
|⊂
|
0546510
NGNG>>536様 >>511様 >>542様
出来ました〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
ウキィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィィ
はぁ〜 苦節1日・・・ ようやく出来ますたぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁ
ぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁ
ぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁ
ご迷惑をお掛けいたすますたぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁ
ぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁ
ぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁ
うれすぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃ
ぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃ
0547デフォルトの名無しさん
NGNGそんなことないですYO
APIも使えた方がいいに決まっとります (´・Д・`)ゝ
漏れはAPIあまり分かりませんけど…
0548510
NGNGボソボソ・・・
何個もある場合はどうしたらいいんでしょう・・
Imageが40個もあるんですが・・
0549デフォルトの名無しさん
NGNG俺もAPIで組める人尊敬ですよ
>546
おちけつ
0550デフォルトの名無しさん
NGNGヤッパリw
コントロールに頼らず、画面サイズのテーブル作ってボタンの情報を格納、MouseMoveイベントで自力チェックしたほうが簡単な(・∀・)ヨカーン
0551510
NGNGImageListからImageへの読み出し方ってご存知ないですか?
BCB使い初めてからずっと疑問なんですが、、、 わからない・・・
教えられついでにご質問します・・・
0553デフォルトの名無しさん
NGNGヘルプのTCustomImageList::GetBitmap()
0554510
NGNG後、もう少し情報をくださーい。
ImageList2->GetBitmap(1,Image165->Picture->Bitmap);
で、、、今までの関連TImageで交互に変化させようとしました。
すると、拾ってきません。いや、正確には拾ってくるのですが、ブレークポイント
を置いてF9すると変化します。
ですが、何もしないまま素通りさせると拾ってきません・・・
タイミングの問題なんでしょうか・・・
0555510
NGNGCM_MOUSEENTERでImageList2のindex0のBITMAPを。
CM_MOUSELEAVEでImageList2のindex1のBITMAPを。
となっています。
で、今まで御教授頂いたCODE上でBITMAPを変化させようとしています。
所が、何も変化しなくなってしまいました。
イベントには飛んで来ています。デバッグでは変化は成功しました。
ブレークポイントも何も置かない場合のみ変化しません。
と言う事です。
0556デフォルトの名無しさん
NGNGTImage::Refresh()で再描画させてみれば?
0557デフォルトの名無しさん
NGNG0558510
NGNGってか、、、、 ここにいる方達は天才ですか?
と言いますか、漏れのつたない文章を理解し更に解答まで素早く用意する・・・
マジで天才ですか? いや、言わせて下さい。
出来ました!!!!! と!
おいおい、、、漏れの3ヶ月って一体何よ・・・
VBでの . が -> に変わっただけで分からないとか。
ImageListからBITMAPが取れないとか。 なんなんだ、漏れ。
本当に自信を無くしました・・・
0559510
NGNGこれで漏れの殆どの疑問が解決してしまった・・・
凄い人達もいるもんだ・・・
世の中広いなぁ〜
0560デフォルトの名無しさん
NGNG(゚o゚)<よくわからないけど、おめでとう
(ー)ー
))
0561デフォルトの名無しさん
NGNGこれをIDEに登録(Register)してから、Formに貼り付けて使わないと
いけませんね。
0562510
NGNG全然、関係は無いのですがBuilderはINIファイルの書き込み・読み出しとかが遅
いとかを昔MLで聞いた事があるのですが本当なのでしょうか?
また、INIに書き込む事が出来ない事があるとも聞きましたが・・・
他にゲームの設定とかを暗号化したファイルに記憶させたいのですが、私のゲーム
はインストーラを使いません。インストーラを使わなくて暗号化したファイルを作
成する事って可能なのでしょうか?
0563TeamB/2ch ◆SE69s0c2
NGNG>いとかを昔MLで聞いた事があるのですが本当なのでしょうか?
>また、INIに書き込む事が出来ない事があるとも聞きましたが・・・
CBuilder 1 のバグ。といわれると否定できませんが、まずガセでしょう。
どちらの ML でしょうか。
0564510
NGNGhttp://dev.sfdata.ne.jp/cbuilder/
のMLでそのような事を仰っていた方がいました。
in,outの部分を一から作った方もいらっしゃったとか。
0565デフォルトの名無しさん
NGNGML の番号とかお判りになりますか?
http://www.sfdata.ne.jp/windev/cbuilder/
で閲覧できます。
0566TeamB/2ch ◆SE69s0c2
NGNG".ini" で検索した結果を見る分には問題となるような投稿記事を見つけることは
できませんでした。
NT で管理者権限云々の話は、OS のセキュリティ機構の問題ですからバグとは
いえないでしょう。書込み禁止の FD に書き込めないのはなぜだ?というような
話題ですから。
0567デフォルトの名無しさん
NGNG速度とか不安があるなら↓見ておくと良いのでは
・INI ファイルを扱うもう1つのクラス
http://www2.big.or.jp/~osamu/Delphi/Tips/key.cgi?key=5#0287.txt
0568510
NGNG申し訳ございません。私も探す事が出来ませんでした・・・
見たと思ったのですが・・・
関係無い事で時間を取らせてしまいました。この場にてお詫び申し上げます。
>>567
Tmeminiですか・・・ 初めて知りますた。
iniファイルが存在してそれを初めに読み込んでキャッシュすると言う認識
で大丈夫なんですよね。
成る程。こう言う物もあるのか・・・ 速そう・・・
全然話は違いますが、ファイルを暗号化する一般的な手法ってご存知無い
ですか? 解読をやろうと思えば何でも出来るので仕方無いのですが、素
人に有効であれば良い程度の暗号化なんですが・・・
0569デフォルトの名無しさん
NGNG0570デフォルトの名無しさん
NGNGhttp://pc.2ch.net/tech/kako/1017/10178/1017803412.html
77,84
0571510
NGNGう、、、うわぁ〜 む、難しい・・・
ぜんっぜん理解出来ません。これは・・・
Delphiだからとかではなく、、、、 例えBuilderだったとしてもさっぱり・・・
XORの原理から勉強しないと・・・ 漏れの脳みそでは・・・・
0572他のプログラムの起動
NGNGあるプログラムから他のプログラムを起動するのってどんな関数
がありましたっけ。DOS時代には子プロセスの起動の関数が
あったように記憶しているのですが。。。
よろしくお願いします。
0573デフォルトの名無しさん
NGNG0574510
NGNGすんません。またまた質問です。
VBとかで言うPublic変数とかグローバル変数ってBuilderではどうやるん
でしょ。hのPublicに記載するんでしょうか。前やろうとした時に全然う
まく動作しなくて。
具体的にはForm1とForm2の両方が1つないしは2つの変数の値を参照します。
変数の値により何かを分岐させようと思っているのですが・・・
XOR・・・ 難しいですねぇ〜
0575デフォルトの名無しさん
NGNGC++とは言わん。最低限Cくらいは勉強しとくことをお勧めする。
とりあえずexternを検索しる。
XORはビット演算知ってれば簡単だと思うが。というか言語ガイド読んだか?
0576デフォルトの名無しさん
NGNGForm1かForm2のどちからのヘッダーファイルのグローバル部(クラス宣言の外)
に変数を定義する。
もう一方のグローバル部にはexternを付けて変数を外部宣言する。
0577510
NGNGそうですよねぇ。VBからCを素っ飛ばしてC++に来ましたから・・・
知識が滅茶苦茶飛んでるんです。
Builderで業務アプリは組んだんですが・・・ ま、小さい小さい物ですが。
どっちにしても知識不足は認識しておりますので、勉強いたします。
ありがとうございます。
0579510
NGNGForm1のヘッダー・・・ つまり
extern PACKAGE TForm1 *Form1;
の下に
int phensu;
と記載しました。
そして、Form2のヘッダー extern PACKAGE TForm2 *Form2;
の下に
extern phensu;
と記載しました。
そして
Form1側で phensu = 1; Form2->Show(); として
Form2のFormActivateイベントでphensuが1であればこれ、phensuが2であれば
これと分岐させようとしました・・・
がphensuは 0 となっており、どれにも引っ掛かりません。
この場合の期待値は 1 です・・・ 何が悪いんでしょう・・・
0580デフォルトの名無しさん
NGNGん?俺の所で試してみたけど動くぞ。
--form1.h--
int sema;
--form1.cpp--
void __fastcall TForm1::Label1Click(TObject *Sender)
{
sema = (sema == 1) ? 0 : 1;
Form2->Show();
}
--form2.h--
extern int sema;
--form2.cpp--
void __fastcall TForm2::FormActivate(TObject *Sender)
{
if (sema == 1)
Label1->Caption = "Active";
else
Label1->Caption = "Form2";
}
form1のラベルをクリックする度に、form2のラベルのキャプションが変わる。
0581510
NGNG余計なものを除いてとりあえず記載しときます・・・
Form1.h
__published:// IDE 管理のコンポーネント
private:// ユーザー宣言
public:// ユーザー宣言
protected:
};
//---------------------------------------------------------------------------
extern PACKAGE TForm1 *Form1;
int phensu;
//---------------------------------------------------------------------------
#endif
Form2.h
__published:// IDE 管理のコンポーネント
private:// ユーザー宣言
public:// ユーザー宣言
__fastcall TForm8(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TForm2 *Form2;
extern int phensu;
//---------------------------------------------------------------------------
#endif
0582510
NGNGphensu = 1; Form2->Show();
Form2.cpp
void __fastcall TForm2::FormActivate(TObject *Sender)
{
ShowMessage(phensu);
if (phensu == 1)
{
}
}
上記のShowMessageでは 0 となりまする・・・
記載する場所を間違えているのでしょうね・・・ 多分・・・
0583デフォルトの名無しさん
NGNGうーんこのソースからだけではおかしなところはないですねえ。
強いて言えば"TForm8"かな?TForm2なのに?
どこかいいうpろだ教えてくだされば、こちらで試作したファイルを
まるごとうpしますよ。
0585510
NGNGhttp://50megs.com/
50MB
http://angelfire.lycos.com/
50MB・FTP
http://elitecities.com/
5MB・FTP・MAIL
http://esmartstart.com/
20MB・FTP・MAIL
http://fortunecity.com/
25 MB・FTP
http://fsn.net/
30MB・FTP・CGI
http://geocities.com/
15MB・4月からFTP有料化・MAIL
http://graffiti.net/
20MB・MAIL
http://homestead.com/
12MB
http://internettrash.com/
10MB・FTP・MAIL
http://redrival.com/
20MB・FTP
http://tripod.lycos.com/
20MB・FTP・CGI
http://web1000.com/
50MB・FTP・広告無し・アダルト向け?
http://webprovider.com/
20MB・FTP・CGI
http://www.port5.com/
portland系・15MB・FTP・CGI・SSI・PHP・SENDMAIL・広告無し
<中国語>
http://heha.net/
不明
http://uhome.net/
38MB・FTP・CGI・SSI・PHP・SENDMAIL
0586デフォルトの名無しさん
NGNGせっかくうpロダを紹介していただきましたが、どれも登録が必要な
ようですので、2ch系のうpロダにうpしました。
番号は85のDoubleFormsです。
ZIPで圧縮しました。
http://hikky.tsukaeru.jp/clip/clip.cgi
0587510
NGNGhttp://kari.to/upload/index.cgi
って遅かった・・・
0588510
NGNGうぅ・・・ >>586様へ
>>586様のCodeでは動きます。確かに・・・
でも漏れの方では全然・・・
試作で別の奴を作ってみました。それは動くんです・・・
でも本番の奴では動かない・・・ あぁ・・・ 理由がわからない・・・
こうなると設定がらみでしょうか・・・
念の為に再構築もやってみましたが変わらず・・・
こんな所でつまずくとは・・・
0589デフォルトの名無しさん
NGNG外してるかもしれんけど、intの前にvolatile付けてみるとか。最適化で
うまくいってないのかもしれないから。
0590510
NGNG何から何までありがとうございます。
volatileを付けると・・・
「phensuが複数見つかった」とコンパイラに怒られますた・・・
タイミングとかの問題でしょうか・・・ もしかして・・・
0591デフォルトの名無しさん
NGNGvolatile int phensuは一つだけ、後のファイルは全部
extern volatile int phensuにしてみたら?
0592510
NGNGこいつは手強い・・・
Form1.h
volatile int phensu;
Form2.h
extern volatile int phensu;
としますた。ダメっす・・・
宣言は上記2つしか今は無いっす・・・
0593510
NGNGvolatile int phensu = 100;
とかにすると100を拾ってこれるんですがねぇ〜 これじゃ〜・・・
0594デフォルトの名無しさん
NGNG0595510
NGNGその可能性も疑ったのですが・・・ 今試しに
ppppppphensu
と絶対ありえない変数で試したのですが・・・ やっぱり 0 ・・・
何か不味いんでしょうかねぇ〜
Formが多すぎるんですかねぇ〜
実際のFormは今現在 8つ あり、実際にはForm1 と Form8とのやり取りに
なっています。
多いからダメってのも無いとは思うんですが・・・
0596デフォルトの名無しさん
NGNGおかしいねえ・・・・ここまでしたら動きそうなものだが。
どこかにケアレスミスがあると思うよ。
0597デフォルトの名無しさん
NGNG仕事のファイルでないなら、うpしてみませんか?
0599510
NGNGかなりの部分を修正しまくらなくてはならない事がわかったので、そのまま
うpしますた。
87番っす。Project1
0601デフォルトの名無しさん
NGNG了解です。Getできましたので、もし差し支えがありましたら消しておいて
下さい。今から見ます。
0602デフォルトの名無しさん
NGNGヘッダファイルをインクルードしていた。
この場合は、Unit8.hで
#include <Unit1.h>
して、Form8.cppの中でUnit1->phensuとしてやると。
これって、純粋な意味ではグローバル変数とは言わないんだろうか?
ひょっとして俺は、いままで生き恥を晒してきたのだろうか。。。
0603デフォルトの名無しさん
NGNGへいきでエラーなしでリンクしちゃうから、
Form1.hをincludeしてるそれぞれの.cppで
べつのアドレス(べつのphensu)を参照してるんじゃないかな。
てゆーかさ、ふつー、.hファイルは
extern int phensu;
ってかいといて、
どれかひとつの.cppファイル(Form1.cpp)に
int phensu;
って書いて実体を確保しとくもんじゃないの?
0605デフォルトの名無しさん
NGNG> てゆーかさ、ふつー、.hファイルは
> extern int phensu;
> ってかいといて、
> どれかひとつの.cppファイル(Form1.cpp)に
> int phensu;
> って書いて実体を確保しとくもんじゃないの?
だよな
0606デフォルトの名無しさん
NGNGUnit1でpublic変数として定義してあれば、どのクラスからも見れますから、
それでもいいんじゃないでしょうか。
この場合、phensuがどのクラスに属するべき変数であるかで、externに
すべきかクラス変数にすべきか決まります。Unit1->phensuでも構わない
と思います。
ところで、バグの原因がわかりました。Unit1.cppの347行目でForm8を
表示していますが、この時点ではphensuは0です。そして、この行は
一回しか呼び出されません。
0607510
NGNG消し方わからねーー
0608デフォルトの名無しさん
NGNGBCBの場合フォーム一つにヘッダファイル一つが作られますから、
どちらでもいいと思います。
603さんのようにするには、すべてのフォームからインクルードする
ヘッダファイルを一つ作り、そこにextern宣言することになります。
0609デフォルトの名無しさん
NGNG画面の下に記事No.と削除キーを入れる所がありますので、そこに入力して
記事削除ボタンを押せばいいと思います。
0611デフォルトの名無しさん
NGNGそうなんですが、「翌年」を押した時、最初の一回目は347行も実行されるん
です。mmonth==0だからでしょう。その時におかしいのだと思います。
「翌年」を二回目以降押すと、ちゃんと1になっています。
0613510
NGNGぐわぁ〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
本当だぁ〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
完全なロジックミスと言う事だぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁ
なんとなんと恥ずかしいぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃ
0614デフォルトの名無しさん
NGNG347行目でphensu=0のままForm8を表示してしまっています。
0615510
NGNGあれ? 何にもしてねーのに拾うようになったぞ?
何かしたかな・・・ F9押してコンパイルはかけたが・・・
あれ?あれ?あれ?あれ?あれ? 何故? どうして?
0616デフォルトの名無しさん
NGNG旦~
旦~ 旦~
ヽ )ノ ビュンビュン
旦~ ⌒(゚д゚)ノ 旦~
/. ( ヽ
旦~ 旦~
旦~
0617デフォルトの名無しさん
NGNG何を拾うって?
0618510
NGNGってよく見たら、347行目近辺をコメントしてしまっていた・・・
もうアフォかと・・・ 何やってんだか・・・
ってかこれって会社で出すゲームなんだよな・・・ やっちまった・・・
0619602
NGNGまぁ、自分がやっていた方法もBCBに
かぎっては(?)あながち間違いでも無いようですね。
ただ、正直なところexternの方法は知らなかった(恥)ので
ちゃんと勉強して使い分けられるようになりたいと思います。
>>510
色々大変そうだけど頑張ってくださいね。
おかげさまで、自分も勉強になりました。
0620デフォルトの名無しさん
NGNG0621デフォルトの名無しさん
NGNGその通り、Form1つにつき.h1つだけどさ、
Form1内でForm2を使う時はForm2.cppでForm1.hをincludeするでしょ。
もちろん、その逆も。
そういう部分(.h)にextern無しの変数を宣言するなんて信じられないね。
0622デフォルトの名無しさん
NGNGうーむ、確かにCやC++の基本に忠実に沿えば、その通りですね。
私は他のフォームからどこかのフォームのヘッダファイルをインクルード
するなんて事はしてませんでしたから、今まで問題なかったようです。
これから気をつけます。
0623デフォルトの名無しさん
NGNG> するなんて事はしてませんでしたから、今まで問題なかったようです。
これって、動的なフォーム生成すらやったことがないってことですね。
0625デフォルトの名無しさん
NGNG仕事で使ったことがないもんですから・・・・・・
まさにBCBは遊びのツール。でもC++は真面目に勉強してるぞーーー!!
どうもDelphiの快適さから抜け出すのに時間がかかりそうです。
0626デフォルトの名無しさん
NGNGBorland Breaks New Ground with C++ Technology for Linux
http://www.borland.com/news/press_releases/2002/07_23_02_Kylix3.html
0627デフォルトの名無しさん
NGNGDelphiではusesに含めなくても他のフォーム(Unit)や
そのUnitに含まれる関数・グローバル変数等を使えるのかい?
てゆーかさ、Formに限らないけど、値の受け渡し等にinclude必須じゃん。
むしろ、includeしないで効率良くインスタンス間でデータが渡せるなら教わりたいよ。
(メッセージとかファイル/パイプ経由とかは無駄が多すぎ)
これがコンパイルを遅くしてる大きな原因なんだから。
0628デフォルトの名無しさん
NGNGコンポーネント型継承なら、実行型情報を使うといいよ
毎回検索したら遅いから、 メソッド名やプロパティ名は
最初に検索しておくといい
0630デフォルトの名無しさん
NGNGDelphiはヘッダーファイルという概念がないので uses文で取り込む
コンポーネント等を指定しますが、その癖が抜けてなかったのです。
C/C++のexternは概念的には理解しているのですが、やはり実際に
使わないと覚えられませんね。
>>628
dynamic_castを使うのですね。Senderを動的キャストして使わなけれ
ばならない場面がたくさんあり、Delphiの is や as と似ていると思いま
した。
>>629
いえいえこちらこそ大変勉強になりました。プロジェクトが無事完結す
るといいですね。
0631デフォルトの名無しさん
NGNG何を渡しているでせうか?
そのイベントハンドラを所有するフォームのOwnerプロパティ?
Application変数?メインフォーム?それともNULL?
その辺がまともな発想の範囲だと思いますが、
今回の仕事の前任者は、平気でMDI子フォームをOwnerに指定しまくっています。
個人的にはとっても気持ち悪いのですが、急ぎの仕事なので
明らかな弊害がなければ放置したいです。
とりあえず、「Owner消滅でそのフォームのOnCloseやOnDestroyが走らない事による弊害」
はないのが判明しているので、そういう甘えた気分でいるのですが・・・
皆様のご意見をお待ちしております。
0632631
NGNGTMainForm *MainForm; //メインフォーム
に
TFirstChildFormやTSecondChildForm等の子フォームクラスがあったとします。
んでもって、こんな感じです・・・
void __fastcall TFirstChildForm::Menu1Click(TObject *Sender)
{
TSecondChildForm *s = new TSecondChildForm(this);
}
これでいいのか〜?と思う次第であります。
0633困った
NGNG方法がわかりません。
VCLコンポーネント同士ならいろいろできるのは分かっているんですが、、
受け入れる情報は元ファイルのフルのパス名だけで十分です。
0634デフォルトの名無しさん
NGNGhttp://www.google.co.jp/search?hl=ja&q=DragAcceptFiles+WM_DROPFILES+builder
0635困った
NGNG0636510
NGNGまたまたまた教えてくらさい。
TreeViewの背後にBitmap等のイメージを貼り付けるのはどうやればいいん
でしょ。背後が白ではちょっとみっともないので・・・
0637デルファイの名無しさん
NGNG0638510
NGNG背景は確かに描画されましたが、Node回りが白くなってしまいます。
で、CustomDrawItemを調べたのですが、、、、 これがよくわからない・・・
HELPを見るに、自分で全て描画処理をしなければ行けないと言う事は理解出来た
のですが・・・
こんな感じで訳分からん状態っす。
TRect NodeRect;
DefaultDraw = false;
NodeRect = Node->DisplayRect(true);
TreeView1->Canvas->FillRect(NodeRect);
NodeRect = Node->DisplayRect(true);
TreeView1->Canvas->Brush->Style = bsClear;
NodeRect.Left = NodeRect.Left + (Node->Level * TreeView1->Indent);
TreeView1->Canvas->TextOutA(NodeRect.left,NodeRect.Top,Node->Text);
やりたい事はアイテム回りが貼り付けた背景と同化したいと言う事っす・・・
0639510
NGNGしまつた。これがDraw関連のコードです・・・
void __fastcall TForm1::TreeView1CustomDraw(TCustomTreeView *Sender,
const TRect &ARect, bool &DefaultDraw)
{
TCanvas *pCanvas = TreeView1->Canvas;
pCanvas->StretchDraw(ARect, Image14->Picture->Bitmap);
DefaultDraw = true;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::TreeView1CustomDrawItem(TCustomTreeView *Sender,
TTreeNode *Node, TCustomDrawState State, bool &DefaultDraw)
{
TRect NodeRect;
DefaultDraw = false;
NodeRect = Node->DisplayRect(true);
TreeView1->Canvas->FillRect(NodeRect);
NodeRect = Node->DisplayRect(true);
TreeView1->Canvas->Brush->Style = bsClear;
NodeRect.Left = NodeRect.Left + (Node->Level * TreeView1->Indent);
TreeView1->Canvas->TextOutA(NodeRect.left,NodeRect.Top,Node->Text);
}
0640デフォルトの名無しさん
NGNG> TreeView1->Canvas->FillRect(NodeRect);
↑の代わりにCopyRectでビットマップを描画しないといけないのでは。
でも、TreeViewの背景にビットマップを表示するのはちょっと大変そう。
ヘルプにも
「背景ビットマップの描画は実際に CustomDraw によってサポートされていないため,〜」
って書いてるし。
0641510
NGNG何気に難しいんすよ・・・ 無地の白で行こうかなんて思ってたり・・・
でも画面のバランス的にはやっぱりまずいんですよね・・・
ってかずっとやってるのに未だに・・・
0642デフォルトの名無しさん
NGNGVB6からの移植で、LeftStr等の関数を使うと対比・確認がやり易くなるかと思ったんですが、
コンパイル時に「E2268 未定義の関数 'LeftStr' を呼び出した」と言われました。
0643デフォルトの名無しさん
NGNG0644642
NGNG事故レス、スンマソン見つかりますた
#include <strutils.hpp>
でした。
回線切って(以下略
0646デフォルトの名無しさん
NGNGProfessional版は、60000かぁ〜・・・
高い・・・・俺には買えない・・・・
0647デフォルトの名無しさん
NGNGシェアウェア作って売れれば元なんてすぐ取れるんですけど・・・・
0648デフォルトの名無しさん
NGNG売れればね...。
0649デフォルトの名無しさん
NGNGベクターに登録後、DL件数550件余
未だに購入どころか要望やら批判やらも含めて何のメールも来ない。
きっと、シェアウェアとか言いながら、何の制限もかけてないせいだと思いたい。
0650デフォルトの名無しさん
NGNGそれは寂しいね。あなたのソフトの質は高いのだと信じたいが、それに
しても冷たいユーザーだな。
0651デフォルトの名無しさん
NGNG0652デフォルトの名無しさん
NGNG0653デフォルトの名無しさん
NGNGDelphiでは、DataSet.Fields[i].OnValidate という風に、入力値チェックの
イベントを呼び出すことができました。
しかし、BCBでは、TFieldsオブジェクトにValidateメソッドはありません。
だから、 DataSet->Fields[i].Validate() と書くとコンパイルエラーに
なってしまいます。これをどう解決したらよいのでしょうか?
それから、Delphiでは、イベントハンドラの有無を Assigned関数でチェック
できましたが、BCBでは同様のチェックをどのように行えばよいのでしょ
うか?
よろしくご指導のほどお願い致します。
0654デフォルトの名無しさん
NGNGDataSet->Fields[i].Validate() は2つの間違い
1、DataSet->Fields[i] は参照ではなくポインタを返す
2、Validateには・・・ヘルプをみろ
Assignedは、Delphiでは 引数無しのメソッドは () を付けないので
if xx.Onxx=nil then のように書くとOnxxxメソッドが呼ばれてしまう場合があるから必要なんだけど
C++では必要ない
CのようにNULL と比較してもいいし 論理型にポインタ型が代入される時の仕掛けを利用してもいいし
0655デフォルトの名無しさん
NGNGレスありがとうございます。
結局、次のような方法で動くようです。
1.関数が登録されているかどうかチェック
if (&DataSet->Fields->Fields[i]->Validate)のように、関数のポインタ
のアドレスをチェックする。
2.OnValidateの呼び出し
DataSet->Fields->Fields[i]->Validate(reinterpret_cast<void *>(&DataSet->Fields[i]))
しかし、まだ疑問が残ります。
2.で、確実にValidateが呼び出されているのかどうか、それから、実際の
フィールドにフォーカスを当てても、変更不可能となっていることなどです。
ここら辺の情報について、ヘルプでは情報不足で、BCB関連の書籍もない
ので、迷っています。
0656デフォルトの名無しさん
NGNGまた間違えてました。
1.関数が登録されているかどうかチェック
if (DataSet->Fields->Fields[i]->OnValidate)のように、関数のポインタ
のアドレスをチェックする。
でした。Validate()は必ず存在しているので、この関数のアドレスをテスト
するのは無意味でした。
しかしこれも合っているのかどうか怪しいです。
0657デフォルトの名無しさん
NGNG0658デフォルトの名無しさん
NGNG亀レススマソ。
Validate()が void * を受け取る仕様になっているため、確実に実行
されているかどうか確かめるすべがないのです。
DelphiをC++に移植する時点で生じた食い違いだと思いますが、
だましだまし使っていこうと思います。
それにしても、マニュアルなりヘルプなりにValidate()の詳しい説明
があってもいいのに( ´Д⊂ヽ。
0659デフォルトの名無しさん
NGNGというのは、Delphiで言うとどんなコード?
Delphiのコードで説明しても結構ここの人はわかるかもよ。
0660デフォルトの名無しさん
NGNGありがとうございます。
実はDelphiオフィシャルコースウェア基礎編P276のコードをBCBに移植して
いてつまづいたものです。
元のコードは、
if Assigned(DataSet.Fields[i].OnValidate) then
try
DataSet.Fields[i].OnValidate(DataSet.Fields[i]);
except
DataSet.Fields[i].FocusControl;
raise;
end;
というものです。DelphiではOnValidateという述語にいろんな意味が持たせて
あるようですが、BCBでは厳密になっており、このような書き方はできません
でした。
もしわかりましたらご指導の程宜しくお願い致します。
0661デフォルトの名無しさん
NGNGif (DataSet->Fields[i]->OnValidate)
{
try
{
DataSet->Fields[i]->OnValidate(DataSet->Fields[i]);
}
catch (...)
{
DataSet->Fields[i]->FocusControl();
throw;
}
}
0662デフォルトの名無しさん
NGNGでないかな。
0663デフォルトの名無しさん
NGNG私も最初はそのように書いたのですが、BCBのFields[]はTFields*型で
あって、TField*型でない(非常に紛らわしい)ので、OnValidate()メソッド・
イベントはメンバにないのです。
なぜこのような仕様になっているのかわかりません。
DataSet->Fields->Fields[i]のようにするとTField*型になってうまく行く
ようです。これで少し試してみます。どうもありがとうございました。
0664デフォルトの名無しさん
NGNGあっ、答えてくださっていたのですね。ありがとうございます!
0665デフォルトの名無しさん
NGNG同じようにStrings->String[i]や、Items->Item[i]で参照する。
Delphiのpropertyが、沿え字つきの間接参照を
一段省略出来る構文になっているんだと思う。
0667デフォルトの名無しさん
NGNGなるほど、そういうふうに解釈すると筋が通りますね。
Delphiの参考書と首っ引きで悩んだ末に出した答えが偶然合って
いたのか・・・・これからは論理的に理解して書けます。嬉しいです。
>>666
昔はそうだったのですね。BCBは6から初めて使っているので、
まだ全然わからないのです。Delphiと、C++を頭の中で融合させる
のに必死になっています。
0668デフォルトの名無しさん
NGNGのですが、これは仕様でしょうか?
0669デフォルトの名無しさん
NGNG0670デフォルトの名無しさん
NGNGそうですよね。で、TextOutAのままにしても、Aを削ってTextOutに
しても、どちらでもコンパイルは通って、実行も正常です。
0671デフォルトの名無しさん
NGNGWinGdi.hで
#define TextOut TextOutA
てな定義がされている為 TextOutAを定義していないというエラーが出るのを防ぐ為に
どこかで誰かが TextOutAから TextOutへのJumpをさせてるのだと思うけど
どこで誰がやってるのかが判らないな
0672デフォルトの名無しさん
NGNG検索で"TextOut"を探してみましたが、どうもよくわかりません。
Vclフォルダのどこかにあると思うのですが。
自動補完でそうなるということは、何か意味があるのでしょう。
0673デフォルトの名無しさん
NGNG雲は焼け 道は乾き 日はいつまでも沈まない
心は昔死んだ 微笑にはあった事も無い
昨日なんか知らない 今日は旅を一人
けれどもどこかでお前は待っていてくれる
きっとお前は風の中で待っている
どこかで誰かがきっと待っていてくれる
血は流れ 川は裂ける 痛みは生きている印だ
いくつ峠を越えた どこにも故郷はない
泣くやつは誰だ このうえ何が欲しい
けれどもどこかでお前は待っていてくれる
きっとお前は風の中で待っている
0674デフォルトの名無しさん
NGNG0675デフォルトの名無しさん
NGNG8月中には出そうなヨカーン。
0676デフォルトの名無しさん
NGNG8月は Kylix3 で忙しいから無理じゃないの?
今四半期(9月末まで)は Kylix3 なんでしょ?それともいっしょにパッチがでる?
0677デフォルトの名無しさん
NGNG何処で落とせる???
0678デフォルトの名無しさん
NGNGTFormコンストラクタのDFMリソースを必要としない形 TForm(Owner, int)
を使って新規フォームを作成し、そこにいろんなコントロールを貼り付ける
実験を行っています。
ここで疑問なのですが、各コントロールも new で生成していますが、
各コントロールのParentプロパティに親フォームを指定しておけば、親フォー
ムを delete した時に貼り付けた子コントロールも自動的に delete される
のでしょうか?それとも、一個一個 delete しなければならないのでしょうか。
ご指導宜しくお願い致します。
0679デフォルトの名無しさん
NGNGTControlのParentと、TComponentのOwnerのヘルプ見て違いを叩き込め。
0680デフォルトの名無しさん
NGNGレスありがとうございます。早速ヘルプを見てみたら、Ownerプロパティに
「オーナーのメモリが解放されると,その所有コンポーネントのメモリも解放される。
したがって,フォームが破棄されると,そのフォーム上のすべてのコンポーネント
も破棄される」
とありましたので、TFormがOwnerであると、その上に配置されたコントロールの
破棄はTFormに任せてしまってよいようですね。
また一つ勉強になりました。
0681デフォルトの名無しさん
NGNGBCB6 SP1 でてるじゃん。
日本版はまだかよ。
ttp://community.borland.com/cgi-bin/surveys/thanx.cgi?cb6reg_updates_down
0682デフォルトの名無しさん
NGNGBCB5の時は一週間もかからなかったように記憶している。
0683デフォルトの名無しさん
NGNG素のWin98だと「欠落エクスポート」ってエラー出て動かないんですけども、
SP1あてれば直りますかね?
っていうか直ってくれないと使えないよ(泣
0684デフォルトの名無しさん
NGNGimplibで該当DLLのインポートライブラリ作り直せば?
0685デフォルトの名無しさん
NGNGimplibでoleaut32.dllのインポートライブラリを作ってリンクさせてみましたがダメですた。
おとなしくBCB5使ってます。。。(シクシク
0686デフォルトの名無しさん
NGNGちゃんと素のWin98で作ったか?
0687デフォルトの名無しさん
NGNG686 はガセ。
具体的な欠落しているエクスポート名は?
関連する情報をひとつ知っているけど Win95 の問題であって Win98 なら
出荷版から問題なかったはずなので。
0688デフォルトの名無しさん
NGNG********.EXE は
欠落エクスポート OLEAUT32.DLL:173 にリンクされています。
173は10進表記ですかね? だとすれば、VarRound だと思います。
Win98のOLEAUT32.DLLには存在しないです。
0689デフォルトの名無しさん
NGNG173 は VarNeg だぞ。俺のは 98 2nd edition だが.
こんな基本的なのが落ちている。ってことは
ないとおもうんだが。
0690デフォルトの名無しさん
NGNGでもやっぱり Win98 の OLEAUT32.DLL には存在しません。
ちなみに dll のバージョンは 2.20.4122.1 です。
0691デフォルトの名無しさん
NGNGすまん。このスレ見落としてた。
俺のは
2.40.4518.0
だいぶ進んじゃってるね。コモンコントロールアップデートかけてみたら?
0692デフォルトの名無しさん
NGNGBCCDevつかってBCC単品だけで使うのには大丈夫なのに・・・
0693デフォルトの名無しさん
NGNGttp://community.borland.com/cgi-bin/surveys/thanx.cgi?cb6reg_updates_down
0694デフォルトの名無しさん
NGNG0695デフォルトの名無しさん
NGNGおい!
0696デフォルトの名無しさん
NGNGゴルァ!!
ttp://www.borland.co.jp/download/cppbuild.html
0697デフォルトの名無しさん
NGNGどういうこっちゃ ⊂⌒~⊃。Д。)⊃
0698デフォルトの名無しさん
NGNG0699デフォルトの名無しさん
NGNG出すんじゃない?ねえ某。
0700デフォルトの名無しさん
NGNG0701デフォルトの名無しさん
NGNG笑えんよ。
0702デフォルトの名無しさん
NGNG日本語 BCB6 は最初から Update1 の修正を反映しております。
が正解。US Update1 の日付、よく見てみ。
日本語 Update2 は盆明けの気がするよ....
0703デフォルトの名無しさん
NGNGUpdate2 で、コンパイラと STL が置き換わっている。
アップデートしてからやってみたら?
0704デフォルトの名無しさん
NGNG関係者?
某はここ見てるからなぁー
0705デフォルトの名無しさん
NGNG墓掃除しながら待ってみます
0706デフォルトの名無しさん
NGNG(コンパイラいれかわってるなら
0707>>706
NGNG0709デフォルトの名無しさん
NGNGDelphiにはポインタ値という表現がありましたが、BCBで %p で表示
しようとすると、
「書式文字列 '%p' は正しくないか引数の型と一致しません」
というエラーダイアログが出てしまいます。
表示行は
const AnsiString CR = "\x0d";
char buf1[256], *pbuf, buf2[256];
strcpy(buf1, "ABCDEFG");
pbuf = buf1;
Label4->Caption = Format("buf1のアドレス = %p" + CR +
"pbufから見た文字列の先頭アドレス = %p",
ARRAYOFCONST((reinterpret_cast<int>(buf1), reinterpret_cast<int>(pbuf))));
と記述しています。書式文字列が "%.8x" だといいみたいなのですが、BCBでは
ポインタ値を使えないのでしょうか。
0710デフォルトの名無しさん
NGNGあと、両方の値は同じになって正しい?
0711デフォルトの名無しさん
NGNGレスありがとうございます。
"%.8x" にすると、どちらも 0012FF80 と表示されます。
オープン配列の概念が今ひとつつかめないので、ポインタ値という
表現にとまどっているのです。
このARRAYOFCONSTというマクロもくせ者で、unsignedにキャスト
して渡すとエラーを起こします。それは今回はいいのですが。
ということは、BCBでは "%p" という形式文字列は無意味だと考えて
よいのですね。
0712デフォルトの名無しさん
NGNGとりあえず、ARRAYOFCONSTなるマクロを使わずに、そのままbuf1,pbufを渡してみ。
0713デフォルトの名無しさん
NGNG了解です。やってみます。
0714デフォルトの名無しさん
NGNG0715デフォルトの名無しさん
NGNGFormat関数にはTVarRec型のオブジェクトを渡してやる必要があるの
ですが、このTVarRecの宣言が systvar.h 内でされていました。
このヘッダーファイルをじっくり読むと、Pointer型にキャストすれば
いいようです。
ARRAYOFCONSTマクロは必要です。もしくは、TVarRec型の配列を
自分で作って渡す必要がありますが、どちらも同じことになります。
unsignedでうまくいかないのも、Integer型しか宣言されてないためでした。
下にうまく動いた記述を書いておきます。
Label4->Caption = Format("buf1のアドレス = %p" + CR +
"pbufから見た文字列の先頭アドレス = %p",
ARRAYOFCONST((reinterpret_cast<Pointer>(buf1), reinterpret_cast<Pointer>(pbuf))));
0716デフォルトの名無しさん
NGNGconst AnsiString CR = "\x0d";
char buf1[256], *pbuf, buf2[256];
strcpy(buf1, "ABCDEFG");
pbuf = buf1;
TVarRec v[] = { (Pointer)buf1, (Pointer)pbuf };
Memo1->Text = Format("buf1のアドレス = %p" + CR +
"pbufから見た文字列の先頭アドレス = %p", v, ARRAYSIZE(v) - 1 );
0717デフォルトの名無しさん
NGNG0718デフォルトの名無しさん
NGNGすみませんわざわざありがとうございます。
ここの所VCL対応のソースを書くためにBCBを勉強しているのですが、
あちこちつぎはぎだらけという印象ですね。
C++だからなんとか格好はついたものの、ユーザーに負担を強いると
いう形になっているようです。
まあVCLはObject Pascalで呼び出されることを前提としているので、
全く他の言語であるC++から自由に呼び出せるという事自体驚異的な
事なのかもしれませんが。
0719デフォルトの名無しさん
NGNGFormatを使うのとどっちがいいのかなぁ?
でも普段はstd::ostringstreamだからあんまり使わないけど・・
0720デフォルトの名無しさん
NGNGDelphiとの互換性を無視するなら、sprintf/printfの方が多機能で、C言語の
書式文字列にも準拠しているし、慣れていて使いやすいですね。
0721デフォルトの名無しさん
NGNG次のようなプログラムを走らせると、Edit1->Textに2〜3文字しか入れて
ないのに、無意味なデータを表示する巨大なメッセージボックスが現れて
しまいます。
data()メソッドをc_str()メソッドに変えても同じです。何がいけないのでしょ
うか。
LPCTSTR lpName;
AnsiString ss;
lpName = static_cast<const char *>(Edit1->Text.data());
for (const char *p = lpName; *p; p++)
ss.cat_sprintf("%02x ", *p);
ShowMessage(ss);
0722デフォルトの名無しさん
NGNGで、GetTextがAnsiStringを返しますが、どこにも代入してないので
すぐにデストラクタが呼ばれて実体はなくなります。
「data()で取得しているのは、まだ有効であった時代のアドレス値」であり、
実体が無効になった後には何が入っているかわかりません。
0723デフォルトの名無しさん
NGNGShowMessage(lpName);を取得直後と最後に呼べば分かるけど。
0724デフォルトの名無しさん
NGNGなるほど。ということは、Textプロパティにdata()を使うのはいけないみたい
ですね。一度AnsiString型の変数にTextを代入して、それに対してdata()
を使ってみます。
実はあれからいろいろ試行錯誤して、GetTextBufというメソッドを使って
うまく行ったのですが、LPTCSTRが使えなくなり、あまり綺麗とは言えない
プログラムになっていました。
>>723
ちょっと意味がわからないのですが、lpNameは変化させてないので、
大丈夫じゃないでしょうか。
0725デフォルトの名無しさん
NGNG。|.
| |。 |゚ y
゚| | |io i|
。| ゚i| 。i|,,ノ |i.
i|゚ ||゚ /ii 。 ゚|i_/゚
`ヽoー|i;|y-ノ
,;:i´i;ノ , , 圜
('';ii'' , , ’ ‘
ノii;;.i| ||\/|\/|\/||
ii\. ∧_∧ ||::::.|;;;;|:::::|;;;;;|::::|;;;;;||
,;;iiiイ( ´∀`)δ....||:::::|;;;;|:::::|;;;;;|::::|;;;;;||
;;:iiii+ii:( つ□つ┃ . ! ::;;|:::::|;;;;;|::::|;;;;;||
iiiイ+ ,,と_)__)、 旦~::;;|:::::|;;;;;|::::|;;;;;||
⊂ニニニニニ⊃| ̄ ̄|::|:::::|;;;;;|::::|;;;;;|| | ̄ ̄|
0726デフォルトの名無しさん
NGNGタイマーで処理?
0727デフォルトの名無しさん
NGNG引数に 0 を与えればいいんですか?
0728デフォルトの名無しさん
NGNG0729デフォルトの名無しさん
NGNG実はDLLの中から生成するんです。こういう場合もApplicationで
よろしいですか?
0730デフォルトの名無しさん
NGNGちなみに何のインスタンス?
もちろんVCLだよね?
0731デフォルトの名無しさん
NGNGありがとうございます。TDataModuleです。引数無しでコンストラクタを
呼び出すとコンパイルエラーになります。
0732デフォルトの名無しさん
NGNGAnsiString().sprintf(...) のように書いてもよいでしょうか。
0733デフォルトの名無しさん
NGNGBCBで作成したDLL内の関数をGetProcAddressで得ようとすると、
見つからないようなのです。
C++だから名前マングリングがなされているのでしょうか。
0734Delフサギコ ◆VzDeLphI
NGNG∧,,∧ /Delphiで
_ ミ,,゚Д゚彡_< DataModule1 := TDataModule1.Create(nil);
.=| |==U==U=| |= \としても正常動作してますが、、、
| |@ミ ミ .| |  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| | ∪''∪ | | もちろんDLLからです。
| | | |
0735デフォルトの名無しさん
NGNGやっぱりDLLはApplicationオブジェクトがないので 0 もしくは nil とするしか
ないですよね。
0736デフォルトの名無しさん
NGNGいやーぐぐったら、GetProcAddressはC++の時は結構厄介ですね。
予想通り名前マングリングが起きて、関数名が化け化けになっていま
すので、この「化け化け」を渡さなければなりません。
名前マングリングを避けるには、モジュール定義ファイルのEXPORTS
セクションに生の名前を書かなければなりませんね。ちょっとしたDLL
の実験の時はこういう面倒を避けたいのですがなかなか。
0737デルファイの名無しさん
NGNGdllでもApplicationオブジェクトありますけど…。
Controls.pasのソース参照。dllだろうが何だろうが問答無用で作ってます。
ただし、dll側はハンドルを持たないので、*.exe側のApplication.Handleを
dll側のApplication.Handleに渡してやると、ダイアログなんかが協調動作してくれるみたいです。
(実験したことは無いですけどね)
0738デフォルトの名無しさん
NGNG0739デフォルトの名無しさん
NGNGでない。
..実は英語版ではなく国際対応版で、パッチに日本語の Readme が入っていることは秘密にしておこう。
ゆっくり日本語のインストーラーがでるまで我慢しなさい > 738
0740デフォルトの名無しさん
NGNGdstring.h を include すれば、istreamとostreamの<<演算子と>>演算子に
AnsiString型を適用できますが、ifstreamとofstreamはだめのようです。
ofstreamはc_str()メソッドを使うとして、ifstreamはやはりstringに一旦
代入しておいてからAnsiStringにコピーするしかないのでしょうか。
0741デフォルトの名無しさん
NGNG出来なければおかしいのだが…
0742デフォルトの名無しさん
NGNG例えば、TRichEdit型のウィンドウに「aaababaabaaa」と描画し、
「b」だけを赤くすることはできますか?
巧いやり方が思いつかないので助けて頂けると嬉しいです。
どうか、よろしくお願いします m(--)m
0743デフォルトの名無しさん
NGNGRichEdit->Lines->Textを適当なAnsiStringの変数に入れる
AnsiString::Posメソッドを使って b を探す
見つかった位置の文字色を赤にする
(TRichEdit::SelStart,TRichEdit::SelLength,TRichEdit::SelAttributesあたりHelpで見ればわかる)
0744デフォルトの名無しさん
NGNGそう思ってdstring.hの中身を覗いてみましたが、やはりistream用と
ostream用の>>と<<しか定義されていません。
それから、AnsiString.operator=(std::string)も定義されてないので、
AnsiStrng = string; とすることもできない事がわかったので、仕方
なく char[] に代入しておいて AnsiString(char *); で作っています。
困りました。
0745デフォルトの名無しさん
NGNGifstreamはistreamをofstreamはostreamを継承しているから
出来ないはずがない。ということ
もしコンパイラの不具合かなんかで出来ないならキャストしてみな
それからincludeする順番としてvcl.h(dstring.h)をincludeする前に
iostreamをincludeあるいはVCL_IOSTREAMを定義しないと
AnsiString用のoperator<<はコンパイルされなくなっているが
それは大丈夫か?
0746デフォルトの名無しさん
NGNGmap<AnsiString, AnsiString>にoperator[]を使って要素を追加しようとすると
アクセス違反が発生してしまいます。
付属のSTLとSTLPortどちらも駄目でした。
C++Builder3では大丈夫なのですが。
これはバグなのでしょうか?
0747デフォルトの名無しさん
NGNG0748デフォルトの名無しさん
NGNGレスありがとうございます。
うーんやっぱりだめのようです。
VCL_IOSTREAMを定義しても、dstring.hの前にiostreamやfstreamを
持って行っても、istreamとostreamはAnsiStringを受け付けますが、
ifstreamとofstreamは受け付けてくれません。
0749デフォルトの名無しさん
NGNGではキャストするとどうなる?
std::ofstream ofs("hoge") ;
dynamic_cast<std::ostream&>(ofs) << "korededouda" ;
0750デフォルトの名無しさん
NGNGだめでした。「ostreamにはAnsiStringのための定義が存在しない」だそう
です。何か根本的に間違っているような・・・・
0751742
NGNGレスありがとうございます。
全部の色を変えるのは分かるんですけど、
任意の文字だけ変えることも可能なんでしょうか?
秀丸とかを見てると可能っぽいんですけど、
文字数が多くなっても処理が重くなりませんか?
0752デフォルトの名無しさん
NGNGほとんどの高機能エディタはRichEdit等を使わず自前で描画してると思う。
0753デフォルトの名無しさん
NGNGどうすれば年を取得する事ができるのでしょうか?
0754デフォルトの名無しさん
NGNGBuilder好きですが 今度の仕事に使うか迷っています。
一番の イヤな部分は例外処理が自動的(?)に出る部分です。たとえば
TNMFTPでConnectエラーで勝手にでるダイアログですが出ないように
することはできるのでしょうか?
Handled=trueにしても出てしまうです
0756デフォルトの名無しさん
NGNGTNMFTPは使ったことないけど
ツール/デバッガオプション/言語固有の例外/Delphi言語の例外で停止 or C++言語の例外で停止
辺りかな?
0757デフォルトの名無しさん
NGNGただ、例外はとまりましたが ライブラリの親切ダイアログは
まだでるようです。TJpegだとJPEGエラーとか、TNMFtpだと
"530 login inc..."とかです。これらを消したいのですが
どのようにすればよいのでしょうか?
0758デフォルトの名無しさん
NGNGデバッグ時だけだと思うんだけど(JPEGはそうでした)
それも出したくないということかな
0759デフォルトの名無しさん
NGNGtry〜catchで例外処理してしまうというのはどうかな?
Delphiですまんが、以下のようにしたらダイアログはでなかった。
procedure TForm8.Button1Click(Sender: TObject);
begin
try
NMFTP1.Connect;
except
end;
end;
0760759
NGNG0762デフォルトの名無しさん
NGNG/∴∵∴ヽ
|∵∴∞ヽ| _____________
|∴/= ♀=| <使ったことねーからわかんねーよ!
\| ▽/  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ̄ ̄
0763デフォルトの名無しさん
NGNGんじゃーしょうがないな、
0764754
NGNG>>761 すみません CBuil初心者ですので。他のスレでわかる範囲で
質問には回答するようにしてます。
0765デフォルトの名無しさん
NGNG0766デフォルトの名無しさん
NGNGSimpleX,UDX,DDDDなどが動かせるみたいだけど
どれがイイんでしょうか。
いちお、SimpleXとUDXのサンプルを動かすことに
成功しやした。DDDDは本日中には・・・
0767デフォルトの名無しさん
NGNG5を出版してくれないのか。
0768デフォルトの名無しさん
NGNG0769デフォルトの名無しさん
NGNG/_ |
/. \ ̄ ̄ ̄ ̄|
/ / ― ― |
| / - - |
||| (6 > |
| | | ┏━┓| / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| | | | ┃─┃| < DirectXは使ってるけど、正直そういうライブラリは未経験。
|| | | | \ ┃ ┃/ \_________________________
| || | |  ̄  ̄|
0770デフォルトの名無しさん
NGNGQ1 VC++と比べて「良いところ」と「悪いところ」は?
Q2 C言語もコンパイルできますか?
Q3 フリー版はありますか?(BorlandC++はフリーありますよね)
0771デフォルトの名無しさん
NGNG(1)簡単
(2)できる
(3)ない
0772デフォルトの名無しさん
NGNG両方使ってる人の意見をネットから適当に抜粋
> こうして並列して使っているとお互いが一長一短なのがよくわかる。
> エディタ、デバッカとしての使い勝手はVC++がはるかに上だが、
> BCBのGUIエディタを使った後ではVC++のリソースエディタとクラスウィザードはガキのおもちゃにしかみえぬ。
> でも、コンパイルはVC++の方が早いのだよなあ。
他にはこんな感じ
> 本やネット上の情報量はVCのほうがずっと多い。
> 最適化はケースバイケースだが一般的にはVCが上。
> ANSI 準拠度はBCBのほうがだいぶ上。
と、やはり一長一短のようで。 (´-`).oO(そのうちVCも買お
あとフリー版は無いけど、体験版(英語)アリ。
0774デフォルトの名無しさん
NGNGC Builder なんかメリット無いんだから使うのやめな。
0775デフォルトの名無しさん
NGNG0776デフォルトの名無しさん
NGNGC言語初心者ならBuilderはオスメス。
ツール類が恐ろしく簡単に出来ますYO!
0777777
NGNGヽ(・ω・)ノ フォッフォッフォッ
. / /
ノ ̄ゝ
. (V)∧_∧(V)
ヽ( )ノ フォッフォッフォッフォッ
. / /
.......... ノ ̄ゝ
0778デフォルトの名無しさん
NGNGCマガジン9月号の記事を見てタスクトレイにアイコンを
表示することに挑戦しています。
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
//コンストラクタ部分でタスクトレイにアイコンを表示させる
NOTIFYICONDATA icn;
icn.cbSize = sizeof(NOTIFYICONDATA);
icn.hWnd = Handle;
icn.uID = 100;
icn.uFlags = NIF_MESSAGE | NIF_ICON | NIF_TIP;
icn.uCallbackMessage = WM_USER + 1;
lstrcpy(icn.szTip,"デスクトップメモ");
Shell_NotifyIcon(NIM_ADD, &icn);
}
雑誌の記事を読む限り、これだけを書いてアプリを実行すれば
タスクトレイにアイコンが表示されそうなんですが、実際は
何も表示されません。コンパイル&リンクもエラーなく出来ています。
何が悪いんでしょうか?
0779デフォルトの名無しさん
NGNGが足りないかも
0780778
NGNGおっしゃるとおりでした・・・・
本では
icn.hIcon = Icon->Handle;
となっていましたが。。。。。
Application->がなくても良いのはなぜなのか
疑問なんですが、これはもうちょい自力で考えてみます。
0781デフォルトの名無しさん
NGNG本のほうはフォームのIconプロパティのを使ってるんだろうけど、
要はアイコンのハンドル(HICON)を渡せばOK。
0782デフォルトの名無しさん
NGNGどうしたらいいでしょうか?
0783デフォルトの名無しさん
NGNG0784デフォルトの名無しさん
NGNG0785デフォルトの名無しさん
NGNGちょっとだけマジレスするが、コントラスト変換のアルゴリズムがわからないのか、
それともBCBで画像を扱う方法がわからないのか、どっちだ?
両方って答えは許さないぞ。それなら宿題スレに行け。
アルゴリズムがわからないなら画像処理スレに行け。
BCBがわからないなら、アルゴリズムを書いて改めて質問しろ。ココでいいぞ。
0786デフォルトの名無しさん
NGNGものすごく、基本的な事なのですが・・・
C言語を使ってBCBでソフト開発ってできますか?
また、C言語でソフト開発ができるなら、C++覚える必要ないですか?
0787デフォルトの名無しさん
NGNGでも、BCBを使わないでもBCCでもgccでもC言語の開発はできる。
C++覚える必要は、用途による。
Cの処理系で簡単にGUIアプリを作りたいなら、BCBを使いながらC++を覚えるのがよさげ。
0788デフォルトの名無しさん
NGNGえっと、GUIアプリを作りたいのですが・・・
やっぱり、GUIアプリ作りたかったらC++覚える必要ありますか・・・?
0789デフォルトの名無しさん
NGNGDelphiでもVCでもVBでもHSPでもなんでも、選択肢は沢山ある。
>Cの処理系で簡単にGUIアプリを作りたいなら、BCBを使いながらC++を覚えるのがよさげ。
っつーことですわ。BCBでCだけでGUIを作るのは、ちとキツイ。
0790デフォルトの名無しさん
NGNGMFCとかVCLはC++のクラスを使っているので、C++を覚えた方が幸せ。
特にBCBはVCLにアクセスするために、複雑怪奇な方法を取っており、
それはC++からでないと使えないものが多い。
0791デフォルトの名無しさん
NGNGC++のキホソみたいなのが身につきにくいかも。
GUIアプリがそれっぽく動けばいいやー、ってなら気にする必要はないけど、
ちゃんとC++のキホソを覚えたいなら、MFCを使わないVCがいいかもね。
ただ、道のりは長いけど。
0792デフォルトの名無しさん
NGNGレスありがとうございます。
う〜ん、どの道通ってもC++は覚えないとだめなんですね〜・・・
BCB買ってきて、触りながらC++覚えることにします。
本当、長い道のりっぽいですね〜・・・(汗
がんばってみます!
0793デフォルトの名無しさん
NGNGCがわかってるならC++のさわりは難しくない。
とりあえずアプリできました程度なら簡単。
Delphi、VBやAppleScriptを新規に学ぶわけではないから最初の敷居は低い。
ガンバレ!
0794デフォルトの名無しさん
NGNGとりあえずクラスについて勉強して
VCLのコンポーネントはクラスだと思って使う程度で
いいと思ふ
0795デフォルトの名無しさん
NGNGC++Builder、通販とかで売ってるサイトってありませんか?
俺ん所田舎で、VCしかないっす・・・・・
アマゾンにもないし、アマゾンしか知らないし・・・・・
どこか、信用の置ける通販サイトないですか・・・・・?
情けない質問で申し訳ないっす。
0797デフォルトの名無しさん
NGNGhttp://www.kakaku.com/sku/price/030013.htm
0798デフォルトの名無しさん
NGNG継承と多態をきちんと理解できればVCLを使うのは難しくない。
0799デフォルトの名無しさん
NGNG0800デフォルトの名無しさん
NGNG逆もまた真也sage
で 800
0801デフォルトの名無しさん
NGNG800オメ
0802デフォルトの名無しさん
NGNG技術評論社「すぐわかるC++Builder」塚越一雄著
と合わせて勉強すると1週間くらいでBCB使いになれるよ。
(BCB使い=BCBに使われている段階を越えた状態)
0803デフォルトの名無しさん
NGNGVCL の場合だと IDE でフォームを作成し、イベントハンドラを生成してコードを
書くだけだと VB の C言語版のような感じで使えると思う。
ヘルプでコンポーネントの使い方を調べながら小規模なプログラムを作るぐらい
なら C++ の勉強をそれほどしなくても使える程度にはなると思う。
MFC の場合だとビュークラスとかドキュメントクラスを派生して作ることが
前提になっていて C++ の知識が(VCLより多く)いるし、フレームワークとしての
決まりごとも多く、勉強に要する時間が長くなる。
0804デフォルトの名無しさん
NGNG同じソースをコンパイルしてみて、BCCの方が3%ほど実行速度が速かったから。
最適化については、はいろいろ試行錯誤して最善値の比較です。
0805デフォルトの名無しさん
NGNGサンプルプログラムの、TextEdit とか RichEditをみなはれ。
SelAttributes
0806782
NGNGBCBでの画像の濃度値の取り出し方を教えて下さい。
0807デフォルトの名無しさん
NGNGTColor c=bg->Canvas->Pixels[x][y];
で(x,y)座標のピクセルの色を取り出せる。
もっと高速に処理したいなら以下の方法を使う。
void f(Graphics::TBitmap* bg)
{
for(int k=0;k<bg->Height;k++)
{
Byte* line=(Byte*)bg->ScanLine[k];
int i,j;
for(i=0;i<bg->Width;i++)
{
j=i*3;
Byte blue=line[j];
Byte green=line[j+1];
Byte red=line[j+2];
}
}
}
この例はビットマップの形式に依存するので注意
Graphics::TBitmap* bg=new Graphics::TBitmap();
bg->HandleType=bmDIB;
bg->PixelFormat=pf24bit;
0808デフォルトの名無しさん
NGNG0809デフォルトの名無しさん
NGNG弊社サポートまでどうぞ
 ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄
∧_∧ ニヤニヤ
( ・∀・)
( ) トウゼン 有償サポートダカラナ
| 某|
(__)_)
0810デフォルトの名無しさん
NGNG対象フォームのcppファイルに
__fastcall TForm1::~TForm1()
{
//処理
};
と書いたら、
[C エラー] Form.cpp(42): E2171 関数 '_fastcall TForm1::~TForm1()' の本体はすでに定義されている
と怒られたので、ヘッダーファイルに
class TForm1 : public TForm
{
public:// ユーザー宣言
__fastcall TForm1(TComponent* Owner);
__fastcall ~TForm1();
};
と1行付け加えたら無事コンパイルも通りました。
しかし、どうも処理が行われていないようなので
ブレイクポイントを仕掛けてもとまってくれません。
他の部分(コンストラクタとか)ではブレイクポイントが
きちんと動作しているので、何がなんだかさっぱりわかりません。
0811デフォルトの名無しさん
NGNG0812810
NGNGスンマソン。実は自分>>778なんですが
アプリのメインフォームが非表示なやつなんで
Ctrl + F2で終了させてました。
これだとデストラクタの処理が走らないようです。
一時的にフォームを表示させて、右上×ボタンとかで
終了させたらきちんと動作していました。
#そーいうことはきちんと書いておけっ!!>Cマガ
0813virtual
NGNGそりゃたんにフォームのインスタンスが破棄されていないからデストラクタが実行されてないだけじゃ・・・
>#そーいうことはきちんと書いておけっ!!>Cマガ
強制的に終了するとデストラクタが走らないと書けと文句をいっているのか?そりゃさすがに酷かと.
0814デフォルトの名無しさん
NGNG0815デフォルトの名無しさん
NGNGエクスプローラーで実装されている右クリックによるドラッグアンドドロップを
私のアプリケーションで実装したいのですが、
builderのサンプルは左クリックを前提としたものが多く、
右クリックドラッグアンドドロップの定石がよくわかりません。
OnDown イベントハンドラで BeginDrag を記述すると、
(1)リストビューの項目の上で右クリックでポップアップメニューを出し
(2)メニューを出したまま別の項目で右クリックによるドラッグ&ドロップ
を行うと、(2) のドラッグ中のアイテムが選択状態になりません。
と、色々問題がありまして、もし定石がありましたら知りたいと思っております。
ご存知の方いらっしゃいましたら、よろしくお願いします。
0818デフォルトの名無しさん
NGNGどうしても、関数のリファレンスがないと不便です・・・。
そこで、C++Builderを買おうと思うのですが・・・
C++Builderのコンパイラは、bcc32と同じ関数が使えますか?
それと、もし使えるならbcc32関数のリファレンスとかありますか?
0819デフォルトの名無しさん
NGNGBuilderのコンパイラはbcc32そのもの、ライブラリも同じ
ただしBuilder6はbcc5.6でStlportを使っている。
5.5のRogue Waveも使えるし、基本的には何も違いはないが一応。
それから5.5のリファレンスだけなら英語版がUSサイトからダウンロードできる
0820デフォルトの名無しさん
NGNGそうですか!
では、C++Builderを買う事にします
ありがとうございました
0821デフォルトの名無しさん
NGNG0822デフォルトの名無しさん
NGNG0823デフォルトの名無しさん
NGNG0824デフォルトの名無しさん
NGNGVCL使わないのは全部bcc 5.5.1でビルドしてたりする‥‥
0825デフォルトの名無しさん
NGNGbcc 5.6.1 をなぜ使わない?
0826デフォルトの名無しさん
NGNGどこにあるの?
0827デフォルトの名無しさん
NGNG0828デフォルトの名無しさん
NGNGC++Builder入れたら、bcc5.6にパスが通ってるよ。
コマンドラインなどで、bcc32とだけ打ってバージョンを確かめるがよろし。
0829デフォルトの名無しさん
NGNG0830デフォルトの名無しさん
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の方がマシ。どちらも実際にはやらない方がいいけど)
0930デフォルトの名無しさん
NGNGTCanvas から TMyCanvas を作って、メンバ関数 Line を追加
TPaintBox から、TMyPaintBox を作って、プロパティ Canvas の型を TMyCanvas* に変更
PaintBox1 の型を TMyPaintBoxに
ってとこかな。そこまでやれば、
PaintBox1->Canvas->Line(10,10,20,20)
できる。
クラスの勉強としては、勧められることじゃないとは思うけど
0931912
NGNGヘッダ部
class DrawGraph
{
private:
int tatehaba;
int yokohaba;
int number_of_block_y;
int number_of_block_x;
int x0;
int y0;
public:
void __fastcall Execute(TPaintBox *PB);
void __fastcall SetValue(int Height,int Width,int HeightBlockNumber,int WidthBlockNumberint,int DrawStartX,int DrawStartY);
};
0932912
NGNGメイン部
void __fastcall TForm1::PaintBox1Paint(TObject *Sender)
{
DrawGraph *DG = new DrawGraph;
DG->SetValue(50,50,10,10,10,10);
DG->Execute(PaintBox1);
}
//---------------------------------------------------------------------------
void __fastcall DrawGraph::Execute(TPaintBox *PB)
{
for(int i=0;i<=number_of_block_x;i++) //横軸グラフ描写
{
PB->Canvas->MoveTo(x0,y0+tatehaba*i);
PB->Canvas->LineTo(x0+yokohaba*number_of_block_y,y0+tatehaba*i);
}
for(int i=0;i<=number_of_block_y;i++) //縦軸グラフ描写
{
PB->Canvas->MoveTo(x0+yokohaba*i,y0);
PB->Canvas->LineTo(x0+yokohaba*i,y0+tatehaba*number_of_block_x);
}
}
//---------------------------------------------------------------------------
0933912
NGNG{
tatehaba=Height;
yokohaba=Width;
number_of_block_y=HeightBlockNumber;
number_of_block_x=WidthBlockNumber;
x0=DrawStartX;
y0=DrawStartY;
}
//---------------------------------------------------------------------------
というプログラムに落ち着きました。SetValueメソッドは、公開メンバ変数にして、直接代入してもよかったのですが、いちいちアロー演算子書くのが
面倒くさいので、こっちにしてみました。皆様の「継承もしてねぇし、クラスじゃなくていいじゃん!」という声が聞こえてきそうです。なにせ、厨房なもので・・・・。もっとかっこいい方法がありましたら、ご教授お願いいたします。
私から、話題に上っていたBuilder標準のエディタの使い勝手ですが、xkeymacsというソフトを使う事で、Emacsの操作性を補助に、結構使い勝手が向上します。ぜひ、トライしてみてください!
0934デフォルトの名無しさん
NGNGあのおいしそうな物を活用したいから、今この開発ツールを学習してるところだ。
実際に使ってる人に聞きたいが、やっぱりこれでWindowsアプリを作るのはおいしいかな。
0935デフォルトの名無しさん
NGNG本格的なプログラムならMFCの方が10倍情報量が豊富
0936デフォルトの名無しさん
NGNG0937デフォルトの名無しさん
NGNGたぶん100倍速い
0938デフォルトの名無しさん
NGNG同じアルゴリズムで初期化をinflateInitにしたときは問題ないのだけど、
inflateInit2にするとかなりリークが報告されます。
これってSTLの時みたいなCodeGuardの誤爆?
0939デフォルトの名無しさん
NGNGC++Builder常用のため、パソコンをCeleron 1GHzからPen4 2.53GHzに
グレードアップしました。
それでもまだコンパイル速度は遅いです。ちょっとコードを変更して
メイクする度に一瞬息をつきます。
コンパイルってコンピュータの一番重い処理の一つのようです。
0940デフォルトの名無しさん
NGNG0941デフォルトの名無しさん
NGNGそこまでくると、ディスクアクセスが遅いんじゃないの?
0942941
NGNG0943デフォルトの名無しさん
NGNGIBM Deskstar120GXP(AVVA120GB)使ってます。
これで遅いとなると、もうRAID組むしかないのでしょうか(;´д`)トホホ・・・
0944Delフサギコ ◆A6VzDeLphI
NGNG.∧∧ 再開したのに連絡もないぞゴルァ
,.、ミ,,゚Д゚彡 /i
;'`;、. :,.:∪`゙:゙:`''':,'.´ -‐i
'、;:.: .、.:',.: .:: _;.;. :.‐'゙゙~  ̄
`` U U よく、こんなひどいML運営で
誰も文句いわないもんだ...
何?このDFreeって?
0945デフォルトの名無しさん
NGNG再登録ぐらいやってくれよとは思ったけどな。
0946Delフサギコ ◆A6VzDeLphI
NGNGミ ゚Д゚彡 そろ〜と、逃げてみますた。
,," ⊃,,つ
〜(,,,"⌒ヽ
( ( )ノ' '`J
0947デフォルトの名無しさん
NGNG初心者用のホームページもないし、泣きそう。
VC.NETの方がよかったのかなぁ。うわーん。
0948げるるん ◆UaSHERPAhE
NGNGカットシステムの本は凄く(・∀・)イイ!
BCB4の時に凄く世話になった。
今はBCB6のが出ている。推奨します。
ttp://www.cutt.co.jp/book/4-87783-061-8.html
あと、↓も参考にせよ
ttp://www.borland.co.jp/bookinfo/cppbuild.html
0949bloom
NGNGhttp://homepage.mac.com/leverage/
0950デフォルトの名無しさん
NGNGここら辺の考えがあっての事じゃないの?
おれは、所詮使わせてもらっている身という考えでいますんで
あんまり気にならないけど・・・・
−−−−−−−−−−−−−−−−−−−−
作業が終わって、登録できるようになりましたが、
DNSが行き渡っていないため、投稿できないので
ここのコメントにしておきます。m(__)m
#月曜日に発表かな?
#土曜日にDNS引けているかな?
0951デフォルトの名無しさん
NGNGカットシステムの本見てきました!すごくよさそうですた!
でも、激しく高いですね(;´Д`)vol.1だけで約5000ペソか〜
立ち読みしようかな・・・w
0952げるるん ◆UaSHERPAhE
NGNG確かに高い
BCB4のVol.1は\3,800.-ですた。
ページ数も多かったし。
内容の比較は未だしていないが、6でコンポーネントが増えたのに何故?と思った。
ttp://www.cutt.co.jp/book/4-87783-009-X.html
0953デフォルトの名無しさん
NGNG/∵∴∵∴\
/∵∴∵∴∵∴\
/∵∴∴,(・)(・)∴|
|∵∵/ ○ \|
|∵ / 三 | 三 | / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
|∵ | __|__ | < >>1 C Builderって何
\| \_/ / \_________________
\____/
______.ノ (⌒)
//::::::::|-、 ,-/::::::ノ ~.レ-r┐
/ /:::::::::::| /:::::ノ__ | .| ト、
| /:::::::::::::::| 〈 ̄ `-Lλ_レ′
レ::::::::::::::::::|/::: ̄`ー‐---‐′
0954デフォルトの名無しさん
NGNG0955デフォルトの名無しさん
NGNGそのままGoogleで検索してみろ、叔母加算。
0956デフォルトの名無しさん
NGNG0957デフォルトの名無しさん
NGNG鯖に接続した後でアプリを終了したら
EIdNotConnectedクラスの例外かEIdClosedSocket例外が生成されるんだけどさ。
なんか解決方法ないっすか?
0958デフォルトの名無しさん
NGNG0959デフォルトの名無しさん
NGNG単純にCloseしたソケットになんか送ろうとしてんじゃねぇの?
0960@_@
NGNG0961デフォルトの名無しさん
NGNG0962デフォルトの名無しさん
NGNG0963デフォルトの名無しさん
NGNG0964デフォルトの名無しさん
NGNGFindDialogを設置して、ダブルクリックでコードエディタを開くと本にあるんですが、
ダブルクリックすると、おもいっきり検索ウインドウが開きます・・・。
ダブルクリック以外に、コードエディタで開くにはどうすればいいですか?
0965デフォルトの名無しさん
NGNG0966デフォルトの名無しさん
NGNGありがとうございます。
イベントタグに切り替えて、OnFindって所ダブルクリックしたら開けました。
かなり初歩な質問に答えてもらって、ありがとうございます。
0967デフォルトの名無しさん
NGNG0968デフォルトの名無しさん
NGNG0969デフォルトの名無しさん
NGNG俺もObject Pascalをいじくるのはどうも肌に合わなかった。
ただ、残念ながらVCLがC++で書かれてない事がひっかかる。
0970デフォルトの名無しさん
NGNGだから SP1 はないんだってば。
現在 SP3 作成中。今すぐ必要なら SP2 を使え。ってば。
0971デフォルトの名無しさん
NGNGTOpenDialogにて、表示メニューを詳細に設定するにはどうしたら良いのでしょうか。
TListViewなら、ViewStyle=vsReport;にすればOKでしたが、TOpenDialogにはViewStyleがありませんでした。
よろしくおねがいします。
0972Delフサギコ ◆A6VzDeLphI
NGNG[Delphi:46188] Re: OpenDialog の状態設定
0973デフォルトの名無しさん
NGNGありがとうございます。
簡単にはできないようですね。(涙
0974デフォルトの名無しさん
NGNGどちらも似たようなメソッドがあるので、よくわかりません。
0975デフォルトの名無しさん
NGNGそうじゃないならfstreamでいいんじゃない?
0976デルファイの名無しさん
NGNG一方TFileStreamはVCL独自。
ですから、どちらでもいいときはfstreamを使っておけば後々他の環境に移行する時も楽と思います。
一方、コンポーネントをストリーミングしたり、TMemoryStreamなどとの間で中身をコピーするなど、
VCL特有の機能が必要な時は、TFileStreamを使うしかありません。
0977デフォルトの名無しさん
NGNGなるほど、VCLと連動させるかどうかがミソなのですね。今コンポーネント
のストリーミングという所を演習しているのですが、これはTFileStreamで
ないといかんみたいですね。
どうもありがとうございました。
0978デフォルトの名無しさん
NGNGそしたらこうします。
fstream(標準ライブラリ)で済ませられる所はfstreamで書く。それ以外の
VCL特有のファイルアクセスにはTFileStreamを使う。というように。
0979デフォルトの名無しさん
NGNGいいでしょうか?
フォームのコンストラクタはOnCreate()ではなくTForm::TForm()を使用する
ようにヘルプには書かれているのですが。
0980デフォルトの名無しさん
NGNG0981デフォルトの名無しさん
NGNG0982デフォルトの名無しさん
NGNG0983デフォルトの名無しさん
NGNGする以外に方法はありますでしょうか?
Delphiの{$R resourcefile} のようなものがあればいいのですが。
0984デフォルトの名無しさん
NGNG#pragma resource "resourcefile" とすれば、Delphiの$Rと同様の効果を
得ることができました。
0985デフォルトの名無しさん
NGNGところで、BCB6のSP2ってのはどこにあるの?
0986デフォルトの名無しさん
NGNG0987誘導
NGNGhttp://pc3.2ch.net/test/read.cgi/tech/1035596146/
0988デフォルトの名無しさん
NGNG乙
レス数が950を超えています。1000を超えると書き込みができなくなります。