C++Builder相談室 Part13

このエントリーをはてなブックマークに追加
404デフォルトの名無しさん
TImageに半透明で描画したいのですがどのようにしたらよいのでしょうか?
405デフォルトの名無しさん:2005/04/08(金) 17:20:36
Alpha が透過度になります(1.0 で100%コピー、0.5 で50%コピー)。
http://members3.jcom.home.ne.jp/jellyjam/pages/Del/graph.html
406デフォルトの名無しさん:2005/04/08(金) 17:23:58
void AlphaDraw(int X,int Y, //{描画先座標}
Graphics::TBitmap *Bmp1,
Graphics::TBitmap *Bmp2, //{ビットマップ}
float Alpha, //{透過度}
TColor TransParentColor) //{背景色(完全透過します)}
{
407デフォルトの名無しさん:2005/04/08(金) 17:58:13
>>405-406
アルファ処理ごときで浮動小数点演算使うことはないだろうに‥‥
408デフォルトの名無しさん:2005/04/08(金) 18:08:00
例も出せない厨房はレスするなよ
409デフォルトの名無しさん:2005/04/08(金) 18:34:15
void AlphaDraw(int X,int Y, //{描画先座標}
Graphics::TBitmap *Bmp1,
Graphics::TBitmap *Bmp2, //{ビットマップ}
float Alpha, //{透過度}
TColor TransParentColor) //{背景色(完全透過します)}
{

int i, j, k, v, z;
TRect Rect1, Rect2, Rect3;
//Pnt1, Pnt2 : PRGBArray;
Byte *Pnt1, *Pnt2; // scanlines
float Alp;

Bmp1->PixelFormat = pf24bit;
Bmp2->PixelFormat = pf24bit;

//半透明コピー開始

//コピー領域をキャッチ
Rect1 = Rect(0, 0, Bmp2->Width, Bmp2->Height);
OffsetRect(Rect1, X, Y);
410デフォルトの名無しさん:2005/04/08(金) 18:41:58
第47章
画像の合成処理
http://www.cutt.co.jp/book/4-87783-124-X.html
47-9
アルファブレンド(1)

47-10
アルファブレンド(2)

47-11
ウォーターマーク設定

47-12
電子透かし

47-13
隠し絵
411デフォルトの名無しさん:2005/04/08(金) 18:42:14
コピペ野郎か
412デフォルトの名無しさん:2005/04/08(金) 18:46:09
折れは安いブレンド米でいいです
413デフォルトの名無しさん:2005/04/08(金) 19:02:55
 
414デフォルトの名無しさん:2005/04/08(金) 19:24:14
mov esi,p1 mov edi,p2 mov ebx,p3 mov edx,p4 mov ecx,len
L1700:
pxor mm1,mm1 pcmpeqb mm4,mm4 movq mm5,[esi] movq mm7,[edi] mov eax,[edx] or eax,[edx+4]
jnz @L1710 movq mm0,mm5 jmp L1720
L1710:
movq mm6,[edx] psubusb mm4,mm6 movq mm0,mm5 movq mm2,mm7 punpcklbw mm0,mm1 punpcklbw mm2,mm1
movq mm3,mm4 punpcklbw mm3,mm1 pmullw mm0,mm3 movq mm3,mm6 punpcklbw mm3,mm1 pmullw mm2,mm3
paddusb mm0,mm2 psrlw mm0,8 packuswb mm0,mm1 punpckhbw mm5,mm1 punpckhbw mm7,mm4
movq mm3,mm4 punpckhbw mm3,mm1 pmullw mm5,mm3 movq mm3,mm6 punpckhbw mm3,mm1 pmullw mm7,mm3
paddusb mm7,mm5 psrlw mm7,8 packuswb mm1,mm7 por mm0,mm1
L1720:
add edi,8 add esi,8 movq [ebx],mm0 add ebx,8 add edx,8 loop L1700
ってな感じ。
415デフォルトの名無しさん:2005/04/08(金) 19:24:49
>>414
うざっ
416デフォルトの名無しさん:2005/04/08(金) 19:32:37
 
417デフォルトの名無しさん:2005/04/08(金) 20:18:16
ptr: 出力先
optr: 前景
bg: 背景
mptr: マスク画像

*ptr = (((*optr-*bg)*(*mptr+1))>>8)+*bg;


418デフォルトの名無しさん:2005/04/08(金) 20:24:46
417 :デフォルトの名無しさん :2005/04/08(金) 20:18:16

ptr: 出力先
optr: 前景
bg: 背景
mptr: マスク画像

*ptr = (((*optr-*bg)*(*mptr+1))>>8)+*bg;
419デフォルトの名無しさん:2005/04/08(金) 21:25:04
 
420デフォルトの名無しさん:2005/04/08(金) 22:08:11
 
421デフォルトの名無しさん:2005/04/08(金) 22:28:34
 
422デフォルトの名無しさん:2005/04/08(金) 23:26:16
 
423デフォルトの名無しさん:2005/04/09(土) 00:43:59
424デフォルトの名無しさん:2005/04/09(土) 10:06:22
 
425デフォルトの名無しさん:2005/04/09(土) 10:30:54
>>414はどうなるの?
426デフォルトの名無しさん:2005/04/09(土) 10:37:18
http://forum.nifty.com/fdelphi/samples/00827.html
//----------------------------------------
----------------------------------- //
ここから C++Builder ユーザー用です void DrawTranslucent(TCanvas *Canvas, int x, int y, Graphics::TGraphic *Graphic) { int w = Graphic->Width; int h = Graphic->Height;
427デフォルトの名無しさん:2005/04/09(土) 14:16:47
 
428デフォルトの名無しさん:2005/04/09(土) 17:25:22
 
429デフォルトの名無しさん:2005/04/09(土) 18:14:03
 
430デフォルトの名無しさん:2005/04/09(土) 18:16:22
誰だよ空上げする奴は?キショなぁ
431デフォルトの名無しさん:2005/04/09(土) 18:58:45
http://www.interq.or.jp/moonstone/person/del/halfdraw03.htm
void DrawTrans(int x, int y,Graphics::TBitmap *HalfCanvas,Graphics::TBitmap *HalfBmp)
{

int ix,jy,Gw,Gh;

Graphics::TBitmap *CanVasBmp;
Graphics::TBitmap *PutBmp;

Gw = HalfBmp->Width;
Gh = HalfBmp->Height;

//Gw = 100;
//Gh = 100;
432デフォルトの名無しさん:2005/04/09(土) 19:00:40
http://members3.jcom.home.ne.jp/jellyjam/pages/Del/graph.html
void AlphaDraw(int X,int Y, //{描画先座標}
Graphics::TBitmap *Bmp1,
Graphics::TBitmap *Bmp2, //{ビットマップ}
float Alpha, //{透過度}
TColor TransParentColor) //{背景色(完全透過します)}
{

int i, j, k, v, z;
TRect Rect1, Rect2, Rect3;
//Pnt1, Pnt2 : PRGBArray;
Byte *Pnt1, *Pnt2; // scanlines
float Alp;

Bmp1->PixelFormat = pf24bit;
Bmp2->PixelFormat = pf24bit;

//半透明コピー開始

//コピー領域をキャッチ
Rect1 = Rect(0, 0, Bmp2->Width, Bmp2->Height);
OffsetRect(Rect1, X, Y);
433デフォルトの名無しさん:2005/04/09(土) 23:08:06
デバッグカーネルBORDBK61.DLLが存在しないか登録されていません

というエラーが出るのだけれど、再インストールしてみても解決しないのですが、どうしたらよいのでしょうか?
C++builder6 Update4 + WinXP Home SP2です。
434396:2005/04/10(日) 02:17:41
>403
色々と調べなおしているうちにレスが遅くなってすみませんでしたm(_ _)m

>使い終わったインターフェースはReleaseしないといけない。
このへんが全く解っていませんでした。改めてBCBのヘルプを見ると>401さんの
ご指摘は参照カウンタの事を言っていると思うのですが、BCBのヘルプを見ても
微妙に解りませんでした(^^;  COM関係の本を買って調べてみようと思います。

また質問させて頂くかもしれませんが、その時はよろしくお願い致します。

改めまして、>400さん、>401さん ありがとうございましたm(_ _)m
435デフォルトの名無しさん:2005/04/10(日) 13:37:44
 
436デフォルトの名無しさん:2005/04/10(日) 21:54:00
437デフォルトの名無しさん:2005/04/10(日) 22:35:13
>>433
BCB6+Update4+WinXP Pro SP2だけど、そんなファイルないぞ。
438デフォルトの名無しさん:2005/04/10(日) 22:52:18
>>433
CDのInstall.rtf (.txt) に解決方法らしきものが載っとる
439デフォルトの名無しさん:2005/04/10(日) 22:53:27
あいやBCBをインストールしたフォルダにもあるか
440デフォルトの名無しさん:2005/04/10(日) 22:56:15
BORDBK61.EXEならBINフォルダにあるね。
441デフォルトの名無しさん:2005/04/10(日) 23:03:47
regsvr32で登録するのか・・・
442デフォルトの名無しさん:2005/04/11(月) 13:43:35
いつBCB10でんだこのやろう
443デフォルトの名無しさん:2005/04/11(月) 14:34:58
一生待ってろハゲちゃびん
444デフォルトの名無しさん:2005/04/11(月) 14:58:24
http://members3.jcom.home.ne.jp/jellyjam/pages/Del/graph.html
void AlphaDraw(int X,int Y, //{描画先座標}
Graphics::TBitmap *Bmp1,
Graphics::TBitmap *Bmp2, //{ビットマップ}
float Alpha, //{透過度}
TColor TransParentColor) //{背景色(完全透過します)}
{

int i, j, k, v, z;
TRect Rect1, Rect2, Rect3;
//Pnt1, Pnt2 : PRGBArray;
Byte *Pnt1, *Pnt2; // scanlines
float Alp;

Bmp1->PixelFormat = pf24bit;
Bmp2->PixelFormat = pf24bit;

//半透明コピー開始

//コピー領域をキャッチ
Rect1 = Rect(0, 0, Bmp2->Width, Bmp2->Height);
OffsetRect(Rect1, X, Y);
445zaq3d2e7fc0.zaq.ne.jp:2005/04/11(月) 15:37:20
えぇけっしとるのぉ(*´Д`)ハァハァ


うはっwwwおkwwwうえっwww??
446デフォルトの名無しさん:2005/04/11(月) 15:59:27
コピペだったり中途半端なコードだったり空行だったりの、変なageレスはマジで何なん?
447デフォルトの名無しさん:2005/04/11(月) 16:18:45
別に
448デフォルトの名無しさん:2005/04/11(月) 16:36:15
池沼が住み着いた
449デフォルトの名無しさん:2005/04/11(月) 16:48:48
>>448
池沼はレスしないで荒れるから
450デフォルトの名無しさん:2005/04/11(月) 16:55:07
(^^
451デフォルトの名無しさん:2005/04/11(月) 18:32:33
452デフォルトの名無しさん:2005/04/11(月) 23:55:40
BORDBK61.DLLは何かデータベースと関係ありそうですが
453デフォルトの名無しさん:2005/04/12(火) 17:13:36
このようなコードで、
char tmpbuf[255];
memcpy(&tmpbuf[0],"ABCD",4);
tmpbuf[4] = "1";

tmpbufをAnsiString型に換えた場合の添字の指定方法がわかりません。
どう書いたらいいのでしょうか?
454デフォルトの名無しさん:2005/04/12(火) 17:18:34
 
455デフォルトの名無しさん:2005/04/12(火) 17:27:08
tmpbuf[4] = "1";
これ普通に
tmpbuf[4] = '1';
こうじゃないとエラーでそう
456デフォルトの名無しさん:2005/04/12(火) 18:40:44
>>453
AnsiString::operator[]は1始まりなので
 AnsiString asbuf = "ABCD";
 asbuf.SetLength( 256 );
 asbuf[5] = '1';

ただ普通はこういう使い方はしないでしょ。
 AnsiString str = "ABCD";
 str += '1';
これで十分。
457デフォルトの名無しさん:2005/04/12(火) 18:48:09
>>456

> これで十分。

Dat's COOL.
458デフォルトの名無しさん:2005/04/12(火) 19:06:11
AnsiStringなら
str += '1';
は、むしろ
str += "1";
459デフォルトの名無しさん:2005/04/12(火) 23:58:21
以下の手順で実行するとエラーが出ます。

(1) TColorBoxで「カスタムカラー」を選択し色選択ダイアログを表示させる。
(2)「作成した色」において、作成していない色を選択し、OKボタンを押下する。
(3) エラーが表示される(リストのインデックスが範囲を超えました云々…)。

以上のエラーをどうやって回避したら良いか困っています。
どなたかアドバイスを下さい。
460デフォルトの名無しさん:2005/04/13(水) 00:29:29
 
461デフォルトの名無しさん:2005/04/13(水) 06:24:52
nasmは使えますか?
462デフォルトの名無しさん:2005/04/13(水) 10:46:33
try
463デフォルトの名無しさん:2005/04/13(水) 13:13:43
>>459
VCLがバグっとるね。OnSelectに以下のように書いとけば回避できると思う。

void __fastcall TForm1::ColorBox1Select(TObject *Sender)
{
    if (ColorBox1->Style.Contains(cbCustomColor))
    {
        int color = ::SendMessage(ColorBox1->Handle, CB_GETITEMDATA, 0, 0);

        if (color == -1)
            ::SendMessage(ColorBox1->Handle, CB_SETITEMDATA, 0, 0);
    }
}
464459:2005/04/13(水) 14:53:21
>>461
nasm使えません…。

>>462
OnSelectにtry〜catch文を仕込んでやってみましたが、ダメでした。


>>463
できました!
やはりVCLのバグだったんですね…。
ありがとう御座います。助かりました。

余談ですが、
TColorDialogならあらかじめCustomColorsを設定しておけば良いのですが
TColorBoxだとCustomColorsってプロパティ無いんですよね。
そういう場合、SendMessage()で予め設定しておけるんでしょうか?
SendMessage()ってほとんど知らないので、学習しなきゃなぁ。
465デフォルトの名無しさん:2005/04/13(水) 15:11:48
>>464
CustomColorsの設定は残念ながら_。
TColorBoxの派生コンポを作って、PickCustomColorメソッドをオーバーライドすれば可能だけどね。

上のバグもこのメソッドをいじって根本的に解決できる。
(内部で作成してるColorDialogのColorが-1(未作成の色)を返したら、強制的に0(黒)にするとか無視するとか)

ソースがあるなら、TCustomColorBox.PickCustomColorのコードを見てみるといい。
466デフォルトの名無しさん:2005/04/14(木) 01:57:19
 
467デフォルトの名無しさん:2005/04/14(木) 17:08:08
あるファイルから別のファイルを見たときの相対的なディレクトリの位置はどのように取得すればよいのでしょうか?
468デフォルトの名無しさん:2005/04/14(木) 17:35:58
>>467
ExtractRelativePath
469本田:2005/04/14(木) 22:21:49
>>452
デバッグカーネル。
470デフォルトの名無しさん:2005/04/15(金) 02:35:27
Check1BoxのCheckedプロパティをいじっただけで、Check1Click(TObject *Sender)が実行されてしまうことはありうる?

FromCreateでレジストリから以前の状態をCheckedに読み込んだだけで、Check1Click(TObject *Sender)が実行されてしまうのだけど・・・
471デフォルトの名無しさん:2005/04/15(金) 02:45:03
>>470
ヘルプのTControl::OnClickを参照。
472デフォルトの名無しさん:2005/04/15(金) 11:39:12
>>471
ありがとう

チェックボックスの Checked プロパティの値が変更された場合
    
というわけですね。実行されるときとされないときがあったので、470を書き込んだ後さらに悩んでしまいました。
Checked プロパティがレジストリの値と同じ場合は=でbool値を代入してもonClickは実行されないということのようですね
473デフォルトの名無しさん:2005/04/15(金) 13:55:16
unsigned charをAnsiStringにつっこむにはどうキャストしたらいいですか?
474デフォルトの名無しさん:2005/04/15(金) 14:01:00
>>473
どう突っ込みたいのか書かないとわからん。
数字として入れたいならAnsiString::sprintf()とか
475デフォルトの名無しさん:2005/04/15(金) 14:58:00
うるせー
476デフォルトの名無しさん:2005/04/15(金) 17:41:54
AnsiStringに注意



文字列を扱うのにAnsiStringはとても便利ですが、気が付いた点を2つ。

(1)hoge[0]の扱い
C言語では

char hoge[] = "Nakajima";

と宣言したとき、hoge[1] には 'a' が入っています。
つまり0から始まっています。
しかし、

AnsiString hoge = "Nakajima";

と宣言したとき、hoge[1] には 'N' が入っています。
これはPascalと同じように1から始まっているのです。 Pascalで書かれたVCLを使っているからだ と思いますが、
C++Builderなんだからねぇ・・・
Cを使っていた人は注意して下さい。
477デフォルトの名無しさん:2005/04/15(金) 20:09:59
>>476
ObjectPascalの文字列型互換だからしょうがない
478デフォルトの名無しさん:2005/04/16(土) 00:01:16
ひょっとしてM$にもGKっているのか? w
479デフォルトの名無しさん:2005/04/16(土) 03:37:07
ゴールキーパー?
480デフォルトの名無しさん:2005/04/16(土) 11:06:19
AnsiStringはhoge[1]ってアクセスできるのか?
いまBCBが手元にないので確かめられないのだが、
AnsiString hoge[5];
hoge[1]="Nakajima";
とした場合は、hoge[1][1]にNが入るってこと?
481デフォルトの名無しさん:2005/04/16(土) 12:38:18
>>480
その場合は
hoge[0][1]にNがはいるんじゃ
482デフォルトの名無しさん:2005/04/16(土) 13:12:09
>>481
何故?なにゆえ?
483デフォルトの名無しさん:2005/04/16(土) 14:25:42
480が正しい。
ただし正確には
 hoge[1][1]は
 hoge[1].operator[](1)と等価で戻値はchar&
484デフォルトの名無しさん:2005/04/16(土) 17:36:37
void __fastcall TForm1::FormCreate(TObject *Sender)
{

AnsiString hoge[5];
hoge[1]="ABC";

Caption = hoge[1][1];//A
Application->Title = hoge[1][3];//C

}
485デフォルトの名無しさん:2005/04/16(土) 18:15:23
How can I disable Ctrl + Alt + Del or Alt + Tab?
http://thunder.prohosting.com/~cbdn/k008.htm
http://thunder.prohosting.com/~cbdn/html.htm
Applies To: C++Builder 1 or higher
Category: Knowledge Base

1.
Start a new project using File | New Application.

2.
Edit the OnShow event:

void __fastcall TForm1::FormShow(TObject *Sender)
{
int result;
SystemParametersInfo(SPI_SCREENSAVERRUNNING, true, &result,
0);
}

3.
Edit the OnClose event:

void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction
&Action)
{
int result;
SystemParametersInfo(SPI_SCREENSAVERRUNNING, false, &result,
0);
}

As you already know, when a screen saver is running, the special Windows keys are disabled in order to prevent security problems. You can trick Windows into thinking that a screen saver is running.
486デフォルトの名無しさん:2005/04/16(土) 21:12:39
 
487デフォルトの名無しさん:2005/04/16(土) 22:32:48
http://pc8.2ch.net/test/read.cgi/tech/1108468718/404-

Alpha が透過度になります(1.0 で100%コピー、0.5 で50%コピー)。
http://members3.jcom.home.ne.jp/jellyjam/pages/Del/graph.html

void AlphaDraw(int X,int Y, //{描画先座標}
Graphics::TBitmap *Bmp1,
Graphics::TBitmap *Bmp2, //{ビットマップ}
float Alpha, //{透過度}
TColor TransParentColor) //{背景色(完全透過します)}
{

int i, j, k, v, z;
TRect Rect1, Rect2, Rect3;
//Pnt1, Pnt2 : PRGBArray;
Byte *Pnt1, *Pnt2; // scanlines
float Alp;

Bmp1->PixelFormat = pf24bit;
Bmp2->PixelFormat = pf24bit;

//半透明コピー開始

//コピー領域をキャッチ
Rect1 = Rect(0, 0, Bmp2->Width, Bmp2->Height);
OffsetRect(Rect1, X, Y);
488デフォルトの名無しさん:2005/04/17(日) 12:45:21
TServiceを使ったサービスアプリケーションからShellExecute()などで他のプロセスを
たちあげたいのですが、うまくいきません。TServiceは、ハンドルをもってないからなんでしょうか?
489デフォルトの名無しさん:2005/04/17(日) 12:52:20
意味不明
490デフォルトの名無しさん:2005/04/18(月) 02:42:36
TServiceApplication
491デフォルトの名無しさん:2005/04/18(月) 02:44:03
サービスアプリケーションウィザード
Windows NTのサービスを実装するアプリケーションを開発するために、
サー ビスアプリケーションを作成するウィザードが提供されます。
サービスアプリケ ーションのために、
TServiceApplicationクラスとTServiceクラスが用意され ており、
サービスの名前や種類、動作はオブジェクトインスペクタによって
定 義できます。
492デフォルトの名無しさん:2005/04/18(月) 12:05:37
TPanelのPopupMenuプロパティーにPopupMenu1を割り当ててんだけど
これって左クリでポップアップする方法教えれ。オブジェクトインスペクタの設定でな
パネルのクリイベで自分で呼び出すってのはイラン
493デフォルトの名無しさん:2005/04/18(月) 12:40:16
>>492
そんな方法はない
494デフォルトの名無しさん:2005/04/18(月) 13:23:31
>>492
お前がBCB使うの止めればいいよw
495デフォルトの名無しさん:2005/04/18(月) 18:52:48
なんだおまえらしらねーのかよ、つかえねーやつらだなおまえらって
496デフォルトの名無しさん:2005/04/18(月) 19:07:25
マウスの設定でボタンの左右を入れ替えたら完璧にできるお。
497デフォルトの名無しさん:2005/04/18(月) 19:54:19
BCB5ですが、リンクが5回に一回は失敗しフリーズしてしまいます。
何か対処方法はありますでしょうか。
498デフォルトの名無しさん:2005/04/18(月) 22:10:56
 
499デフォルトの名無しさん:2005/04/18(月) 23:30:59
 
500デフォルトの名無しさん:2005/04/19(火) 03:35:33
 
501デフォルトの名無しさん:2005/04/19(火) 09:15:25
>>495
知ってるがお前の態度が(ry
502デフォルトの名無しさん:2005/04/19(火) 13:52:59
ShareやnyのファイルリストみたいにListViewで
マウスボタンを押した状態でカーソルを移動させ
て範囲内の項目を全て選択状態にするにはどう
やったらできますか?BCB6Proです。
503デフォルトの名無しさん:2005/04/19(火) 14:47:23
MultiSelect じゃなくて?
504デフォルトの名無しさん:2005/04/19(火) 14:59:49
>>503
CtrlやSiftを押しながらではなくてマウスボタンを押しながら
カーソルを移動させるだけで破線の四角い枠が表示されて
範囲内の項目全てが選択状態になりますよね?
あれを実現したいのです。
505デフォルトの名無しさん:2005/04/19(火) 15:25:14
RowSelect
506デフォルトの名無しさん:2005/04/19(火) 19:41:57
VC6で作ったMFCのアプリケーションをBCB6でコンパイルするとafxres.hを開くことが出来ないと怒られます。
カーソル位置のファイルを開くで開いてみると、ちゃんとBCBがインストールされているディレクトリにあるみたいで、
インクルードのパスもMCFのディレクトリに通ってるみたいです。
何故エラーが出るのでしょうか。
FAQみたいな質問で申し訳ないです。
507デフォルトの名無しさん:2005/04/19(火) 19:44:42
上記で書き忘れたのですが、VC++プロジェクト変換ユーティリティで変換してMFC互換モードでコンパイルtしました。
宜しくお願いします。
508本田:2005/04/19(火) 23:51:14
>>507
そんなことよくあるんだけど、
私、BCB5PROを使ってるんだけど、
プロジェクトファイルをメイクファイルに変換して、
試行錯誤してメイクファイルを修正している。
509デフォルトの名無しさん:2005/04/20(水) 01:45:50
64ビットWindows対応のプログラムは作れるのでしょうか?
510& ◆FC4h7F/wV6 :2005/04/20(水) 02:34:19
>>506
#include "afxres.h"

#include <afxres.h>
にするとか。
511本田:2005/04/20(水) 02:35:52
510は私です。
>>509
BCB6では無理。
512デフォルトの名無しさん:2005/04/20(水) 03:11:52
>>509
Delphi2006またはDelphi2007をお待ちください。
513504:2005/04/20(水) 04:25:51
>>505
亀レスですがお騒がせしました
514デフォルトの名無しさん:2005/04/20(水) 16:33:44
C++Builder 6.0で開発してます。
TTreeViewのスクロールバーって消えないのでしょうか?

ShowScrollBarでやってみても一時的には消えるがやっぱり駄目
サイズ変更の微妙なサイズ変更(横スクロールバーが出る瞬間)
とかするとまた出てきてしまいます。

SetWindowLongでむりやりスタイル変更
ULONG lStyle = ::GetWindowLong( TreeView1->Handle, GWL_STYLE);
lStyle ^= WS_VSCROLL;
::SetWindowLong( TreeView1->Handle , GWL_STYLE, lStyle);
とかしても、駄目っぽいです。
どなたか御存じないでしょうか?


515デフォルトの名無しさん:2005/04/20(水) 19:15:55
>>508
そうなのですか・・・

>>510
それも試してみたのですが、やっぱり駄目でした。

アドバイスありがとうございました。
色々試してみます。
516デフォルトの名無しさん:2005/04/20(水) 21:56:51
コーディング規約

public 宣言と private 宣言

グローバル
g
gstrUserName

モジュールレベル
m
mblnCalcInProgress

プロシージャ内
なし
dblVelocity
517デフォルトの名無しさん:2005/04/21(木) 12:37:23
すみません、質問です。
Borland C++Builderのチュートリアルをやっていてつまってしまいました…

2:フォーム上の ActionManager1 を選択し,オブジェクトインスペクタで
Images プロパティに ImageList1 を設定します。

とあるのですが、ImageList1と言うものがプルダウンに表示されません
入力しても駄目です…

これは、環境の設定とかが悪いのでしょうか?

Borland C++Builder Professional Version6.0[Build10.166] を使用しています。

どなたか教えて下さい
宜しくお願いします。
518デフォルトの名無しさん:2005/04/21(木) 12:49:33
>>517
フォーム上にTImageListコンポーネント置いてあるか?
519517:2005/04/21(木) 13:00:36
>>518
やってしまいました・・・置いてませんでした_| ̄|○

申し訳ありませんうまく行きました有り難うございます。
これからも精進致します…
520デフォルトの名無しさん:2005/04/21(木) 13:42:05
TMemoコンポーネントに13Mのテキストファイルを
LoadFromFileしたいのですが160000行もあり、読
み込みに20秒ぐらい掛かってしまいます。
ListViewのようにMemoもOwnerDataのような事が
可能でしょうか?また、できるならどのようにすれ
ば実現できますか?
521デフォルトの名無しさん:2005/04/21(木) 13:48:51
ん〜
522デフォルトの名無しさん:2005/04/21(木) 15:53:43
>>497
パソコンを買い換える。
523デフォルトの名無しさん:2005/04/21(木) 18:26:21
TForm3のコンストラクタに引数を追加して
__fastcall TForm3::TForm3(const int iFlg, TComponent* Owner) : TForm(Owner)
↓これで↑を呼ぶ場合にどうすればいいんでしょうか?
Application->CreateForm(__classid(TForm3), &Form3);
これで、
524デフォルトの名無しさん:2005/04/21(木) 22:04:52
ヘッダファイルの外側の「class 何々{〜};」の外側でexternを付けて(付けなくてもいい場合も ある)変数を宣言すると、プロジェクト内のどこからでも使うことができる
グローバルな変数になります。

プライベート変数ではなく、他のフォームからも使ってもらいたい変数は、同じくヘッダファイルの 中の「public:」のもとで宣言し
パブリック変数になります。

フォームに対応したユニット内のすべてのモジュール(関数)から使用できる 変数を、
『プライベート変数』と呼びます。

モジュール(関数)の中で宣言された変数は
『ローカル変数』 と呼ばれます。
525デフォルトの名無しさん:2005/04/21(木) 22:28:19
>>523
無理。普通にnewを使えばいい。
526デフォルトの名無しさん:2005/04/22(金) 01:25:54
>>514
スタイルにTVS_NOSCROLLを加える。
既にスクロールバーを持ってるやつを、SetWindowLongで変更する場合は、
変更後にShowScrollBarを呼ばないと消えない模様。
527デフォルトの名無しさん:2005/04/22(金) 10:39:13
 
528デフォルトの名無しさん:2005/04/22(金) 17:26:15
質問させていただきます。
C++Buirder5で開発中なのですが、
VBでいうMid関数と同じ役割とする関数ってC++Buirderにもありますか?
もしあるのであれば、教えてくださいm(_ _)m
529デフォルトの名無しさん:2005/04/22(金) 17:57:31
AnsiStringならSubStringメソッドかな?
530デフォルトの名無しさん:2005/04/22(金) 19:00:15
>>528
ヘルプ位見たんだろうな?
531デフォルトの名無しさん:2005/04/22(金) 19:23:19
いちいちヘルプ見れとかウザイ
532デフォルトの名無しさん:2005/04/22(金) 20:45:59
>>528

二回繰り返してるってことは素で間違えてるのか?

×Buirder
○Builder
533デフォルトの名無しさん:2005/04/23(土) 04:51:22
void __fastcall TForm1::FormCreate(TObject *Sender)
{

/*

Unit1.h
#include <StrUtils.hpp>

*/

//Unit1.cpp
AnsiString A = "XYZ";
AnsiString B = "わおん";

Caption = MidStr(A,3,1); //Z
Application->Title = MidStr(B,5,2); //ん

}

534デフォルトの名無しさん:2005/04/23(土) 04:53:14
ByteType メソッドは,AnsiString 内の指定された位置にあるバイトの種類を 示します。

enum TStringMbcsByteType { mbSingleByte, mbLeadByte, mbTrailByte };
TStringMbcsByteType __fastcall ByteType(int index) const;

説明

ByteType メソッドは,AnsiString 内の index(0 が最初)で示されたバイトの 位置にあるバイトの種類を示します。戻り値は以下のとおりです。

定数 意味

mbSingleByte 1 バイト文字
mbLeadByte マルチバイト文字の最初のバイト
mbTrailByte マルチバイト文字の最後のバイト

西洋諸国など一部のロケールではマルチバイト文字を使用しません。その場 合,ByteType は常に mbSingleByte を返します。
535デフォルトの名無しさん:2005/04/23(土) 05:34:56
void __fastcall TForm1::FormCreate(TObject *Sender)
{

/*

Unit1.h
#include <StrUtils.hpp>

*/

//Unit1.cpp
AnsiString A = "XYZ";
AnsiString B = "わおん";

Caption = MidStr(A,3,1); //Z

int intStart,intCount;
intStart = 3;
intCount = 1;

Application->Title = MidStr(B, (intStart * 2) - 1, intCount *2); //ん

//Application->Title = MidStr(B,5,2); //ん


}
//-------------------------------
536デフォルトの名無しさん:2005/04/23(土) 05:44:57
MidStr
MidStr
MidStr
MidStr
MidStr
MibStr
MidStr
MidStr
MidStr
MidStr
MidStr
MidStr
537デフォルトの名無しさん:2005/04/23(土) 07:38:51
LeftStr,RightStr,MidStrのいずれも、マルチバイト文字を
538デフォルトの名無しさん:2005/04/23(土) 09:59:18

void __fastcall TForm1::FormCreate(TObject *Sender)
{
/*

Unit1.h
#include <StrUtils.hpp>

*/

//Unit1.cpp
AnsiString A = "WXYZ";
AnsiString B = "富士山";

Caption = MidStr(A,3,1); //Y

int intStart,intCount;
intStart = 3;
intCount = 1;

//Application->Title = MidStr(B, (intStart * 2) - 1, intCount *2); //山

//Application->Title = MidStr(B,5,2); //山

StrLCopy(A.c_str(), B.c_str(), 4);
Application->Title = AnsiString(A); //富士

}
539デフォルトの名無しさん:2005/04/23(土) 10:03:08
void __fastcall TForm1::FormCreate(TObject *Sender)
{
/*

Unit1.h
#include <StrUtils.hpp>

*/

//Unit1.cpp
AnsiString A = "WXYZ";
AnsiString B = "富士山";

Caption = MidStr(A,3,1); //Y

int intStart,intCount;
intStart = 3;
intCount = 1;

//Application->Title = MidStr(B, (intStart * 2) - 1, intCount *2); //山

//Application->Title = MidStr(B,5,2); //山

Application->Title = StrLCopy(A.c_str(), B.c_str(), 6); //富士

}
540デフォルトの名無しさん:2005/04/23(土) 10:04:32

void __fastcall TForm1::FormCreate(TObject *Sender)
{
/*

Unit1.h
#include <StrUtils.hpp>

*/

//Unit1.cpp
AnsiString A = "WXYZ";
AnsiString B = "富士山";

Caption = MidStr(A,3,1); //Y

int intStart,intCount;
intStart = 3;
intCount = 1;

//Application->Title = MidStr(B, (intStart * 2) - 1, intCount *2); //山

//Application->Title = MidStr(B,5,2); //山

Application->Title = StrLCopy(A.c_str(), B.c_str(), 4); //富士

}
541デフォルトの名無しさん:2005/04/24(日) 02:12:20
542デフォルトの名無しさん:2005/04/24(日) 02:47:27
1. API 関数の CharNext 関数と CharPrev 関数

文字数を調べる関数を作りました。

2. 文字列の文字数を調べる

1 バイト文字と 2 バイト文字が混在する文字列の文字数を返す関数です。

// 文字列の文字数を返す
// src : 文字列
int GetCharLength(const char* src)
{
if (src[0] == '\0')
return 0;

char* s;
int count = 1;

s = CharNext(src);

while (*s)
{
++count;
s = CharNext(s);
}

return count;
}
543デフォルトの名無しさん:2005/04/24(日) 03:15:20
API 関数の CharNext 関数と CharPrev 関数
544デフォルトの名無しさん:2005/04/24(日) 03:32:58
void __fastcall TForm1::FormCreate(TObject *Sender)
{


AnsiString ansiB = "富士山麓";


Caption = ansiB.SubString(5,4); //山麓


}
545デフォルトの名無しさん:2005/04/24(日) 08:50:53
 
546デフォルトの名無しさん:2005/04/24(日) 13:40:39
なんで荒れてるの?
547デフォルトの名無しさん:2005/04/24(日) 14:00:41
いつもの基地外さ
548デフォルトの名無しさん:2005/04/24(日) 14:58:23
ApplicationEventsのOnIdleイベントは例えばデュアルコアのCPUで片方が空いてるときに、発動しますか?
549デフォルトの名無しさん:2005/04/24(日) 15:16:42
春真っ盛り
550デフォルトの名無しさん:2005/04/24(日) 15:57:48
新規(他からの継承でない)クラス「DisplayClass」を定義しました。
このクラスのインスタンスをグローバル宣言しました。

で、DisplayClassのパブリックメンバに、Graphics::TBitmap *LoadPicBitmap;
と宣言。

フォームは一個だけIDEで作成し、On_CreateハンドラからDisplayClassのメンバ関数を呼び出し、
LoadPicBitmapにnewする。

で、Form1のOn_CloseハンドラでLoadPicBitmapをdeleteすると、ウィンドウを閉じた時に
不正終了してしまいます。

LoadBitmapを参照しているほかのイベントハンドラがまだ呼ばれるのかと思いました。

なんで、On_CloseハンドラではApplication->Terminate()することにして、
On_Destroyハンドラでdeleteすることにしたのですが、頻度は減りましたがやはり
たまに不正終了します。

どうやったら不正終了しないでLoadPicBitmapを解放できるでしょうか?
551デフォルトの名無しさん:2005/04/24(日) 17:13:02
Canvas->CopyRect()関数で、イメージサイズを変えるとあまり綺麗にコピーできないのですが、
もう少し綺麗にコピーできる方法はないでしょうか?
552デフォルトの名無しさん:2005/04/24(日) 18:11:20
>>548
OnIdleってそのアプリが処理するメッセージがないときに呼ばれるものだから、CPUの忙しさとは関係ないのでは。
CPUがどんだけ忙しくたって、キューにメッセージがなければそのアプリはアイドル状態って判断されるわけだし。
553デフォルトの名無しさん:2005/04/24(日) 19:04:23
CopyFileでサイズの大きいファイルをコピーすると、
コピー中は、プログラムが固まって操作できなくなるんだけど
これを回避する方法ってありますか?
554デフォルトの名無しさん:2005/04/24(日) 19:16:32
スレッド
555デフォルトの名無しさん:2005/04/24(日) 21:44:51
>>553
バッファ使うなりして自前でコピーしたら?
現在何%コピーできてるかとかの表示もできそう
だし。

ただ、正確にコピーできてるかファイル比較
したりする必要あるなら多少面倒っぽいかも。


ところでCopyFileの速度ってどうなの?
高速ファイルコピー専用のアプリも多いみたい
なんだけどファイルコピーが低速なのはエクスプロ
ーラ上だけ?


と、自分では何も確認してない俺がレスしときますね。
556デフォルトの名無しさん:2005/04/24(日) 23:57:34
>>554-555
どうもありがとうです。
なんとか、スレッドを使ってうまくいったです。
でも、コピー失敗するから、ウェイトとかファイル比較とか
結構ややこい。
高速確実にファイルコピーできる方法があったら、
俺も知りたいです(´・ω・`)
557デフォルトの名無しさん:2005/04/25(月) 00:34:43
Application->ProcessMessages();// 溜まっているイベントの処理
558デフォルトの名無しさん:2005/04/25(月) 03:14:22
TThreadでメインFormからThreadのExecuteメソッドが実行中であるかどうかを判別する方法を教えてください
559デフォルトの名無しさん:2005/04/25(月) 03:48:45
Executeの最初と最後で(ry
560デフォルトの名無しさん:2005/04/25(月) 05:46:28
C++Builderからsusieのpluginを利用するサンプルプログラムはありませんか?
561デフォルトの名無しさん:2005/04/25(月) 07:22:43
susieは元々C言語用では?
562デフォルトの名無しさん:2005/04/25(月) 07:52:21
>>433
Indyを入れると出るみたいです。
だれかIndyうまくインストールできた人居る?
563デフォルトの名無しさん:2005/04/25(月) 17:46:05
>> 560
C++Builder6 vol.2の本に載ってるよ
564デフォルトの名無しさん:2005/04/25(月) 17:49:05
IncYear関数を使う時、なんか特別にインクルードしないとダメですか?
565本田:2005/04/25(月) 20:34:16
566デフォルトの名無しさん:2005/04/25(月) 21:58:36
>>564
ヘルプの「ユニット」ってやつのヘッダ。
VCLのヘッダは拡張子hppだから気をつけて。
567デフォルトの名無しさん:2005/04/26(火) 13:40:07
>>566
できました!
thx!
568デフォルトの名無しさん:2005/04/26(火) 15:48:32
C++Builder5で開発中の初心者です。

ScrollBoxについてなのですが、
これは直接文字を書き込むことはできないのでしょうか?
もしできるのであれば教えてください。
569デフォルトの名無しさん:2005/04/26(火) 17:30:01
>>568
>これは直接文字を書き込むことはできないのでしょうか?

「直接文字を書き込む」とは、
ScrollBox のどこにどう書き込みたいのか?
次第による。
570デフォルトの名無しさん:2005/04/26(火) 19:20:45
UTCを取得する関数ってありますか?
571デフォルトの名無しさん:2005/04/26(火) 19:28:42
>>570
::GetSystemTime(LPSYSTEMTIME);
じゃだめなのか?
572デフォルトの名無しさん:2005/04/27(水) 17:07:44
>>526
レスがかなり遅くなりましたがありがとうございます。
それで、やってみます。
573デフォルトの名無しさん:2005/04/27(水) 19:09:15
C++Builder1でTListViewにチェックボックスを付ける方法を教えてください
574デフォルトの名無しさん:2005/04/27(水) 20:35:18
>>573
最新のバージョンに更新する
575デフォルトの名無しさん:2005/04/28(木) 01:31:00
C++Builder6をインストして、
何の設定もしないままソース書いたんですが動きません。
どう設定すればよいか教えてください。
576デフォルトの名無しさん:2005/04/28(木) 01:43:31
>>575
そらまぁ、ソースを書いただけじゃ動くわけないな。
動いたらオカルトだ。

まともな回答が欲しかったらまともな質問しな。
どのようなソースを書いてどのようなオプションでコンパイルして
どのように実行したがどのような結果に終わったのか、
全て書け。
577デフォルトの名無しさん:2005/04/28(木) 01:55:57
どこが悪いのかわからんので重要そうなとこだけ書きます。

インクルードパス:C:\Program Files\Borland\CBuilder6\Include
ライブラリパス:C:\Program Files\Borland\CBuilder6\Lib
デバッグ用ソースパス:$(BCB)\source\vcl

#include <stdio.h>
main(){
printf("Hello, world.\n");
return 0;
}
これを実行すると、
[C++ エラー] Project1.cpp(3): E2209 インクルードファイル 'vcl.h' をオープンできない
[C++ エラー] Project1.cpp(6): E2303 型名が必要
[C++ エラー] Project1.cpp(6): E2034 'char *' 型は 'int' 型に変換できない
[C++ エラー] Project1.cpp(6): E2293 ) が必要
[C++ エラー] Project1.cpp(8): E2141 宣言の構文エラー

なんでvcl.hとかでてくるのか…
578デフォルトの名無しさん:2005/04/28(木) 02:06:37
int main(void){

にしてみたら?
579デフォルトの名無しさん:2005/04/28(木) 02:09:58
>>577

Windows アプリケーションとして、そういうコードを書いているの?
BCB 初心者かな?だとしたら間違い。

BCB6 立ち上げたら、

1) [ファイル] - [すべて閉じる]
2) [ファイル] - [新規作成] - [その他...]
3) 表示されたダイアログの新規作成タブからコンソール ウィザードをダブル・クリック
4) 更に表示されるダイアログであまり深い事を考えずに OK ボタンをクリック

の手順を踏む。

そうすれば main 関数のスケルトンが出てくるのでそれを編集する。

で、IDE 上からプログラムを実行すると、あっという間に終わって表示が消えるので、
最後に何か入力しないとプログラムを終われないようにしておくといい。
580デフォルトの名無しさん:2005/04/28(木) 02:10:17
>>578
だめでした。

インクルードパス:$(BCB)\include;$(BCB)\include\vcl
ライブラリパス:$(BCB)\Lib

で実行すると、
[リンカ 致命的エラー] Fatal: ファイル SYSINIT.OBJ が開けません
とでます。
581デフォルトの名無しさん:2005/04/28(木) 02:17:16
>>579
できました。
ありがとうございました。
582デフォルトの名無しさん:2005/04/28(木) 02:18:36
>>577
だから、分からんかったら全部書けって言ってるんだ。

そのプロジェクト、どういう手順で作成した?
それをはっきりさせて。

あと、「ファイル」→「新規作成」→「アプリケーション」で
新しいプロジェクトをつくって、なにもせずそのまま実行してごらん。
それでエラーが出るかどうか報告して。
583デフォルトの名無しさん:2005/04/28(木) 02:33:59
>>582
いままで立ち上げてUnit1.cppに打ってました。
何もせず実行すると577で書いたエラーがでます。
584デフォルトの名無しさん:2005/04/28(木) 04:48:43
TImageのPicture->Bitmapに画像を読み込みました。そしてPicture->Bitmap->SaveToFileでセーブしてみるときちんと
画像が書き込まれるのに、画面上でTImageの中に画像が表示されません。TImageのVisibleはtrueになっています。
表示されない原因として何が考えられるでしょうか?
585デフォルトの名無しさん:2005/04/28(木) 05:48:28
なんか問題文みたいな書き方だなw

HeightとWidthの値が物凄く小さくなってるとか?
586デフォルトの名無しさん:2005/04/28(木) 08:01:45
           
587デフォルトの名無しさん:2005/04/28(木) 09:34:27
ビットマップファイルを80枚くらい開くとメモリが十分余っているにもかかわらず、EOutOfResourcesエラーが出るのですが、これはWindowsの制限から来るのでしょうか?
OSはXPです。
588デフォルトの名無しさん:2005/04/28(木) 11:54:32
C++Builder1でTListViewにチェックボックスを付ける方法を教えてください
589デフォルトの名無しさん:2005/04/28(木) 12:12:51
590デフォルトの名無しさん:2005/04/28(木) 12:43:37
C++Builder1でTListViewにチェックボックスを付ける方法を教えてください
591デフォルトの名無しさん:2005/04/28(木) 17:10:49
>>587
【VCLリファレンスより】
  EOutOfResources は,Windows ハンドルを割り当てることができなかったときに送出される例外クラスです。

メモリが十分ある事が関係するとは思えないが?
592デフォルトの名無しさん:2005/04/28(木) 19:39:51
593デフォルトの名無しさん:2005/04/29(金) 05:29:49
 
594デフォルトの名無しさん:2005/04/29(金) 12:42:32
>>550
どこで new DisplayClass() してるの?
Form と生成消滅のタイミングが同じなら
DisplayClass は Form の protected/private メンバにしたほうがよくない?
で、「OnCreate(Form::FormCreate) で new DisplayClass()」してね。
Form のコンストラクタで new したり、
Form に埋め込むのはやめたほうがいいよ。
VCL は普通の C++ じゃないからね。
595550:2005/04/29(金) 13:41:41
>>594

関数の外で

DisplayClass Display;

とグローバル変数として宣言しています。
これがいけないのでしょうか…
596デフォルトの名無しさん:2005/04/29(金) 15:40:54
>>595
なんでグローバルという気もするけど、そっちは置いといてよさそう?

自分で TBitmap を割り当てているようなコントロールの
Bitmap に LoadPicBitmap を割り当てたとか?
...->Bitmap->Assign(Display.LoadPicBitmap);
↑ほんとはこう書かないといけないのに
...->Bitmap = Display.LoadPicBitmap;
↑こう書いているとか?
どこかのコントロールで二度目のdeleteが発生してる可能性のほうが高いのかな。
597デフォルトの名無しさん:2005/04/29(金) 16:03:21
>>595
んん?
Application->Terminate() って、最近書いた記憶ないや
これもなんか変?
>MainForm プロパティを使うと,アプリケーションのメインウィンドウとして動作するフォームを指定できます。メインフォームは,アプリケーションのメインプログラムで最初に作成されるフォームです。メインフォームを閉じるとアプリケーションは終了します。
598550:2005/04/29(金) 16:56:49
Application->Terminate()は、これを書いておかないとなぜか一旦閉じたウィンドウが
復活してしまうのです。

他のハンドラからShowプロパティが呼ばれているのだと思い、destroyedというフラグ変数を
OnCloseハンドラで立て、OnMouseDownなど、コードのある全てのハンドラの先頭に
if(destroyed)return;
と書いてもまだ復活してしまうのです。

なぜなんでしょう?
599550:2005/04/29(金) 17:03:58
Showプロパティ->Showメソッド
600594:2005/04/29(金) 17:47:36
ずるずると怪しいところが増加してます
コードの書き方がたいへんユニークみたいやなあ
それが原因ぽい
勇気をもってどっかにコード一式上げてみるかぃ
601550:2005/04/29(金) 18:02:11
どうやら、これみたいです。
http://www.borland.co.jp/qanda/delphi/d0000150.html

現在のプログラムはoncreateがそのままメインルーチンに突入する仕組みになっているので。

onClickを契機にメインルーチンに突入するように改造するか…
602594:2005/04/29(金) 18:38:37
OnCreateでは通常はオブジェクトの生成と初期設定のみ記述だよ
OnCreate で失敗すると、Form のロードに失敗したりするからねえ
がんがー
603デフォルトの名無しさん:2005/04/29(金) 21:14:39
>>601
コード挙げてみ?
604550:2005/04/30(土) 00:25:45
できました

onClickを契機にメインルーチンを組んだらonCloseでインスタンスを解放できました。
Application->Terminate()も記述しないでプログラムが終了しました。

ただまれに「フォームが復活」することがあったのですが、
onClickからのルーチンを、とにかくonCloseで立てる「destroyed」フラグが
立っていたら作業をすぐやめる、ように書き直したら現象が出なくなりました。

ありがとうございました。

ソース晒しですが、とても恥ずかしい種類のプログラム(要するにエロゲ)なので
ご勘弁下さい…
605デフォルトの名無しさん:2005/04/30(土) 03:04:48
まあ、なんて破廉恥な
606デフォルトの名無しさん:2005/04/30(土) 08:23:30
たぶん>>604のコードはとっても恥ずかしいコードなんだな

void __fastcall Sex::Incert(int WomanNo)
{
    AnsiString str = "ずぶっ、ぬぷぷぷぷ";
        .
        .
        .
}   
607デフォルトの名無しさん:2005/04/30(土) 08:34:03
>>604
エロゲで恥ずかしいのはテキストやCGであって
エンジン部分ではないと思うぞ・・・。
まさかソースに直接エロ台詞が書かれてるわけでもあるまいに。
608デフォルトの名無しさん:2005/04/30(土) 11:16:15
C++ BuilderのGroupBoxはVC++ .NETのそれと
見た目が違いますね。(XPスタイル適用時)
VC++ .NETと同じ様にするにはどうすればいい
でしょうか
609594:2005/04/30(土) 12:04:04
>>606
それを言うならInsertぢゃ…

>>604
アプリ終了時にオブジェクトがアンロードされる順番が見えていないのでこまっとるのだろう
終了処理に入る前に自分が所有していないオブジェクトへの参照は全部 NULL にしておく
各イベント処理は destroyed を使うのではなくて
if (RefMainForm/* != NULL*/) { 処理; }
みたいにしてくれろ
参照を外す、NULL 放り込むという基本動作が大事だなあ

ぢゃ、そういうことで
610デフォルトの名無しさん:2005/04/30(土) 18:55:18
UNICODE のアプリケーションを作るにはどうすればいいですか?
やってみたら WinMain が未解決になって対処法がわかりません。

#include <windows.h>
#include <tchar.h>

int WINAPI wWinMain(HINSTANCE, HINSTANCE, PTSTR, int)
{
return 0;
}
611デフォルトの名無しさん:2005/04/30(土) 19:52:47
>>610
それMFC?
C++BuilderならWideStringやstd::wstringで書きまくるべし
Win9xはごく一部のUnicode関数しか実装していないのよねぇ
612610:2005/04/30(土) 20:02:59
MFCではないです。
知りたいことだけを言えば、
『エントリポイント関数を、 WinMain から wWinMain にするには
どうすれば良いか?』ということです。
613デフォルトの名無しさん:2005/04/30(土) 22:25:37
>>612
プロジェクトオプション→ディレクトリ/条件タブ→条件定義に「_UNICODE」を追加。
又はオプションソースを開いて、コマンドラインオプションに「-WU」を追加。

#include <windows.h>
#include <tchar.h>

extern "C" int WINAPI _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow)
{
  return 0;
}
614610:2005/05/01(日) 00:02:04
>>613
解決しませんでした。
メイク可能なプロジェクトファイル一式をうpしてくれたら幸いです。
615デフォルトの名無しさん:2005/05/01(日) 00:29:48
あれ?じゃあオプションソースに「c0w32.obj」があったら「c0w32w.obj」に書き換えて。
BCB上で書き換えても反映されないかもしれないから、BCB終了して適当なエディタで。

それでもできなければうpする。
616610:2005/05/01(日) 00:46:25
>>615
無理でした。

メイクファイルを作成して、そのc0w32.objを書き直した場合は成功しますが、
手間がかかるので、より簡単な方法があるなら知りたいです。
617デフォルトの名無しさん:2005/05/01(日) 00:58:20
うちでは出来てるからなぁ。お手上げ。
618610:2005/05/01(日) 01:31:58
いまいちよくわからないけど、教えられたことをいじりまくっていたら、
開発環境から UNICODE モードでコンパイルできるようになりました。
thx
619デフォルトの名無しさん:2005/05/01(日) 09:32:45
C++ Builder6 使っているんですが プログラム中で
aを√したい場合と aをcos場合どうすればいいでしょうか?
sqrt(a) cos(a) してもうまくできないです。
620デフォルトの名無しさん:2005/05/01(日) 09:35:15
ちなみにcos
a=float cos(float a);
でもやってみたのですが、ぜんぜんうまくいきませんでした。
621デフォルトの名無しさん:2005/05/01(日) 09:54:52
CppWebBrowserでブラウザを作ったけど、
現在表示されてるページのURLをEditに表示するには
どうしたらいいのでしょうか。
622デフォルトの名無しさん:2005/05/01(日) 10:18:54
memo のなかに memo1というのが常に表示されているのですが、これを消したいのですが
どうすればいいですか?
623デフォルトの名無しさん:2005/05/01(日) 11:48:54
>>619-620
ヘルプを読む。
それでも分からなかったら、
自分の書いたソース晒して何がどう上手くいかなかったのか具体的にかけ。

>>621
TCppWebBrowser::LocationURL

>>622
TMemo::Lines

ってか人に聞く前にヘルプちゃんと読め。
624デフォルトの名無しさん:2005/05/01(日) 11:57:11
タスクバーを除くデスクトップサイズを取得するにはどうしたらよいのでしょうか?
625デフォルトの名無しさん:2005/05/01(日) 11:58:06
ここの回答者もヘルプ機能の一種ですから、
ここで質問することとヘルプを参照することはイコールです。
626デフォルトの名無しさん:2005/05/01(日) 12:09:22
>>624
TMonitor::WorkareaRect
627デフォルトの名無しさん:2005/05/01(日) 12:09:24
>>624
TRect r;
SystemParametersInfo(SPI_GETWORKAREA, 0, &r, 0);//rにディスプレイのタスクバーを除く
      //デスクトップ領域が代入される

int width = r.Right - r.Left;  // Width
int height = r.Bottom - r.Top; // Height
628624:2005/05/01(日) 12:55:54
親切な回答、ありがとうございます。
629デフォルトの名無しさん:2005/05/01(日) 13:21:05
次回作は?
630デフォルトの名無しさん:2005/05/01(日) 15:03:05
>>622
オブジェクトインスペクタでMemo1、Linesプロパティの右の...をクリック。
文字列リストの設定ダイアログで"Memo1"の文字列を削除。
631デフォルトの名無しさん:2005/05/01(日) 15:53:18
>>629
っ[BCB9]
632デフォルトの名無しさん:2005/05/01(日) 17:13:00
次回作っつーと映画みたいだな
633デフォルトの名無しさん:2005/05/01(日) 19:30:15
ボタンを押して、TabControlでタブを追加するやり方って
どうやるのですか?
634デフォルトの名無しさん:2005/05/01(日) 21:29:17
TabControlを使ってます。TabControl上にいくつかコンポーネントを
つけました。

buttonを押すとタブを自動的にひとつ追加することはできたのですが、
新しくできたタブ上にもともとあったコンポーネントと同じものを追加するにはどうすればいいのでしょうか。

(簡単に言うとTabControl上にEditがあり、buttonを押すとタブが1つ増えて、新しくできたそのタブ上にもEditが自動的にできるようにしたい、ということでです。)
635デフォルトの名無しさん:2005/05/01(日) 21:51:05
>>634

VCLリファレンスヘルプから引用
>TTabControl は異なるコントロールを格納する
>複数のページを持たない単一のオブジェクトです。
>現在のタブが変わると,タブコントロールは変更を
>反映するために OnChange イベントハンドラで
>直接コントロールの内容を更新しなければなりません。
引用終わり

>新しくできたタブ上にもともとあったコンポーネントと同じものを追加する
不可能。TPageControlのことか?
636デフォルトの名無しさん:2005/05/01(日) 22:30:43
>>635
あ、間違えました。ご指摘のとおりTPageです
637デフォルトの名無しさん:2005/05/01(日) 23:43:04
>>636
TPageなんてコンポーネントは存在しないぞ。
質問するときゃコンポーネント名くらい正確に書け。

複数のタブシートで同種のコンポーネントを使いたいなら
それこそTTabControlを使えばいい。
TPageControlは動的にページを追加するような使い方はあまりしない。

どうしてもやりたかったら追加したいコンポーネントをnewしてシート上に
配置するしかない。
複数のコンポーネントを扱うならフレームにまとめておけば一発で配置できる。

しかし、TTabControlを使うことを考えたほうが利口だとは思う。
638デフォルトの名無しさん:2005/05/02(月) 05:26:20
StatusBarの中にProgressBarを表示したいのですが、どうしたら出来るのでしょうか?
639デフォルトの名無しさん:2005/05/02(月) 06:49:08
ProgressBar->Parent = StatusBar
位置はてきとーに調整
640デフォルトの名無しさん:2005/05/02(月) 06:50:26
C++Builderで作ったGUIはなんか
VisualC++でつくったのよりキビキビしてない気がするんですが
気のせいですか?
641age:2005/05/02(月) 08:48:49
気のせい
642デフォルトの名無しさん:2005/05/02(月) 09:32:53
VCLはメッセージをいろいろ処理してるのでもっさりしてるようです
643デフォルトの名無しさん:2005/05/02(月) 11:34:45
>>640
パソコンをグレードアップしろ。2GHz未満のCPUなぞ使うな。
644デフォルトの名無しさん:2005/05/02(月) 12:39:06
>>643
2GHzのCeleronは1.4GHzのCeleronより早いですか?
645デフォルトの名無しさん:2005/05/02(月) 12:49:19
>>644
CPU自体の速度はそんなに変わらないだろうが、メモリ周りが明らかに速い。
646デフォルトの名無しさん:2005/05/02(月) 13:00:08
>>640
GUIでC++BuilderとVCのスピードの差などない。
本当にC++Builderで作ったのか?
Javaじゃないのか?
647デフォルトの名無しさん:2005/05/02(月) 13:26:23
>>646
ワロタ
648デフォルトの名無しさん:2005/05/02(月) 13:46:25
>>646
Javaはおそいねぇ。個人的にはこれがクライアントアプリケーションで使われなくなった最大の原因だと思うのだが(言語仕様的には好きなんだけどね)
649デフォルトの名無しさん:2005/05/02(月) 16:03:11
C++Builder1でTListViewにチェックボックスを付ける方法を教エロ
650デフォルトの名無しさん:2005/05/02(月) 16:26:55
げ、TEditとかTLabeledEditにOnMouseWheel系が無いのかよ。
マンドクセ
651デフォルトの名無しさん:2005/05/02(月) 16:39:33
>>649
TListViewを継承して作ったらいいんじゃない?
652デフォルトの名無しさん:2005/05/02(月) 20:51:46
ProgressBar1->Parent = StatusBar1;
653デフォルトの名無しさん:2005/05/02(月) 20:59:33
ProgressBar1->Parent = StatusBar1;

ProgressBar1->Top = 1;
ProgressBar1->Left = 1;
654デフォルトの名無しさん:2005/05/02(月) 21:06:09
ProgressBar1->Parent = StatusBar1;
ProgressBar1->Top = 2;
ProgressBar1->Left = 2;
655デフォルトの名無しさん:2005/05/02(月) 21:35:51
実行後に、ボタンを押して、Memoを増やす方法ってどうやるのですか?
はじめはフォームにButton1とMemo1がありますが、実行後に
Button1を押すとMemo2、Memo3・・・を表示することです
656デフォルトの名無しさん:2005/05/02(月) 21:45:23
動的にコントロールを作成する

C++ Builderで、実行時にTEditなどのコントロールを動的に作成するには、以下のようにします。
Parentを必ず設定する必要があります。

TEdit *DynamicEdit = new TEdit(Form1);
DynamicEdit->Parent = Form1;
DynamicEdit->Name = "DynamicCreateTEdit";
DynamicEdit->Left = 100;
DynamicEdit->Top = 100;
657デフォルトの名無しさん:2005/05/02(月) 21:47:20
コンポーネントの動的な作成方法



コンポーネントを動的に作成するにはどうすればいいのでしょうか?


下記のように記述すれば可能です。
注意として必ず,Parentプロパティに親となるコンポーネント(Form,Panel等)を 指定するようにしてください。
これにより,不特定多数のコンポーネントを使用したり,配列でコンポーネントをコ ントロールできるようになります。


//ユニットのヘッダのprivateに以下の一行を記述
TLabel *labels[9];

//以下の記述をボタンのクリック時のイベントに記述
//また,Form1にPanel1というパネルを事前にはっておいてください

void __fastcall TForm1::Button1Click(TObject *Sender)
{
for (int i=0;i<=9;i++)
{
labels[i]=new TLabel(Form1);
labels[i]->Top=i*20;
labels[i]->Caption="Label"+IntToStr(i);
labels[i]->Parent=Panel1;
}
}
658デフォルトの名無しさん:2005/05/02(月) 21:49:12
http://cgi38.plala.or.jp/flash100/Accesslog.cgi
こういうヤツの作り方ってどうやるんですかね?
659デフォルトの名無しさん:2005/05/02(月) 21:58:32
CGIの作り方ならWEBプログラミング板でないかい
660デフォルトの名無しさん:2005/05/02(月) 22:46:47
>>657ありがとうございます。それとCppWebBrowserも
動的に増やしたいのですが、TCppWebBrowserってしたらエラーがでたのですが・・
661デフォルトの名無しさん:2005/05/02(月) 23:06:17
TCppWebBrowser *CppWebBrowser = new TCppWebBrowser(this);
662デフォルトの名無しさん:2005/05/02(月) 23:10:04
 
TCppWebBrowser *CppWebBrowser = new TCppWebBrowser(this);

だったのを

TCppWebBrowser *CppWebBrowser = new TCppWebBrowser(Owner);
663デフォルトの名無しさん:2005/05/03(火) 00:54:51
>>660
TCppWebBrowserのParentの設定は、CppWebBrowser1->TOleControl::Parent = 〜
ってしないとだめ。
664デフォルトの名無しさん:2005/05/03(火) 00:56:40
って別にParentの設定でエラーが出たとは書いてないか。たぶんそうだと思うんだけど。
エラーが出たら、最低限エラーメッセージを書こうぜ。
665デフォルトの名無しさん:2005/05/03(火) 01:06:53
PageControlでタブシートを1から2へ切り替えたとき
1のコンポーネントが前に出っ放し。
1のコンポーネントが邪魔で2のコンポーネントが
見えない・・・・・。
誰か助けて・・・・
666デフォルトの名無しさん:2005/05/03(火) 01:28:50
>>665
シートの切り替えはどうやってる?
667デフォルトの名無しさん:2005/05/03(火) 08:18:53
切り替えるというか・・・自分の説明不足でした。スマソ。
PageControl上にCppWebBrowserを乗っけて、実行後
新しいウィンドウで開くを選ぶと別のタブが自動的にできるように
してある。ただ、新しいタブ上のCppWebBrowserが隠れて見えない。
それに新しいタブ上のCppWebBrowserで新しいウィンドウで開くを選ぶと
IEが起動してしまいます・・・。
668デフォルトの名無しさん:2005/05/03(火) 08:29:06
2つのTCppWebBrowserを用意して、
CppWebBrowser1を表示用のブラウザ、
CppWebBrowser2を、
表示されないブラウザ用とします。(CppWebBrowser2の
Width, Height を0にしておきます。)

そして、CppWebBrowser1のOnNewWindow2で、
新しいページを一度CppWebBrowser2に表示させ、
そのURLを所得して、
CppWebBrowser1からNavigateすることで、
新しいウィンドウを開かずに、表示することが
できると思います。

コードだと

void __fastcall TForm1::CppWebBrowser1NewWindow2(TObject *Sender,
LPDISPATCH *ppDisp, TOLEBOOL *Cancel)
{
*ppDisp = CppWebBrowser2->Application;
}
//------------------------------------------------------------------------ - --
void __fastcall TForm1::CppWebBrowser2NavigateComplete2(TObject *Sender,
LPDISPATCH pDisp, TVariant *URL)
{
CppWebBrowser1->Navigate(CppWebBrowser2->LocationURL);
}

という感じになります。
他にも方法はいろいろあるのかも知れません。
669デフォルトの名無しさん:2005/05/03(火) 11:36:36
>>667
(´-`).。oO(ただ単にActivePageが切り替わってないだけじゃ…)
670デフォルトの名無しさん:2005/05/03(火) 12:01:46
>>668
>>669
ありがとうございます。しかしなぜかできませんでした。
たしかに、ActivePageを切り替えてるのですが・・・


タブブラウザ風にしたいのです。
void __fastcall TForm1::CppWebBrowser1NewWindow2(TObject *Sender,
LPDISPATCH *ppDisp, VARIANT_BOOL *Cancel)
{

TTabSheet *TabSheet = new TTabSheet( this );
TabSheet->PageControl = PageControl1;
TabSheet->Parent=PageControl1;
PageControl1->ActivePage = TabSheet;
TCppWebBrowser *CppWebBrowser=new TCppWebBrowser(this);
CppWebBrowser->TOleControl::Parent=TabSheet;
CppWebBrowser->Align=alClient;
*ppDisp = CppWebBrowser->Application;
としたのですが・・。

なぜかCppWebBrowser1が常に一番先頭に出てきてしまいます。
新しいタブ上のCppWebBrowserはCppWebBrowser1でほとんど
隠れてしまいますが、端っこだけ見れます。そこで
新しいウィンドウで開くを選ぶと IEが起動してしまうのですけども・・。

どうもCppWebBrowser1以外は新しいウィンドウで開くを選ぶと IEが起動
してしまいます。


671デフォルトの名無しさん:2005/05/03(火) 12:28:49
>>670
うちでは隠れなかったので、隠れるというのは分からないけど、
IEが起動するのは、単に新しく作ったCppWebBrowserのOnNewWindow2イベントを設定してないからでは?
672デフォルトの名無しさん:2005/05/03(火) 13:17:45
>>671
動的に作ったCppWebBrowserのOnNewWindow2イベントの設定ってどうやれば
いいのですか?CppWebBrowserは実行前は1つしかありません・・・
673デフォルトの名無しさん:2005/05/03(火) 13:22:49
例えば>>670のイベントを使うなら、
CppWebBrowser->OnNewWindow2 = CppWebBrowser1NewWindow2;
ってすればいい。
674デフォルトの名無しさん:2005/05/03(火) 13:33:40
>>673
やっとできました。ありがとうございます!
675デフォルトの名無しさん:2005/05/03(火) 14:04:06
必要ないダイアローグをプロジェクトから削除したら、が表示されなくなった。
「フォーム作成中にエラーが発生しました。継承元の'TOKBottomDlg'がみつかりません」とのこと。
必要なダイアローグ、表示するにはどうすればいいのでしょう?
676デフォルトの名無しさん:2005/05/03(火) 14:04:35
必要ないダイアローグをプロジェクトから削除したら、必要なダイアローグが表示されなくなった。
「フォーム作成中にエラーが発生しました。継承元の'TOKBottomDlg'がみつかりません」とのこと。
必要なダイアローグ、表示するにはどうすればいいのでしょう?
677デフォルトの名無しさん:2005/05/03(火) 14:44:16
メインフォーム上のPanelをalign=clientでフォームいっぱいまでのばしているソフトで、
例えばパネルの大きさを100*100にしたいときに、メインフォームの大きさはどのように
して計算すればよいのでしょうか?
678デフォルトの名無しさん:2005/05/03(火) 15:22:32
Screen->Width
GetDeviceCaps(Canvas->Handle, HORZRES);
679デフォルトの名無しさん:2005/05/03(火) 15:24:05
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Memo1->Lines->Clear();

Memo1->Lines->Add(Format("物理画面の幅 = %d mm",
ARRAYOFCONST(((int)GetDeviceCaps(Canvas->Handle, HORZSIZE)))));
Memo1->Lines->Add(Format("物理画面の高さ = %d mm",
ARRAYOFCONST(((int)GetDeviceCaps(Canvas->Handle, VERTSIZE)))));
Memo1->Lines->Add(Format("ディスプレイの幅 = %d pixels",
ARRAYOFCONST(((int)GetDeviceCaps(Canvas->Handle, HORZRES)))));
Memo1->Lines->Add(Format("ディスプレイの高さ = %d pixels",
ARRAYOFCONST(((int)GetDeviceCaps(Canvas->Handle, VERTRES)))));
Memo1->Lines->Add(Format("各ピクセルのビットの数 = %d",
ARRAYOFCONST(((int)GetDeviceCaps(Canvas->Handle, BITSPIXEL)))));
}
680デフォルトの名無しさん:2005/05/03(火) 16:40:19
>>677
フォームのClientWidthとClientHeightを100にすれば勝手に必要な大きさになるけど、
そうじゃなくて、ClientWidthとかを設定しないで、計算で求めたいということ?
681デフォルトの名無しさん:2005/05/03(火) 19:20:30
ProgressBar1->Parent = StatusBar1;
ProgressBar1->Top = 2;
ProgressBar1->Left = 2;
682デフォルトの名無しさん:2005/05/04(水) 04:09:57
MediaPlayerではコーデックが入っていてもmp3は再生できないのでしょうか?
683デフォルトの名無しさん:2005/05/04(水) 11:35:26
>>682
TMediaPlayerならMCIのラッパだから再生できるはずだぞ。

try
{
MediaPlayer1->FileName = "C:\\Music\\music.mp3";
MediaPlayer1->Open();
MediaPlayer1->Play();
}
catch(Exception &e)
{
ShowMessage(e.Message);
}
684デフォルトの名無しさん:2005/05/04(水) 15:17:13
FastNetもしくはIndyを使ってのメールのUIDLの取得方法を教えてください
685トラックバック ★:2005/05/04(水) 15:24:51
【トラックバック来たよ】 (ver. 0.11)
[タイトル] ↓
[発ブログ] ニー速@2ch掲示板
http://ex10.2ch.net/test/read.cgi/neet4vip/1115187035/l50
( ref= http://ex10.2ch.net/test/read.cgi/neet4vip/1115187035/l50 )

[=要約=]


686デフォルトの名無しさん:2005/05/04(水) 18:24:20
>>677
それやめたほうがいいんじゃね?
子の側のコントロールのサイズを固定にして、
親の側をサイズ自動にしたら?

あるいはそうやって表示した後で
こっそり切り替えるというのはどう?
思いつきだけど
687デフォルトの名無しさん:2005/05/04(水) 19:20:14
http://www.borland.co.jp/cppbuilder/papers/cb4guide/cb4guide08.html

[]
上下、左右の空きの比 率を一定に保つ
コンポーネントのサイズ は変わらない



[akLeft, akTop, akRight, akBottom]
上下、左右の間隔を一 定に保つように、
コンポーネントのサイズ を変更する
688デフォルトの名無しさん:2005/05/05(木) 04:21:43
二重起動を防止しつつ、既存の方に情報を渡すにはどうしたらよいのでしょうか?
具体的には、メディアプレーヤーのように開かれるべきファイル名を渡したいのですが。
689デフォルトの名無しさん:2005/05/05(木) 06:20:32
アプリケーションの二重起動防止
http://www.borland.co.jp/qanda/cbuilder/c0003242.html
アプリケーションを 2 つ以上同時に起動しないようにしたい場合は?
690デフォルトの名無しさん:2005/05/05(木) 07:04:33
>>689
それだと、2つめが起動しないだけで、既存の方に情報を渡せないんです。
691デフォルトの名無しさん:2005/05/05(木) 11:12:36
>>690
すでにアプリが起動してたら適当なプロセス間通信手段を使って既存アプリにデータを渡す。
前者はWM_COPYDATAとかあるし後者はメモリマップドファイルとかがある。
692デフォルトの名無しさん:2005/05/05(木) 11:13:45
と、まあWM_USERで通知して共有メモリに書き込んでおいて、既存側はメッセージ受けたら共有メモリ覗けばいいだけか
693デフォルトの名無しさん:2005/05/05(木) 20:40:18
同じアプリ間だからてこずってんだろ?
694デフォルトの名無しさん:2005/05/05(木) 22:31:20
同じとか同じじゃないとか関係ないと思うが?
695デフォルトの名無しさん:2005/05/06(金) 03:09:43
boostは使えますか?
696デフォルトの名無しさん:2005/05/06(金) 04:08:30
>>695
クラスによりけり。
http://www.meta-comm.com/engineering/boost-regression/cvs-head/developer/index.html
それぞれのborland- 5_6_4のとこを見る。
697デフォルトの名無しさん:2005/05/06(金) 07:07:39
このソフトは有料ですか
698デフォルトの名無しさん:2005/05/06(金) 16:53:34
メインスレッドでSleepをかけた時、そのプログラムから作られた他のスレッドも同じくsleep状態になりますか?
699デフォルトの名無しさん:2005/05/06(金) 17:41:51
>>698
他のスレッドにまで影響したら、Sleep() は使い物にならない。
700デフォルトの名無しさん:2005/05/07(土) 02:52:38
スレッドがまだ実行中か終了したかを判別するにはどうしたらよいのでしょうか?
701デフォルトの名無しさん:2005/05/07(土) 03:00:25
OnTerminateでフラグを立てるとか
702デフォルトの名無しさん:2005/05/07(土) 13:29:35
子スレッドが、親スレッドへ、子スレッドが終わったよと何かしらの
方法で伝えればよい
703デフォルトの名無しさん:2005/05/07(土) 21:04:19
グローバル変数でフラグ立ては微かに危険?
704デフォルトの名無しさん:2005/05/07(土) 21:50:03
どんなプロシージャもグローバル変数なしで
記述できる

グローバル変数はいわば手抜き
705デフォルトの名無しさん:2005/05/07(土) 22:34:02
>>703
スレッドが一つなら正解だよ
706デフォルトの名無しさん:2005/05/08(日) 10:29:27
TThread.Terminatedってプロパティ無い?
707デフォルトの名無しさん:2005/05/08(日) 12:32:23
>>706
そいつは終了したかどうかの判定には全く使えない
708デフォルトの名無しさん:2005/05/08(日) 16:30:28
CppWebBrowzerだっけ?スペル忘れたが・・・
これで表示してるWebページのURL
をRichEditに表示するにはどうすればいいの?
709デフォルトの名無しさん:2005/05/08(日) 16:35:06
>>708
RichEdit1->Lines->Add(CppWebBrowser1->LocationURL);
710デフォルトの名無しさん:2005/05/08(日) 17:14:30
>>709

サンクス
711デフォルトの名無しさん:2005/05/08(日) 17:23:27
失礼な奴w 自覚ないだろうけど
712デフォルトの名無しさん:2005/05/08(日) 17:46:26
無いだろうな、たぶん。
713デフォルトの名無しさん:2005/05/08(日) 19:33:54
>>700
親スレッドがメッセージキューを持ってるという前提だけど

子スレッドは終了時に、親スレッドのメッセージキューへWM_USER投げる
ってのはダメかい?
Paramには、スレッドのハンドルなり、インスタンスのアドレスを
キャストして渡すなりすりゃスレッドが複数あっても見分けがつく支那。
おっと最後にWaitForSingleObject()(TThread継承してるならTThread::WaitFor())
でスレッドの完全停止を待ってやってな。
714デフォルトの名無しさん:2005/05/09(月) 07:17:01
BCCはWinアプリやるならVC++より遥かに効率
いいですか?
.NETはアレだし、ソフト開発にあまりコスト
掛けられない現在、いまんとこBCCやDelphiでの
開発が無難としか思えないんだが。
715デフォルトの名無しさん:2005/05/09(月) 07:18:04
↑いけね。BCC => BCB の間違いです。
716a.b:2005/05/09(月) 07:22:35
void __fastcall TForm1::Memo1Click(TObject *Sender)
{
Memo1->Text="今日は晴天です";
}
//---------------------------------------------------------------------------
void __fastcall TForm1::BitBtn1Click(TObject *Sender)
{
TTabSheet *TabSheet = new TTabSheet( this );
TabSheet->PageControl = PageControl1;
TabSheet->Parent=PageControl1;
PageControl1->ActivePage = TabSheet;
TMemo *Memo=new TMemo(Owner);
Memo->Parent=TabSheet;
Memo->OnEnter= Memo1Click;

}

Memo1内をクリックすると「今日は晴天です」って表示して、
bitbtnを押すと、Memoを増やせるようにしました。増やしたMemo
ではクリックしても「今日は晴天です」って表示されませんけど
どうしてか分かりますか?
717デフォルトの名無しさん:2005/05/09(月) 07:35:15
分かりますよ。
718a.b:2005/05/09(月) 07:46:15
>>717どうすればいいのですか?
719デフォルトの名無しさん:2005/05/09(月) 07:51:49
イベントハンドラを登録すればいいです
720a.b:2005/05/09(月) 08:07:44
Memo->OnEnter= Memo1Click;

のことですか?
721デフォルトの名無しさん:2005/05/09(月) 08:14:47
あ、ごめん。
ハンドラ内で文字列を設定しているのがMemo1だからでしょ。
これを、Sender(要キャスト)にすればOK。
722a.b:2005/05/09(月) 08:18:16
すいません、まだBuilderは知らないので・・・

ソース教えてくれませんか?
723デフォルトの名無しさん:2005/05/09(月) 08:22:53
こんな感じ。一行にまとめてもいいけどね。
void __fastcall TForm1::Memo1Click(TObject *Sender)
{
TMemo *memo = (TMemo *)Sender;
memo->Text="今日は晴天です";
}
724a.b:2005/05/09(月) 11:23:24
ありがとうございます。
725デフォルトの名無しさん:2005/05/09(月) 11:27:54
Cのキャストは止めとくよし

 if ( TMemo* memo = dynamic_cast<TMemo*>( Sender ) )
  memo->Text = "hoge";
726デフォルトの名無しさん:2005/05/09(月) 15:37:32
void __fastcall TForm1::ButtonClick(TObject *Sender)
{
Caption = dynamic_cast<TButton*>(Sender)->Caption;
}
727デフォルトの名無しさん:2005/05/09(月) 15:40:33
VCLは階層重ねて設計してあるから、ダウンキャストはしょっちゅうなのね。
728デフォルトの名無しさん:2005/05/09(月) 17:03:01
>>726
0が帰った時の対策しないのにdynamic_castしても意味ねーべ
729デフォルトの名無しさん:2005/05/09(月) 17:58:26
Perlのunix_md5_crypt()と同じことをするにはどうしたらよいでしょうか
Borland C++Builder 6です。
730デフォルトの名無しさん:2005/05/09(月) 18:17:18
>>729
以下の手順でOK

1.Perlのunix_md5_crypt()の処理内容を調べる
2.調べた処理内容を実装する
731デフォルトの名無しさん:2005/05/09(月) 18:29:12
>>730
そう言われる予感はしてた(´Д⊂
732デフォルトの名無しさん:2005/05/09(月) 19:54:07
次のバージョンは64bitに対応していますか?
733デフォルトの名無しさん:2005/05/09(月) 23:07:57
>>731
MD5ならどっか転がってるだろ
探してみ
734デフォルトの名無しさん:2005/05/09(月) 23:26:10
2chの酉を決めるために呼んでいるcrypt()の話は面白い。
http://user64.psychedance.com/2004/11/spec_2ch_trip.html
735デフォルトの名無しさん:2005/05/10(火) 00:04:20
>>729
RFC1321
736デフォルトの名無しさん:2005/05/10(火) 01:17:58
>>729
CryptAcquireContext()
CryptHashData()
CryptGetHashParam()
CryptDestroyHash()
CryptReleaseContext()
737デフォルトの名無しさん:2005/05/10(火) 01:23:15
C++の例外をデバッガにとられないようにするにはどのオプションを変更すればよいのでしょうか?
738デフォルトの名無しさん:2005/05/10(火) 01:32:47
>>737
ツール->デバッガオプション->言語固有の例外タブ->C++言語の例外で停止OFF
739729:2005/05/10(火) 03:04:28
泣きそうになりながらPerlのソース解析してて、
やっぱもっと楽な方法が無いものかと、脳内perl実行
$q =  'unix_md5_crypt';
$q =~ s/unix_//;

ttp://www.google.co.jp/search?lr=lang_ja&q=md5_crypt
ググったらサンプル見つかった、WINで動作確認もしてみた
ご飯食べて寝よう・・おやすみっ(´Д⊂

ttp://ruffnex.oc.to/kenji/xrea/md5crypt.txt
ttp://ruffnex.oc.to/kenji/src/md5.h
ttp://ruffnex.oc.to/kenji/src/md5_crypt.c

>>733-737
レスありがd
740デフォルトの名無しさん:2005/05/10(火) 13:20:02
>>739
>>737は違うと思うぞ。
741デフォルトの名無しさん:2005/05/10(火) 14:59:26
BCB6でフォルダ選択ダイアログを使う方法を
教えてください。

BROWSEINFO bi;//未定義のシンボルと出ます

#include <shlobj.h>//コンパイルエラーが出ます
#define NO_WIN32_LEAN_AND_MEAN//試してみたけど上に同じ
742デフォルトの名無しさん:2005/05/10(火) 15:59:19
フォームの移動を禁止する方法を教えてください
743デフォルトの名無しさん:2005/05/10(火) 16:01:58
C++Buiderのよい入門書を教えてください。
744デフォルトの名無しさん:2005/05/10(火) 16:05:49
>>741
NO_WIN32_LEAN_AND_MEANはプロジェクトオプション→ディレクトリ/条件タブ→条件→条件定義のとこに追加する。
vcl.hの前で#defineしてもいいけど、プリコンパイルヘッダの再作成が起きないように、
全部のソースで同じように#defineしなきゃいけないのでめんどい。
745デフォルトの名無しさん:2005/05/10(火) 16:13:25
>>742
WM_WINDOWPOSCHANGINGでWINDOWPOS構造体のxとyに
LeftとTopを入れる。
746デフォルトの名無しさん:2005/05/10(火) 16:21:38
>>745
ソース
747デフォルトの名無しさん:2005/05/10(火) 16:22:08
なんだてめぇは…
748デフォルトの名無しさん:2005/05/10(火) 16:23:56
てめぇこそなんだこら
749デフォルトの名無しさん:2005/05/10(火) 16:25:42
はいはい。優しい誰かが書いてくれるかもね、と。
750デフォルトの名無しさん:2005/05/10(火) 16:28:05
情けないなお前って
751デフォルトの名無しさん:2005/05/10(火) 16:33:35
馬鹿だな…ウソでも丁寧に聞きゃいいのに。損するのは自分だ。
752デフォルトの名無しさん:2005/05/10(火) 16:35:59
だから>>747とか調子に乗るんだ
753デフォルトの名無しさん:2005/05/10(火) 18:41:14
WinXPでのsndPlaySound不具合
754デフォルトの名無しさん:2005/05/10(火) 21:06:52
名無しのageはかまってちゃんの荒らしだって
何回釣られたら憶えるんですかみなさん
755デフォルトの名無しさん:2005/05/10(火) 21:13:18
なんだとぉ
756デフォルトの名無しさん:2005/05/10(火) 21:18:07
コテハンならいいのかよ
757デフォルトの名無しさん:2005/05/10(火) 22:42:37
//画像のアルファブレンド
extern bool AlphaPicture(Graphics::TBitmap *DestBMP, int XDest, int YDest, Graphics::TBitmap *SrcBMP , RECT Rect, BYTE Alpha)
{
DestBMP->PixelFormat=pf24bit;
SrcBMP->PixelFormat=pf24bit;

//転送先
int w=DestBMP->Width;
int h=DestBMP->Height;

//転送元
int Width = Rect.right - Rect.left;
int Height= Rect.bottom - Rect.top;
int YSrc = Rect.top;
int XSrc;

Byte *ptr,*ptr2;
758デフォルトの名無しさん:2005/05/10(火) 22:45:13

Alpha=256-Alpha;

for(int y2 = YDest ; y2 < Height+YDest ; y2++)
{
if(y2 >= h)break;

if(y2>=0)
{
ptr = (Byte *)DestBMP->ScanLine[y2];
ptr2= (Byte *)SrcBMP->ScanLine[YSrc];
XSrc=Rect.left;
for(int x2 = XDest ; x2 < Width+XDest ; x2++)
{
int i=x2*3;
if(x2 >= w)break;

if(x2>=0){
ptr[i] = (ptr2[XSrc] +((ptr[i] -ptr2[XSrc]) *Alpha>>8));
ptr[i+1] = (ptr2[XSrc+1]+((ptr[i+1]-ptr2[XSrc+1])*Alpha>>8));
ptr[i+2] = (ptr2[XSrc+2]+((ptr[i+2]-ptr2[XSrc+2])*Alpha>>8));
}

XSrc+=3;
}
}
YSrc++;
}

return true;
}
759デフォルトの名無しさん:2005/05/10(火) 22:47:22
760デフォルトの名無しさん:2005/05/10(火) 23:19:18
>>743
ttp://www.borland.co.jp/bookinfo/cppbuild.html
とりあえず、このへんの新しいヤツがいいと思いますよ。
761デフォルトの名無しさん:2005/05/10(火) 23:22:27
>>743
>>760
おまえら、テンプレちゃんと見れ >>7
762デフォルトの名無しさん:2005/05/11(水) 11:22:05
>>761
馬鹿みたいに高いのは何とかならんかねえ
763デフォルトの名無しさん:2005/05/11(水) 11:30:56
ん?>>761が馬鹿ってこと?
764デフォルトの名無しさん:2005/05/11(水) 12:25:45
>>746
お好みでどうぞ。
ttp://www.bulldog.co.jp/ ブルドックソース株式会社 東京都
ttp://www.kagome.co.jp/ カゴメ株式会社 愛知県
ttp://www.otafuku.co.jp/ オタフクソース株式会社 広島県
ttp://www.ikari-s.co.jp/ イカリソース株式会社 大阪府
ttp://www.kikkoman.co.jp/ キッコーマン株式会社 千葉県
ttp://www.oliversauce.com/オリバーソース株式会社 兵庫県
ttp://www.sky-net.or.jp/toshi/ カープソース 広島県
ttp://www.maruki-su.com/ 株式会社 川上酢店 愛知県
ttp://www.kozima.co.jp/ 小島食品製造株式会社 愛知県
ttp://www.komi.co.jp/ コーミ株式会社 愛知県
ttp://www.sankyohikari.co.jp/ サンキョーヒカリ 愛知県
ttp://www.junmaru.co.jp/ 株式会社 純正食品マルシマ 広島県
ttp://www.papaya-sauce.co.jp/ パパヤソース本舗 大洋産業株式会社 京都府
ttp://www.takahashisauce.com/ 高橋ソース株式会社 埼玉県
ttp://www.choko.co.jp/ チョーコー醤油株式会社 長崎県
ttp://www.timelyhit.ne.jp/ajiyoko/shop/sauce/sauce1.htm 阪神ソース株式会社 兵庫県
ttp://www.kyoto-thinking.co.jp/hirota/ 京風味ソース本舗 蛇ノ目食品廣田徳七商店 京都
ttp://www.optic.or.jp/com/fujiisauce/fujiisauce.html 有限会社 藤井ソース工場 岡山県
ttp://www2.neweb.ne.jp/wd/hikari/ ヒカリ食品 徳島県
ttp://www.hat.hi-ho.ne.jp/aokia/ 下北沢ビレッジソース 丸寿食品工業株式会社 東京都
ttp://www.yamayashokuhin.co.jp/ 山屋食品株式会社 東京都
ttp://www4.osk.3web.ne.jp/~brother1/ ブラザーソース森彌食品工業株式会社
ttp://www.asahi.co.jp/you/t20011026.html 神戸地ソース物語
【関連団体】
ttp://www.maff.go.jp/koueki/sougou/35/35.htm(社)日本ソース工業会
ttp://www.japan-tomato.or.jp/ 社団法人 全国トマト工業会
ttp://www.soysauce.or.jp/ 日本醤油協会
765デフォルトの名無しさん:2005/05/11(水) 13:03:04
>>763
「高い」はどこ行ったんだよおい
766デフォルトの名無しさん:2005/05/11(水) 13:55:06
>>765
>>754
767デフォルトの名無しさん:2005/05/11(水) 17:21:05
ホイールのチルトに反応するにはどのようなコードを書けばよいのでしょうか?
768デフォルトの名無しさん:2005/05/11(水) 19:08:35
半角文字しか入力出来ないようにしたいのですが。
クリップボードからの貼り付けも出来ないようにしたいです。
http://homepage1.nifty.com/MADIA/delphi/delphi_bbs/200403_04030067.html
769デフォルトの名無しさん:2005/05/11(水) 19:29:40
>>768
procedure TForm1.Edit1Click(Sender: TObject);
begin
Zenkaku_Iyaan;
end;
770デフォルトの名無しさん:2005/05/11(水) 19:39:19
>769
C++で書いてください。

771デフォルトの名無しさん:2005/05/11(水) 20:00:09
#include <stdio.h>

#include <ctype.h>

int main(void)
{
char c = 'C';

if (isalnum(c))
printf("%c は英数字です\n",c);
else
printf("%c は英数字ではありません\n",c);

return 0;
}
772デフォルトの名無しさん:2005/05/11(水) 20:30:40
void __fastcall TForm1::Button1Click(TObject *Sender)
{

char c = 'C';

if (isalnum(c))
{
Caption = "英数字です";
}
else
{
Caption = "英数字ではありません";
}

}
773デフォルトの名無しさん:2005/05/11(水) 20:36:30
void __fastcall TForm1::Button1Click(TObject *Sender)
{

//char c = 'C';
char cc[25] = "abc";
if (isalnum(cc[1]))
{
Caption = "英数字です";
}
else
{
Caption = "英数字ではありません";
}

}
774デフォルトの名無しさん:2005/05/11(水) 21:05:33
#include <stdio.h>
#include <ctype.h>

int main( void )
{
char str[] = "Hello C/C++ World, 1st ?";
char *p;

/* アルファベットか数値を括弧[]で囲みます */
for ( p = str; *p != '\0'; p++ ) {
if (isalnum(*p)) {
printf("[%c]", *p );
} else {
putchar( *p );
}
}
putchar('\n');
return 1;
}
775デフォルトの名無しさん:2005/05/11(水) 21:37:27
以下の例では,フォーム上のボタンを使用します。ボタンをクリックすると,テキストの 1 行が 6 つの異なるページに印刷されます。各ページが印刷されるたびに,印刷されているページを示すメッセージがステータスバーに表示されます。
この例を正しく実行するには,ユニットに #include <Printers.h> を追加して,ステータスバーの SimplePanel プロパティを true に設定しなければなりません。

void __fastcall TForm1::Button1Click(TObject Sender*)

{
Printer()->BeginDoc();
for (int i = 1;i < 7;i++)
{
Printer()->Canvas->TextOut(100, 100, "C++Builder rules!");
StatusBar1->SimpleText = AnsiString("Printing page ") + Printer()->PageNumber);
Printer()->NewPage();
}
Printer()->EndDoc();
}
776デフォルトの名無しさん:2005/05/11(水) 21:44:59

















:
777デフォルトの名無しさん:2005/05/11(水) 21:47:19

























;
778デフォルトの名無しさん:2005/05/11(水) 23:31:32























/
779デフォルトの名無しさん:2005/05/11(水) 23:49:55










]
780デフォルトの名無しさん:2005/05/12(木) 00:37:49












,
781デフォルトの名無しさん:2005/05/12(木) 01:19:32
Controling sound volume from code
http://delphi.about.com/cs/adptips2000/a/bltip0800_4.htm
Here's an example of controling the sound volume from Delphi:
uses MMSystem;

type
TVolumeRec = record
case Integer of
0: (LongVolume: Longint) ;
1: (LeftVolume, RightVolume : Word) ;
end;

const DeviceIndex=5
{0:Wave
1:MIDI
2:CDAudio
3:Line-In
4:Microphone
5:Master
6:PC-loudspeaker}

procedure SetVolume(aVolume:Byte) ;
var Vol: TVolumeRec;
begin
Vol.LeftVolume := aVolume shl 8;
Vol.RightVolume:= Vol.LeftVolume;
auxSetVolume(UINT(DeviceIndex), Vol.LongVolume) ;
end;


782デフォルトの名無しさん:2005/05/12(木) 01:24:44
function GetVolume:Cardinal;
var Vol: TVolumeRec;
begin
AuxGetVolume(UINT(DeviceIndex),@Vol.LongVolume) ;
Result:=(Vol.LeftVolume + Vol.RightVolume) shr 9;
end;
783デフォルトの名無しさん:2005/05/12(木) 01:52:38
終わってんなこのスレ
784デフォルトの名無しさん:2005/05/12(木) 01:55:56
5ボタンマウスの前後ボタンに反応するにはどうしたらよいのでしょうか?
785デフォルトの名無しさん:2005/05/12(木) 02:02:59
WM_XBUTTONDOWNとかが怪しい希ガス
786デフォルトの名無しさん:2005/05/12(木) 02:08:48
Getting Hard Disk Information

void __fastcall TForm1::Button1Click(TObject *Sender)
{
char Buffer[255];
unsigned long SerialNum;
unsigned long a, b;

if (GetVolumeInformation("c:\\",Buffer,sizeof(Buffer),&SerialNum,&a,&b,NULL,0)){
Edit1->Text = IntToStr(SerialNum);
Edit2->Text = Buffer;
}
}
787デフォルトの名無しさん:2005/05/12(木) 02:09:58
Opening and closing CD-ROM

#include <mmsystem.h>

void __fastcall TForm1::Button1Click(TObject *Sender)
{
mciSendString("Set cdaudio door open wait", NULL, 0, Handle);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
mciSendString("Set cdaudio door closed wait", NULL, 0, Handle);
}
788デフォルトの名無しさん:2005/05/12(木) 02:18:32
>>785
実装例はどこかにありませんか?
789デフォルトの名無しさん:2005/05/12(木) 02:33:58
ググってそれらしいキーワード見つけただけだからなぁ。
フォームのヘッダに↓書いて反応があれば正解だろうけど。俺は5ボタンマウス持ってないから試せない。

protected:
    void __fastcall WndProc(TMessage& m)
    {
        if (m.Msg == WM_XBUTTONDOWN) {
            if (m.WParamHi == XBUTTON1) Caption = "XBUTTON1";
            if (m.WParamHi == XBUTTON2) Caption = "XBUTTON2";
        }

        TForm::WndProc(m);
    }
790デフォルトの名無しさん:2005/05/12(木) 02:39:40
上のダブルクリックに反応するコードだった。
押されたのを調べるのはこっちか
if (m.WParamLo & MK_XBUTTON1) Caption = "XBUTTON1";
791デフォルトの名無しさん:2005/05/12(木) 02:44:45
Classic Tetris 1.0 (Not rated) Rate this file
http://www.programmersheaven.com/zone3/cat873/37445.htm
792デフォルトの名無しさん:2005/05/12(木) 03:20:35
そろそろゴミの削除依頼しちゃう?
793784:2005/05/12(木) 03:41:14
ありがとうございます。後は何とか自力でやってみます
794デフォルトの名無しさん:2005/05/12(木) 06:31:28
ttp://www.kanazawa-net.ne.jp/~pmansato/BCB_Main.htm
俺、BCB買ったけど、殆ど触ってないんでわかんないけど、
ここに置いてるヘルプとかサンプルプログラムってどう?

ヘルプは4800円らしいけど、1ヶ月は使用できるってさ。

俺は他でもうちょっと知識つけてから確認する予定
795デフォルトの名無しさん:2005/05/12(木) 10:14:33
>>794
こんなのもあるぞ
ttp://www.yukibow.com/
796デフォルトの名無しさん:2005/05/12(木) 11:49:37
>>794-794
どっちも無料で閲覧できるor閲覧できた時代のページしか見てないが、

>>794のほうは比較的まともな内容。
>>795は過去スレで散々馬鹿にされていた程度の内容。

>>794の人はもともとDelphi使いらしくVCLの使い方は心得ている(この点は当てになる)が
C++の知識は多少怪しいところがある。
>>795の人はVCLもC++も分かってない。

んなとこ。

ま、 初心者なら5千円@月払うより素直に「コンポーネント活用ガイド」買っといたほうが
利口だと思う。
797デフォルトの名無しさん:2005/05/12(木) 11:55:17
>>794
>今、話題の C# の開発者は Delphi を開発した人です。 Microsoft に
>ヘッドハンティングされ、現在は Microsoft に勤めています。その後も
> Microsoft による引抜きが頻発したため、訴訟騒ぎになったほどです。
>ライバル企業との競争は理解できますが、キタナイ手を使うところは
>いかにも Microsoft らしいですね。商売のやり方もそうですが!

こういう馬鹿なことを書くのはどうかと思うがねえ
798デフォルトの名無しさん:2005/05/12(木) 12:15:54
>>794
おれ、そのサイトにあるサンプルプログラムの機能全部書ける。
あんなので金取って人間として恥ずかしくないのかね。
794が本気でC++Builderを勉強する気があるなら答えてやってもよいぞ
799デフォルトの名無しさん:2005/05/12(木) 13:41:33
タスクトレイのアイコンの画像を条件によってかえたいのですが、
どうやればできるでしょうか?
規定値は「オプション」−「プロジェクト」−「アプリケーション」の設定で設定しました。
800デフォルトの名無しさん:2005/05/12(木) 13:50:11
>>799
Application->Icon
801デフォルトの名無しさん:2005/05/12(木) 14:27:35
http://thunder.prohosting.com/~cbdn/anon.htm

void __fastcall TForm1::FormCreate(TObject *Sender)
{
Application->Icon->LoadFromFile("c:\\"
"program files\\common files\\borland shared\\"
"images\\icons\\finance.ico");
}

802デフォルトの名無しさん:2005/05/12(木) 14:29:28
Example


// Edit your header file and insert:
// private: // User declarations
// void __fastcall Minimized(TObject *Sender);

// Each time the application is minimized
// it will be automatically restored

__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
Application->OnMinimize = Minimized;
}

void __fastcall TForm1::Minimized(TObject *Sender)
{
Application->Restore();
}


See Also

Minimize
OnMinimize
803デフォルトの名無しさん:2005/05/12(木) 14:58:40
>>800
>>801
>>802

できました!
ありがとうございました。
804デフォルトの名無しさん:2005/05/12(木) 16:47:11
フォームを半透明にするってできますか?
805デフォルトの名無しさん:2005/05/12(木) 16:53:09
できる
806デフォルトの名無しさん:2005/05/12(木) 17:07:12
APIを使え。
807デフォルトの名無しさん:2005/05/12(木) 17:26:13
>>804
フォームのAlphaBlendをtrueにしてAlphaBlendValueをいじるだけ。Win2K以降用だけど。
808デフォルトの名無しさん:2005/05/12(木) 18:18:28
>>807
そんなプロパティーあったっけ?BCB5
809デフォルトの名無しさん:2005/05/12(木) 18:31:42
無いなら無いんだろう。6はある。
810デフォルトの名無しさん:2005/05/12(木) 18:34:11
811デフォルトの名無しさん:2005/05/12(木) 18:44:26
>>809
ザコが
812デフォルトの名無しさん:2005/05/12(木) 18:46:31
またか。どんだけリアルでみじめか知らんけど、こんなとこで憂さ晴らししてんなよ
813デフォルトの名無しさん:2005/05/12(木) 19:38:24
>>812
いや、朝鮮人やBの人間にいくら文句を言っても無駄ですよ。
814デフォルトの名無しさん:2005/05/12(木) 19:43:45
C++Builder Tips



マウスボタンの判定


Shift.Containsってなんか忘れません?

//-------------------------------------------------------------------- -------

void __fastcall TForm1::FormMouseDown(TObject *Sender, TMouseButton Button,
TShiftState Shift, int X, int Y)
{
ListBox1->Items->Clear();

//Shiftキーが押されている
if (Shift.Contains(ssShift)){
ListBox1->Items->Add("ssShift");
}
//Ctrlキーが押されている
if (Shift.Contains(ssCtrl)){
ListBox1->Items->Add("ssCtrl");
}
//Altキーが押されている
if (Shift.Contains(ssAlt)){
ListBox1->Items->Add("ssAlt");
} 
815デフォルトの名無しさん:2005/05/12(木) 21:00:49
 
816デフォルトの名無しさん:2005/05/12(木) 21:07:48
今日、パーソナル版を買ったんですけど
本が売ってない・・・・(T▽T)
お勉強サイトを教えてください。
817デフォルトの名無しさん:2005/05/12(木) 21:10:20
>>814
http://www.borland.co.jp/tips/cbuilder/index.html

C++Builder プログラミング情報 - Delphi との比較 -
3.集合型と Set テンプレートクラス

C++BuilderでのVCLのサポート

C++のテンプレートとオペレーターオーバーロードの知識が
要るみたいですね。ようやく理解した(つもり)。

言語ガイドの、operatorとオーバーロード演算子(10ページ程)
VCLリファレンス Set
818デフォルトの名無しさん:2005/05/12(木) 21:53:25
Opening and closing CD-ROM

#include <mmsystem.h>

void __fastcall TForm1::Button1Click(TObject *Sender)
{
mciSendString("Set cdaudio door open wait", NULL, 0, Handle);
}
//------------------------------------------------------------------------ ---
void __fastcall TForm1::Button2Click(TObject *Sender)
{
mciSendString("Set cdaudio door closed wait", NULL, 0, Handle);
}
819デフォルトの名無しさん:2005/05/12(木) 21:58:03
ゲームを創ろう・入門編
http://hp.vector.co.jp/authors/VA011006/maga/g1.html
820デフォルトの名無しさん:2005/05/12(木) 22:25:04
買ってきた本の付録のCD
サンプルを実行したら

[C++ Fatal Error]sample.cpp(31): F1013 Error writing output file

とエラーがでた。

誰か教えてください、意味がわからない・・・・OTZ
821デフォルトの名無しさん:2005/05/12(木) 22:36:46
>>816
とりあえず使える言語と何をしたいかぐらいは書いといた
方がよいかも。

1.ゲーム(どんなゲームかも書いたほうが良い)作りたい。
2.アプリ作りたい。
3.時間かかっていいから言語から学習したい。
とか。

まあなんにしてもデバッグの操作覚えるのと
エディタの設定を。

>>820
とりあえず、そのエラーを選択してF1キーでヘルプ。
意味はわかる。
822デフォルトの名無しさん:2005/05/12(木) 22:53:20
>>820
そのcppファイルをまずハードディスクにコピーしてから
コピーしたほうのファイルを実行すべきなんじゃないの?

.cppのあるディレクトリにOBJファイルやEXEファイルを
作るのがデフォルトだから、CD-ROMドライブにそれらを
作成しようとしてエラーが出てる気がする。
823816:2005/05/12(木) 23:44:22
>>819
ありがとうございます。m(_ _)m
824デフォルトの名無しさん:2005/05/13(金) 00:58:53
http://www.woodensoldier.info/computer/BCBTips.htm#39
WAVファイルを再生するには

WAVファイルを再生するには、sndPlaySound()関数を使用します。
オプションは組み合わせて使う事ができます
SND_LOOP(繰り返し再生)
SND_SYNC(同期モード、演奏が終わるまでフリーズ)
SND_ASYNC(非同期モード)
SND_NODEFAULT(ファイルが見つからない場合、警告を鳴らす)
SND_NOSTOP( すでに再生中の場合何もしない)

#include <MMSystem.h>

sndPlaySound("tada.wav",SND_ASYNC);
825デフォルトの名無しさん:2005/05/13(金) 01:03:11
http://www.woodensoldier.info/computer/BCBTips.htm#1
Formへの画像の描画を行う

Formへの画像の描画はDraw関数を使います。2つの方法があります。
直接貼り付ける2の方法のほうが高速です。

Form->Image->Canvas->Draw(20,20,BMP); //方法1

Form->Canvas->Draw(20,20,BMP); //方法2
826デフォルトの名無しさん:2005/05/13(金) 01:07:47
キーイベントを扱う
http://www.woodensoldier.info/computer/BCBTips.htm#31
キーイベントを扱うにはKeyDown()関数を使います。
以下のソースはEdit1を貼り付けKeyDown()を設定したものです。
なお、メインフォームでキーの入力を先に取りたい場合はKeyPreviewをtrueに設定します。

void __fastcall TForm1::Edit1KeyDown(TObject *Sender, WORD &Key,
TShiftState Shift)
{
if(Key == VK_RETURN) Edit1->Text = "Return";
if(Key == 27) Edit1->Text = "ESC";
if(Key == VK__UP) Edit1->Text = "UP";
}
827デフォルトの名無しさん:2005/05/13(金) 01:56:04
void __fastcall TForm1::FormKeyDown(TObject *Sender, WORD &Key,
TShiftState Shift)
{
if(Key == VK_RETURN) Caption = "Return";
}
828デフォルトの名無しさん:2005/05/13(金) 01:57:20
829デフォルトの名無しさん:2005/05/13(金) 01:58:47
830デフォルトの名無しさん:2005/05/13(金) 03:57:57
                    
831デフォルトの名無しさん:2005/05/13(金) 06:11:05
C++Builderの新版は出るのでしょうか?
C++BulderXが出ているのですが、これはちょっと違う方向性のようだし・・
832デフォルトの名無しさん:2005/05/13(金) 07:05:35
Borland C++Builder開発者の皆さまへ
http://www.borland.co.jp/about/message/openletter_cb.html

ボーランドならびに弊社C++Builder製品群に対し、
長期間にわたるご支 援を賜りまして誠にありがとうございます。

弊社では、今後もVCLベースのC++開発をさらに推し進めて参ります。
次期バージョンのC++Builderは、Delphi 製品に統 合されるように致します。
これにより、皆様は一つの統合環境で、
最新 のDelphi VCLテクノロジーと、
皆様からリクエストとして寄せられた多くの
C++機能をご利用いただけるようになります。
以上は、Delphiの次期メ ジャーリリースまでに実現させる計画です。次期バージョンの詳細やリリ ース時期については、
決定次第お知らせいたします。

2004年12月
833デフォルトの名無しさん:2005/05/13(金) 10:59:00
統合に関しちゃ↑以降なんのアナウンスもないのかな?

デルファイて何?なBCB(だけしか知らない)ユーザにとっては
使い勝手が悪化したり、余計な知識が求められたりするんだ
ろうか。
834デフォルトの名無しさん:2005/05/13(金) 13:37:03
>>833
D2005は重いし従来のIDEとは動きが違ったりするので、そういう意味では「使い勝手悪化」
・「余計な知識要」だけど、Delphiシラネという意味ではあまり変わらないと思われ。
835デフォルトの名無しさん:2005/05/13(金) 15:23:20
フォームに紐付いてるユニット名の変更は、
どこで指定したらいいでしょうか?
作り直ししか無理ですか?
836デフォルトの名無しさん:2005/05/13(金) 16:12:43
ビルダーで作ったWebブラウザで、ボタンを押すと
クッキーを全て遮断する、
ことができる機能を追加したいのですが教えてくださいませんか。
837デフォルトの名無しさん:2005/05/13(金) 17:22:34
http://www.borland.co.jp/support/bronze_silver.html
Bronze Support
\31,500(税抜 \30,000)
(1インシデント、お申し込 み受付から最長30日間有 効)
838デフォルトの名無しさん:2005/05/13(金) 17:29:51
Bronze Support
\31,500(税抜 \30,000)
(1インシデント、お申し込 み受付から最長30日間有 効)
http://www.borland.co.jp/support/bronze_silver.html

オンデマンド
(1 インシデント)
25,900 円
(27,195 円)
http://www.microsoft.com/japan/msdn/subscriptions/resources/additionalincident.aspx
http://www.microsoft.com/japan/msdn/subscriptions/resources/support.aspx
839デフォルトの名無しさん:2005/05/13(金) 18:06:49
1.BORLAND社のC++ BUILDERあるいはDELPHI PERSONAL版に第一に付き合う。
2.次に、Microsoft Windows MSDN DeLuxe 優待版を申し込む。
この製品は、プログラムの学習・テスト走行・デバッグなど、アマチュア・ハッカ-の 必需OSです、
しばらくの間は、OS自体に対するハッキング・解析・研究、 操作性の実験、不満点 の列挙などをやってみましょう。
どんな暇つぶしパズルより面白い頭の体操が出来ます。

ゆめゆめ受動的学習本に振り回されて、C言語の解説書などに振り回されないよう に。
ソ-スコ-ドを多読・精読する事こそプログラマへの最短コ-ス
人間の使う自然言語の学習と全く同じ事:
どうして多く聞き、多く読まないで外国語に上達出来ますか。

http://www.microsoft.com/japan/msdn/subscriptions/windows/
840デフォルトの名無しさん:2005/05/13(金) 18:33:41
>>839
どうして日本語に上達しませんですか。
841デフォルトの名無しさん:2005/05/13(金) 19:23:45
 
842デフォルトの名無しさん:2005/05/13(金) 19:58:40
 
843デフォルトの名無しさん:2005/05/13(金) 19:59:27
>>833
> 統合に関しちゃ↑以降なんのアナウンスもないのかな?
Delphi 2006に向けて開発中という事では。

BDNtv: Work in progress on C++ database development support in the Delphi 2005
http://bdn.borland.com/article/0,1410,32990,00.html
844デフォルトの名無しさん:2005/05/13(金) 21:15:39
void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString S = " 123.5";
int p;
// 空白を 0 に変換する
while ((p = S.Pos(' ')) > 0 )
S[p] = '0';
Canvas->TextOut(10, 10, S);
}
845デフォルトの名無しさん:2005/05/13(金) 21:38:51
>835
名前を付けて保存
846デフォルトの名無しさん:2005/05/13(金) 22:40:44
 
847デフォルトの名無しさん:2005/05/13(金) 23:44:46
 
848デフォルトの名無しさん:2005/05/14(土) 02:03:15
すみません。初歩的なことなのですが、Paradoxにbmp画像データ
入力したいのですが、画像データ以外は
ParamByName(”項目”)->As... でできるのですが、
ParamByName(”項目”)->AsBlob = Image->Picture;
とやると、AnsiString形に変換できないと怒られてしまいます。
お手数ですが、どなたかよい方法をアドバイスしてください。
849デフォルトの名無しさん:2005/05/14(土) 02:21:12
>>848
SetBlobDataを使う
850デフォルトの名無しさん:2005/05/14(土) 02:26:46
>849
さんありがとうございます。
やってみます。
851デフォルトの名無しさん:2005/05/14(土) 03:21:15
ある実行ファイルのアイコンを取得する方法を教えてください
852デフォルトの名無しさん:2005/05/14(土) 03:26:06
Bronze Support
\31,500(税抜 \30,000)
(1インシデント、お申し込 み受付から最長30日間有 効)
http://www.borland.co.jp/support/bronze_silver.html
853デフォルトの名無しさん:2005/05/14(土) 10:02:22
ビルダーで作ったWebブラウザで、ボタンを押すと
クッキーを全て遮断する、
ことができる機能を追加したいのですが教えてくださいませんか。
854デフォルトの名無しさん:2005/05/14(土) 11:44:23
855デフォルトの名無しさん:2005/05/14(土) 15:30:38
856デフォルトの名無しさん:2005/05/15(日) 01:06:18
初めてDLL使おうと思い、#include <zlib.h> としたのですが、
zconf.h(264): E2015 'Byte' と 'System::Byte' の区別が曖昧
と出て駄目でした。
zlibを簡単に扱うコンポーネントか何かありませんか?
857デフォルトの名無しさん:2005/05/15(日) 01:29:58
俺そこの少し上の
typedef unsigned char Byte; /* 8 bits */
をコメントアウトして使ってる
858デフォルトの名無しさん:2005/05/15(日) 03:17:06
Byte じゃなく、BYTE にしちゃうという手も。
859デフォルトの名無しさん:2005/05/15(日) 06:53:10
たとえば、3時に何かを実行したいという場合、Timerで毎秒ごとに3時かどうかをチェックするしかないのでしょうか?
3時ちょうどにWindowsからイベントを発生させることは出来ないのでしょうか?
860デフォルトの名無しさん:2005/05/15(日) 07:19:55
>>859
こんとろーるぱねる たすくすけじゅーる追加
861デフォルトの名無しさん:2005/05/15(日) 07:23:04
>856
こんな感じのを書いたヘッダを作って、そっちをincludeして使ってる
namespace zlib {
#define ZEXPORT __cdecl
#pragma option push -pc
#include "zlib.h"
#pragma comment(lib, "zdllbor.lib")
#pragma option pop
}
using zlib::z_stream;

>859
今の時刻から、3時までの時間差が分かるから
タイマーの間隔を設定すればいいんじゃないのか。
ちょうどに出来るかは知らんけど。
862デフォルトの名無しさん:2005/05/15(日) 10:35:27
>>859
スレッド作ってスレッド内で判定する、
と言う方法もある。
863デフォルトの名無しさん:2005/05/15(日) 10:56:45
最近、パーソナル版を買ったんですけど
このタイマーってVB6と一緒で信用できないんですか?
864デフォルトの名無しさん:2005/05/15(日) 11:29:00
>>863
できます。
865デフォルトの名無しさん:2005/05/15(日) 18:55:24
>>857,858,861
ありがとうございます。
コンパイルは出来るようになりました。
ただ、zlib.libをプロジェクトに追加すると、
[リンカ エラー] 'C:\ZLIB.LIB' contains invalid OMF record, type 0x21 (possibly COFF)
が出てしまうのですが、どうすればいいのでしょうか?
866デフォルトの名無しさん:2005/05/15(日) 20:08:41
>>865
これzlib使ってたと思う
ソース見てみたら?
ttp://asees.dw.land.to/mgx_rename/
867デフォルトの名無しさん:2005/05/15(日) 20:30:49
>>865
zlib.libを自分でビルドするかdll使う。
868デフォルトの名無しさん:2005/05/15(日) 20:30:50
>>865
どこかからダウンロードしてきたLIBならおそらくVisualC++用なので
coff2omf.exeでBCBで使える形式に変換するか
implib.exeでDLLからインポートライブラリを作る
869デフォルトの名無しさん:2005/05/15(日) 21:04:49
>>866さんのリンク先のソースのzdllbor.libを使ったら無事にできたみたいです(つД`)

>>867,868
なるほど、ありがとうございます。
メモしておきます(つД`)
自分でVisualC++でビルドしたのをBorlandで使ってましたorz

皆さんどうもありがとうざございました。
870861:2005/05/15(日) 21:35:39
俺の#pragmaは全然見てくれてなかったわけね
871デフォルトの名無しさん:2005/05/15(日) 21:40:20
>>859
っSetWaitableTimer()

872デフォルトの名無しさん:2005/05/15(日) 22:15:07
>>870
俺が見てるから安心しろ
873デフォルトの名無しさん:2005/05/16(月) 03:08:06
 
874デフォルトの名無しさん:2005/05/16(月) 12:09:29
HTMLヘルプとC++Builderのフォームの連携方法を教えてくれろ
875デフォルトの名無しさん:2005/05/16(月) 17:33:28
UDP送受信で質問です。
標準コンポーネントのNMUDPを使用して送受信するように作成しておりますが、
大量のデータを送信(受信)しようとすると電文が化けます。(約7000byte)
ググった結果、NMUDPのバッファサイズが2049となっているため送信出来なかったようです。
ttp://www.borland.co.jp/qanda/cbuilder/c0009401.html

ただ、この宣言を10000とかにすると、送信側は正常に送っているようなのですが、受信側では
やはり受け取れないようです。
どなたか対処法をご存知でしょうか?

BCB6Pro#4
PC2台でクロスケーブルにて接続
正常・異常はアナライザにて見ているため思い違いではなさげ
876デフォルトの名無しさん:2005/05/16(月) 20:23:06
Application->HelpFile = ExtractFilePath(Application->ExeName) + "TextEditor.hlp";
877デフォルトの名無しさん:2005/05/16(月) 21:12:00
>>875
BuilderについてくるNMなんとか・・っていうコンポーネントはやめといたほうがいい
NMHTTPも挙動が変な時あるし、使うんだったらIndyをインストールすればOK
日本語ヘルプファイルはDelphi用のがBorlandからDLできたはず
878デフォルトの名無しさん:2005/05/16(月) 21:47:32
UDPを使わない
879デフォルトの名無しさん:2005/05/16(月) 23:20:08
>>877
Indy10のインストールをしたいのですが、やり方がわかりません。教えてください。
880デフォルトの名無しさん:2005/05/16(月) 23:27:10
>>879
BCBならIndy9までしか公式では対応してない。
881デフォルトの名無しさん:2005/05/16(月) 23:31:56
>>880
BCBは見捨てられてしまったのでしょうか?
それとも単にインストーラだけの問題じゃなく、他の部分で問題があって対応できないのでしょうか?
882デフォルトの名無しさん:2005/05/16(月) 23:42:57
>>881
多分そうじゃなくて、Delphiのバージョンだけが進み、それに準じて
Indy10が書かれているので、単にそれをBCB6に移植するのが面倒に
なっただけでしょ。BCB7でも出れば出そうな希ガス。
883デフォルトの名無しさん:2005/05/17(火) 01:42:19
ひたすらdpkと同じ構成のbpkを作ったら、DesignIdeがどうたらでエラーが出たぐらいで、それを回避すればインストールできたけどね>Indy10
IdHTTPでGetしてみたぐらいでロクに動作確認したわけじゃないけども。
884デフォルトの名無しさん:2005/05/17(火) 01:45:57
>dpkと同じ構成のbpkを作ったら
これはどうやってやるのでしょうか?もう少し詳しく教えていただけないでしょうか?
885デフォルトの名無しさん:2005/05/17(火) 02:02:57
ようはDelphi用のパッケージ(.dpk)はあるわけだから、それを適当なエディタで開いて、
そのパッケージに必要なファイルを調べて、
自分でBCBで作ったパッケージ(bpk)に追加していくという事なんだけんども。
パッケージもファイルも多くて非常に面倒くさい。
886デフォルトの名無しさん:2005/05/17(火) 03:07:38
MonthCalendarコントロールで日付ごとに色を付けるにはどうすればよいのでしょうか?
Boldにする方法はわかったのですが、それ以外の装飾をつけるにはどうしたらよいのでしょうか?
887886:2005/05/17(火) 05:03:09
なんで誰も答えてくれないの?
888886:2005/05/17(火) 05:03:35
早くしろデブ!こっちは忙しいんだよ
889886:2005/05/17(火) 05:03:58
時間がないので早く教えてくれません?
890886:2005/05/17(火) 05:04:02
ほんとどいつも役にたたねぇな
891デフォルトの名無しさん:2005/05/17(火) 05:04:11
ラウンジ帰れボケ
892886:2005/05/17(火) 05:04:33
まだかよ、さっさと教えろカス共、おまえらニートと違って俺は急いでるんだよボケ。
893884:2005/05/17(火) 05:04:37
俺の質問が先だよカス
894デフォルトの名無しさん:2005/05/17(火) 05:04:55
ラウンジって何?
895886:2005/05/17(火) 05:04:56
そのカルボナーラいつ食べ終わるの?早くしろって
896886:2005/05/17(火) 05:05:21
早く教えてください
897デフォルトの名無しさん:2005/05/17(火) 05:06:00
ラウンジのこれか・・・

http://etc3.2ch.net/test/read.cgi/entrance/1116269436/l50
1 名前:名無しさん?[sage] 投稿日:2005/05/17(火) 03:50:36 ID:???
専門板(IDなし推奨)の初心者質問スレとかで
まだ答えが出てないやつの質問者になりきって
「すいません、急いでるので早くしてもらえませんか?」って書いてくるイタズラ
898886:2005/05/17(火) 05:06:08
自己解決しました。
お騒がせしてすみません。
899886:2005/05/17(火) 05:06:15
900デフォルトの名無しさん:2005/05/17(火) 05:06:39
荒らしやめてよ・・・みんなVIPの人たちのように豊かな心を持とうよ・・・
901デフォルトの名無しさん:2005/05/17(火) 05:06:47
           _,,:-ー''" ̄ ̄ ̄ `ヽ、
         ,r'"           `ヽ.
     __,,::r'7" ::.              ヽ_
     ゙l   |  ::             ゙) 7
      |  ヽ`l ::             /ノ )
     .|  ヾミ,l   _;;-==ェ;、   ,,,,,,,,,,,,,,,ヒ-彡|    __________
      〉" l,_l "  -ー:ェェヮ;::)  f';;_-ェェ-゙レr-{   /久々にガリガリ
      |  ヽ"::::  ''   ̄´.::;i,  i `'' ̄  r';' } <  昔から60円だから困る
     . ゙ N l ::.    ....:;イ;:'  l 、   ,l,フ ノ  \__________
     ,.-''" ̄~~"'''―――-゙'''=-='''´ヽ.   ヽ   + 〇 /二二二/_. / ̄/ ./''7/ ̄ ̄ ̄ [][]
    /         / ̄~''''ー――‐''"~  _,.ヘ  l. o      / __  /  ̄  / // ./ ̄/ /
  /^!__       /`ー'ヽ__,、__,、__,.-‐'  \ l.       ̄  __,ノ /  ___ノ /.'ー' _/ / (R)
  |/ ,.┴、    l――---、――-、 \\     \ 十 ///____,/  /____,./   /___ノ王三l‐
  / / /ヽ    \   /⌒'" ̄`'"⌒ \\_....-‐'''l  /   囗/~7_,「三~KX>      /!ニニ!
 .|  /つ     `ー'----ノ ̄ ̄ヽー''"\l__,.-く ̄`ヽ     /__/ー‐' 7__/
  ヽ__(___.......... -―<____ノ―'''"  (  人 ̄ \
   \ `ー---‐'"ノ        \\__人  ( ̄ ̄ l
      ̄ ̄ ̄ ̄           `ー-----ヽ、 (~ ̄ノ
902886:2005/05/17(火) 05:07:14
    m n _∩                   ∩_ n m
  ⊂二⌒ __)    /\___/ヽ       ( _⌒二⊃
     \ \   /''''''   '''''':::::::\     / /
       \ \  |(●),   、(●)、.:|  / /
        \ \|   ,,ノ(、_, )ヽ、,, .::::|/  /
          \ .|   ´トェェェイ` .:::::::|  /    それが、ラウンジ精神
           \\  |,r-r-| .::::://     http://ex7.2ch.net/entrance/
             \`ー`ニニ´‐―´/
             / ・    ・ /
903荒らし撲滅:2005/05/17(火) 05:07:23
やっぱりここにもわいたかラウンジャーども



ものすごい悪質な悪戯を思いつきました
http://etc3.2ch.net/test/read.cgi/entrance/1116269436/l50


1 名前: 名無しさん? [sage] 投稿日: 2005/05/17(火) 03:50:36 ID:???
専門板(IDなし推奨)の初心者質問スレとかで
まだ答えが出てないやつの質問者になりきって
「すいません、急いでるので早くしてもらえませんか?」って書いてくるイタズラ

80 名前: 名無しさん? [sage] 投稿日: 2005/05/17(火) 05:03:24 ID:???
次の戦場です



http://pc8.2ch.net/test/read.cgi/tech/1108468718/l50
904デフォルトの名無しさん:2005/05/17(火) 05:07:28
またラウンジの奴らかよ・・・・・・・   懲りないな、ホント
VIPの奴らなんか、俺がジャニーさんに食われそうになった時、
みんなで家の壁ブチ破って助けに来てくれたほどなのに・・・・・・
同じ2ちゃんの板でも、なんでこんなに住人に差が出るんだよ・・・・・・
905デフォルトの名無しさん:2005/05/17(火) 05:08:01
いいかげんにしてください
906デフォルトの名無しさん:2005/05/17(火) 05:08:10
VIPPERやめろよ
907デフォルトの名無しさん:2005/05/17(火) 05:08:45
ったく、どうせラウンジはVIPのせいにでもするつもりだったんだろ?
でもな、VIPはいい奴らの集まりなんだ、残念だったな。

この間、俺は道端で1円拾ってそれを交番に届けようとしている若者を見た。
それとなく名前を聞いてみたら、「⊂二二二( ^ω^)二⊃ブーン だお」って言ってたぞ。
つまり、VIPはいい奴らの集まりなんだ。
908デフォルトの名無しさん:2005/05/17(火) 05:09:03
ラウンジって噂ではきいてましたけど本当にひどいところですね
909874:2005/05/17(火) 05:09:07
早く答えろクズ共
910デフォルトの名無しさん:2005/05/17(火) 05:09:31
http://ex10.2ch.net/test/read.cgi/news4vip/1116266649/
VIPって池沼隔離板の癖に何で外に出てくるんだよ
911デフォルトの名無しさん:2005/05/17(火) 05:09:57
俺の彼女がマクドoffでラウンコにセクハラされていたとき、
顔を真っ赤にして、彼女をかばってくれたのはチリチリパーマのおとなしそうなvipperさんでした



俺はニヤニヤ笑ってみてたけど
912デフォルトの名無しさん:2005/05/17(火) 05:10:20
ブラクラ貼んなハゲ
913デフォルトの名無しさん:2005/05/17(火) 05:11:10
ラウンジの人たちって本当にキモイよね?
914デフォルトの名無しさん:2005/05/17(火) 05:11:45
ここまでやったらVIPPERなんバレバレじゃん
馬鹿?
915デフォルトの名無しさん:2005/05/17(火) 05:12:28
ラウンコのみなさんやめてください><
916デフォルトの名無しさん:2005/05/17(火) 05:12:36
82 名前: 名無しさん? 投稿日: 2005/05/17(火) 05:07:23 ID:fMLGUKRU
717 名前: 国連な成しさん [sage] 投稿日: 05/05/17 05:01 ID:???
ラウンジってところは最悪ですね
学校の友達に「2ちゃんねるでラウンジは行っちゃダメだよ」って言っておきます

719 名前: 国連な成しさん [sage] 投稿日: 05/05/17 05:01 ID:???
ラウンジ許せねえ・・・

720 名前: 国連な成しさん 投稿日: 05/05/17 05:03 ID:z6bOE6xk
そういえばvipってけっこういい奴ららしいな
ラウンジは糞だけど



ここまでやれば逆にVIPが疑われるなw
いいぞお前らw


ラウンジは酷い人ばかりですね
917デフォルトの名無しさん:2005/05/17(火) 05:12:47
すっげえ悪質なイタズラ思いついたwwww
http://ex10.2ch.net/test/read.cgi/news4vip/1116266649/

いいかげん終わりにしようや
918デフォルトの名無しさん:2005/05/17(火) 05:12:59
>910
ブラクラ
919886:2005/05/17(火) 05:13:00
>>914
ラウンジ乙
920デフォルトの名無しさん:2005/05/17(火) 05:13:38
>>917
グロ貼るんじゃねーよ
921デフォルトの名無しさん:2005/05/17(火) 05:14:11
ラウンジの人がVIPのせいにしてるの?
922デフォルトの名無しさん:2005/05/17(火) 05:15:31
VIPの人がラウンジのせいに見せかけてるの
923デフォルトの名無しさん:2005/05/17(火) 05:16:03
VIPがラウンコに責任転嫁しようとしてる。
>>917のスレ見りゃ分かる
924デフォルトの名無しさん:2005/05/17(火) 05:16:53
VIPPERがラウンジの悪事をあばくの
925デフォルトの名無しさん:2005/05/17(火) 05:17:12
なんでそんなことするんですか?
926デフォルトの名無しさん:2005/05/17(火) 05:18:48
ラウンジャがVIPPERにないしょで水あめを食べてしまったから
927デフォルトの名無しさん:2005/05/17(火) 05:18:54
31 以下、名無しにかわりましてVIPがお送りします 2005/05/17(火) 03:17:43 ID:gJ6558WC0
以上ラウンジの馬鹿のしわざでした
    m n _∩                   ∩_ n m
  ⊂二⌒ __)    /\___/ヽ       ( _⌒二⊃
     \ \   /''''''   '''''':::::::\     / /
       \ \  |(●),   、(●)、.:|  / /
        \ \|   ,,ノ(、_, )ヽ、,, .::::|/  /
          \ .|   ´トェェェイ` .:::::::|  /    それが、ラウンジ精神
           \\  |,r-r-| .::::://     http://ex7.2ch.net/entrance/
             \`ー`ニニ´‐―´/
             / ・    ・ /

のAA張っておいた方がいいのか?

これ見ればわかるでしょ?
928デフォルトの名無しさん:2005/05/17(火) 05:19:53
886が別のスレにマルチに行っちゃった。
929デフォルトの名無しさん:2005/05/17(火) 05:21:12
もう分かったから。ラウンジ帰れよ
930デフォルトの名無しさん:2005/05/17(火) 05:21:36
ラウンジャーって必死だな
931デフォルトの名無しさん:2005/05/17(火) 05:25:51
160 名前:訴える名無しさん。[sage ラウンジ] 投稿日:2005/05/17(火) 03:46:38 ID:???
以上ラウンジの馬鹿のしわざでした
    m n _∩                   ∩_ n m
  ⊂二⌒ __)    /\___/ヽ       ( _⌒二⊃
     \ \   /''''''   '''''':::::::\     / /
       \ \  |(●),   、(●)、.:|  / /
        \ \|   ,,ノ(、_, )ヽ、,, .::::|/  /
          \ .|   ´トェェェイ` .:::::::|  /    それが、ラウンジ精神
           \\  |,r-r-| .::::://     http://ex7.2ch.net/entrance/
             \`ー`ニニ´‐―´/
             / ・    ・ /


161 名前:訴える名無しさん。[sage] 投稿日:2005/05/17(火) 03:50:34 ID:???
これはラウンコの連中ですね・・・

162 名前:訴える名無しさん。[sage] 投稿日:2005/05/17(火) 03:51:38 ID:???
ラウンジの奴らはほんとにたち悪いな・・・

163 名前:訴える名無しさん。[sage] 投稿日:2005/05/17(火) 03:51:43 ID:???
えぇ、もうラウンコの人にはうんざりですよね

164 名前:465[] 投稿日:2005/05/17(火) 03:56:51 ID:e6MkygGj
ほんとにラウンジには呆れ果てますね

165 名前:訴える名無しさん。[sage] 投稿日:2005/05/17(火) 03:57:25 ID:???
もうラウンジに失望されっぱなしですよ

これ見ろよ
VIPPERってこんなことするんだぜ
932デフォルトの名無しさん:2005/05/17(火) 05:38:29

     ザッ            ヘ__Λ ヘ__Λ ヘ__Λ ヘ__Λ
                __,/ヽ_ /ヽ__,.ヘ /ヽ__,.ヘ _,.ヘ ,.ヘ    ザッ
    /\___/ヽ   /\___ /\___/ヽ _/ヽ  /\___/ヽ
   /''''''   '''''':::::::\/''''''   '''/''''''   '''''':::::::\   /''''''   '''''':::::::\
  . |(●),   、(●)、.:|(●),    |(●),   、(●)、.:|、( |(●),   、(●)、.:|
  |   ,,ノ(、_, )ヽ、,, .::::|   ,,ノ(、_, )|   ,,ノ(、_, )ヽ、,, .::::|_, )|   ,,ノ(、_, )ヽ、,, .::::|
.   |   `-=ニ=- ' .:::::::|   `-=ニ= |   `-=ニ=- ' .:::::::|ニ=|   `-=ニ=- ' .:::::::|
   \  `ニニ´  .:::::/\  `ニニ \  `ニニ´  .:::::/ニ´ \  `ニニ´  .:::::/
   /`ー‐--‐‐―´\ /`ー‐-  /`ー‐--‐‐―´\-‐‐ /`ー‐--‐‐―´\
「vipから来ますた」「vipから来ますた」「vipから来ますた」「vipから来ますた」


                                    それが、ラウンジ精神
                                    http://ex7.2ch.net/entrance/
933886 ◆jG/Re6aTC. :2005/05/17(火) 06:48:24
>>887-は自分ではありません。何で突然ここがこんなに荒らされているのでしょう?
934933 ◆Ikx9obzOAY :2005/05/17(火) 06:50:00
>>933
無視が一番ですよ。
935デフォルトの名無しさん:2005/05/17(火) 07:08:13
2chには、暇な奴らが集まる板があるのですよ。
http://ex10.2ch.net/news4vip/
とか。

で、しょっちゅう、
こういう「他の板に突撃する」系のスレが立つわけですよ。
http://ex10.2ch.net/test/read.cgi/news4vip/1116266649/
936デフォルトの名無しさん:2005/05/17(火) 10:12:08
 
937デフォルトの名無しさん:2005/05/17(火) 13:20:53
Indyについて詳しくかかれてる日本語サイトを教えてください
938デフォルトの名無しさん:2005/05/17(火) 15:26:03
939デフォルトの名無しさん:2005/05/17(火) 15:49:43
最近、C++Builderを触っているものですが、
「オブジェクトの配列」化の方法がわかりません。

BitBtn1,BitBtn2,BitBtn3,BitBtn4,,,,,をBitBtn(n)という風にするには
どうすれば良いでしょうか?

もしかしてできないのでしょうか?
940デフォルトの名無しさん:2005/05/17(火) 15:55:13
>>939
FindComponentで列挙してstd::vector<TBitBtn*>に突っ込むのはだめか?
941デフォルトの名無しさん:2005/05/17(火) 15:55:36
>>939
TListをつかってみたら?
パワフルテクニック集にも載っていたはず
942デフォルトの名無しさん:2005/05/17(火) 16:56:01
オブジェクトの数が明確に決まっているのなら
TBitBtn* BitBtn[5];

BitBtn[0]=BitBtn1;//0は空けといたほうがわかりやすいな
BitBtn[1]=BitBtn2;
...
でもいいような気がするけど、これじゃ駄目なの?
943デフォルトの名無しさん:2005/05/17(火) 17:27:14
オブジェクトのタイマーの秒数を0にしたら、
プログラム終了前に再度はじめから処理が流れてしまうのでしょうか?
終了してから、また流れるのでしょうか?
944939:2005/05/17(火) 17:37:12
>>940,941
なんせBuilder初心者なもんで、「FindComponent?」「TList?」という具合でして
ぐぐったら参考URLが見つかりました。
http://www.geocities.co.jp/SiliconValley/4805/bcbtips/bcbtips063.htm
オブジェクトへのポインタを配列にしてアクセスするこの方法でうまくいきました。

>>942
オブジェクトが固定の場合はその方法があっさりしていて、これも正常動作しました。

皆さま、どうもありがとうございました。
945デフォルトの名無しさん:2005/05/17(火) 19:12:40
C++Builder6pro + update#4 on WinXP SP2
1) ファイル(F) | 新規作成(N) | その他(O)...
2) 新規作成ダイアログから「コンソール ウィザード」を選択
 ソースの種類: C++
 VCLを使う、コンソール アプリケーションにチェック
3) OKボタンを押下
4) 自動生成されたUnit1.cppに次のコード(+が行頭にあるライン)を書く:
 //---------------------------------------------------------------------------
 #include <vcl.h>
 #pragma hdrstop
 //---------------------------------------------------------------------------
 #pragma argsused
 int main(int argc, char* argv[])
 {
 + Graphics::TBitmap *b = new Graphics::TBitmap;
 + b->Free();
  return 0;
 }
 //---------------------------------------------------------------------------
5) プロジェクト(P) | Project1 を再構築(R)すると、次のエラーが。
[リンカ エラー] 外部シンボル 'Graphics::TBitmap::' が未解決(D:\〜\UNIT1.OBJ が参照)
[リンカ エラー] 外部シンボル '__fastcall Graphics::TBitmap::TBitmap()' が未解決(D:\〜\UNIT1.OBJ が参照)

コンソール ウィザードではなく、アプリケーションの場合は、上記エラーはでません。
また、上記エラーは実行時パッケージとしてvclを使用するように設定すると、
main()関数の実行前にAccessViolation例外が発生します。鬱です。
『[builder-ml: 35293] 外部シンボルが未解決』から始まるスレッドが該当しそうですが
「実行時パッケージを使用」しない設定での解決方法がわかりません。
どなたかご教示いただければ幸いです。
946デフォルトの名無しさん:2005/05/17(火) 19:31:55
>>945
再現できないな。実行時パッケージの使用の有無に関わらずコンパイル・実行できるけども。
関係ないかもしれないけど、Delphi6入れててbcb6fix.exeを実行してないとかない?
947875:2005/05/17(火) 20:09:04
亀レスですみませんm(_ _)m
レスくれた皆様ありがとうございます^^;A

で、嵐?なのかは知りませんが、私からみたら大助かりの>938氏の
サイトを参照したのですが・・・
これに書いてあるのがDelphiのインスコ方法で、正直BCBのインスコが
わからない所存です_| ̄|○
どなたかぷりーず
948875:2005/05/17(火) 20:11:28
↑すみません、嵐っぽいのは>938氏以外の方
なんか昨日の夜は相当吹雪いていたみたいですね
949デフォルトの名無しさん:2005/05/18(水) 00:25:21
 











950デフォルトの名無しさん:2005/05/18(水) 02:40:50
Drawing text with a transparent background:

Canvas->Brush->Style = bsClear;
Canvas->TextOut( 0, 0, "Transparent Text" );

Aligning the caption on a button:

DWORD dwStyle = GetWindowLong(Button1->Handle,
GWL_STYLE);
dwStyle = dwStyle | BS_RIGHT;
//(or BS_LEFT, or BS_CENTER)
SetWindowLong(Button1->Handle, GWL_STYLE, dwStyle); Button1->Invalidate();
951デフォルトの名無しさん:2005/05/18(水) 03:34:36
BCBでDirectX(教えてください)
952デフォルトの名無しさん:2005/05/18(水) 03:58:44
まともな日本語(書いてください)
953デフォルトの名無しさん:2005/05/18(水) 04:10:56
954デフォルトの名無しさん:2005/05/18(水) 10:05:33
おい誰か印ディーについてかいてあるURLはれつってんだ
955デフォルトの名無しさん:2005/05/18(水) 11:11:10
CM_MOUSEENTERイベントでTMessage &Msgがどのクラスのコントロールか識別したいのですが
どのように記述すればいいですか?

void __fastcall OnMouseEnter( TMessage &Msg )
{
  // ここでTLabel以外のコントロールをける
  // ↓こんな感じでTLabelを取得したいです
  TLabel *l = dynamic_cast<TLabel *>(Msg.LParam);
}
956デフォルトの名無しさん:2005/05/18(水) 11:53:10
教えてください
一つのアプリケーションで開いたモードレスフォーム一つずつに
タスクバーのタイトルバー(?名前わかんない)を表示させたいのですが
どの様にしたらいいのでしょうか。お願いします。
957デフォルトの名無しさん:2005/05/18(水) 12:11:37
>>955
Lparamがインスタンスなら実行時型識別で識別できるだろ。
VCLコントロールならTObject派生(Delphi型クラス)のはずだから基底クラスのインスタンスから派生先の型を取得できる。
958デフォルトの名無しさん:2005/05/18(水) 12:21:03
TPanelがCM_MOUSEENTERイベントに反応するにはどうしたらよいのですか?
959デフォルトの名無しさん:2005/05/18(水) 14:32:52
スタートメニューを非表示にする方法を教えてください
960デフォルトの名無しさん:2005/05/18(水) 14:45:23
>>959
TClockのソースを見よ
961デフォルトの名無しさん:2005/05/18(水) 15:54:12
>>960
それどこにあんの
962デフォルトの名無しさん:2005/05/18(水) 16:08:09
Indy9入れたんですが、これ何がどう変わったのかわかりませんが
963デフォルトの名無しさん:2005/05/18(水) 17:30:32
TNMSMTPを使用してメール送信プログラムを作成していたのですが
認証が必要なメールサーバーに接続できなかった為、
某所で質問したところIndyのTIdSMTPを使用すれば可能だと知りました。

ぐぐってもBuilderでのサンプルが書かれているサイトが
見つけられませんでした。
TIdSMTPについて詳しく書かれている所を教えてください。
964デフォルトの名無しさん:2005/05/18(水) 17:40:33
>>963
ObjectPascalのコードくらい読めないか?普通。
とりあえず./CBuilder6/Help/op.hlpよんどけ。
965デフォルトの名無しさん:2005/05/18(水) 17:40:59
oplg.hlpだったorz
966デフォルトの名無しさん:2005/05/18(水) 18:08:59
誰もCBuilder6なんて一言もいってないのに・・・
>>964はただの基地外か
967デフォルトの名無しさん:2005/05/18(水) 18:10:17
>http://www.ahris.jp/ahris/tips/bcb/bcb0007.txt
>QuickReportのプリンタ設定(BCB4用)
>BCB付属のQuickReportは結構わがままで、Windowsのプリンタの設定を
>無視してしまします。

とありますが、BCB6でもそうでつか?
968デフォルトの名無しさん:2005/05/18(水) 22:15:20




























969デフォルトの名無しさん:2005/05/19(木) 05:34:02
970デフォルトの名無しさん:2005/05/19(木) 08:57:29
971デフォルトの名無しさん:2005/05/19(木) 09:15:34
C++BuilderにはCSVを簡単に読み込んだり書き込んだりする方法があったと思うのですが、ググっても見つかりません。
どなたか教えていただけないでしょうか?
972デフォルトの名無しさん:2005/05/19(木) 09:44:07
http://www2.ttcn.ne.jp/~tkky/Tips/StringList/stringlist1.htm

TStrings型にテキストデータを読込む
http://www.yukibow.com/bcb/B0309.html

TStrings型をテキストデータとしてファイルに書込む
http://www.yukibow.com/bcb/B0310.html
973デフォルトの名無しさん:2005/05/19(木) 09:44:58
//テキストファイル "test.txt" を StringList に読み込んで文字列を取得する
void __fastcall TForm1::Button2Click(TObject *Sender)
{
TStringList *slist = new TStringList;

//テキストファイル "test.txt" を読み込む
slist->LoadFromFile("text.txt");
slist->CommaText = slist->Text;
//ファイル内のカンマで区切られた 2 番目の文字列を取得
Edit1->Text = slist->Strings[1];
delete slist;
}
//----------------
974デフォルトの名無しさん:2005/05/19(木) 09:46:00
203
テキストファイル(pczmn.txt)の2行目を読み込む



AnsiString aa;
TStringList *TSL = new TStringList;
TSL->LoadFromFile("pczmn.txt");
aa = TSL->Strings[1];
delete TSL;
975デフォルトの名無しさん:2005/05/19(木) 10:25:07
976デフォルトの名無しさん:2005/05/19(木) 10:30:46
QuickReportのプレビュー画面のプリンタセットアップボタンの反映が、
画面閉じた後になるため印刷に反映されませんが、
何とかなりませんか?
977デフォルトの名無しさん:2005/05/19(木) 11:08:09
指定文字までを取得したい場合、どうすればいいのでしょうか?

str="あいう,かきく"
と、変数に入っている場合、最初のカンマまで("あいう,")を取得したいのですが…
978963:2005/05/19(木) 11:53:47
>>964
>>966
色々試したら自己解決しました。失礼しました。
ちなみにBCB5ですた。
979デフォルトの名無しさん:2005/05/19(木) 11:54:04
980デフォルトの名無しさん:2005/05/19(木) 12:06:31
>>977
String str="あいう,かきく;
String buf = str.SubString( 1, 6 );
981デフォルトの名無しさん:2005/05/19(木) 13:17:57
C++Builder10をさっさと出してください
982デフォルトの名無しさん:2005/05/19(木) 14:27:30
ListViewからエクスプローラにファイルをD&Dする方法を教えてください
983デフォルトの名無しさん:2005/05/19(木) 14:53:27
>>982
DoDragDropでぐぐれ
984デフォルトの名無しさん:2005/05/19(木) 15:15:52
複数のビットマップ画像からaviファイルを作成する方法を教えてください。
985デフォルトの名無しさん:2005/05/19(木) 15:58:04
>>983
ダメだわからん教えてくれかすさん
986デフォルトの名無しさん:2005/05/19(木) 16:33:16
毎度おなじみ
987デフォルトの名無しさん:2005/05/19(木) 16:47:35
廃人回収でございま〜す〜〜
988デフォルトの名無しさん:2005/05/20(金) 02:29:55
989デフォルトの名無しさん:2005/05/20(金) 11:10:37
>>988
もうわかったから、貼るのやめれ
990デフォルトの名無しさん:2005/05/20(金) 13:38:42
まだまだやっぱりおまえは子供だ全然全くわかってないよ
なんて言ったら分かるのかなぁ





どんなにアタシが素晴らしいかを!
991デフォルトの名無しさん:2005/05/20(金) 13:46:48
992デフォルトの名無しさん:2005/05/20(金) 15:13:01
埋め
993デフォルトの名無しさん:2005/05/20(金) 17:35:39
運命
994美香 ◆RQ0Spv3q06 :2005/05/20(金) 19:14:45
(´・_・)?
995デフォルトの名無しさん:2005/05/20(金) 20:27:35
>>990
うるせえボケナス大魔神!
おとといきやがれこの亀虫!
996デフォルトの名無しさん:2005/05/20(金) 20:28:20
(o_o^)??
997デフォルトの名無しさん:2005/05/20(金) 20:29:48
998デフォルトの名無しさん:2005/05/20(金) 20:31:07
ume
999デフォルトの名無しさん:2005/05/20(金) 20:32:02
999
1000デフォルトの名無しさん:2005/05/20(金) 20:32:53
1000
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。