404 :
デフォルトの名無しさん :
2005/04/08(金) 06:12:07 TImageに半透明で描画したいのですがどのようにしたらよいのでしょうか?
405 :
デフォルトの名無しさん :2005/04/08(金) 17:20:36
406 :
デフォルトの名無しさん :2005/04/08(金) 17:23:58
void AlphaDraw(int X,int Y, //{描画先座標} Graphics::TBitmap *Bmp1, Graphics::TBitmap *Bmp2, //{ビットマップ} float Alpha, //{透過度} TColor TransParentColor) //{背景色(完全透過します)} {
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
411 :
デフォルトの名無しさん :2005/04/08(金) 18:42:14
コピペ野郎か
折れは安いブレンド米でいいです
413 :
デフォルトの名無しさん :2005/04/08(金) 19:02:55
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
416 :
デフォルトの名無しさん :2005/04/08(金) 19:32:37
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
424 :
デフォルトの名無しさん :2005/04/09(土) 10:06:22
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
誰だよ空上げする奴は?キショなぁ
431 :
デフォルトの名無しさん :2005/04/09(土) 18:58:45
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です。
434 :
396 :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
>>433 BCB6+Update4+WinXP Pro SP2だけど、そんなファイルないぞ。
>>433 CDのInstall.rtf (.txt) に解決方法らしきものが載っとる
あいやBCBをインストールしたフォルダにもあるか
BORDBK61.EXEならBINフォルダにあるね。
regsvr32で登録するのか・・・
442 :
デフォルトの名無しさん :2005/04/11(月) 13:43:35
いつBCB10でんだこのやろう
一生待ってろハゲちゃびん
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);
えぇけっしとるのぉ(*´Д`)ハァハァ うはっwwwおkwwwうえっwww??
コピペだったり中途半端なコードだったり空行だったりの、変なageレスはマジで何なん?
447 :
デフォルトの名無しさん :2005/04/11(月) 16:18:45
別に
池沼が住み着いた
449 :
デフォルトの名無しさん :2005/04/11(月) 16:48:48
(^^
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'; こうじゃないとエラーでそう
>>453 AnsiString::operator[]は1始まりなので
AnsiString asbuf = "ABCD";
asbuf.SetLength( 256 );
asbuf[5] = '1';
ただ普通はこういう使い方はしないでしょ。
AnsiString str = "ABCD";
str += '1';
これで十分。
>>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
>>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);
}
}
464 :
459 :2005/04/13(水) 14:53:21
>>461 nasm使えません…。
>>462 OnSelectにtry〜catch文を仕込んでやってみましたが、ダメでした。
>>463 できました!
やはりVCLのバグだったんですね…。
ありがとう御座います。助かりました。
余談ですが、
TColorDialogならあらかじめCustomColorsを設定しておけば良いのですが
TColorBoxだとCustomColorsってプロパティ無いんですよね。
そういう場合、SendMessage()で予め設定しておけるんでしょうか?
SendMessage()ってほとんど知らないので、学習しなきゃなぁ。
>>464 CustomColorsの設定は残念ながら_。
TColorBoxの派生コンポを作って、PickCustomColorメソッドをオーバーライドすれば可能だけどね。
上のバグもこのメソッドをいじって根本的に解決できる。
(内部で作成してるColorDialogのColorが-1(未作成の色)を返したら、強制的に0(黒)にするとか無視するとか)
ソースがあるなら、TCustomColorBox.PickCustomColorのコードを見てみるといい。
466 :
デフォルトの名無しさん :2005/04/14(木) 01:57:19
467 :
デフォルトの名無しさん :2005/04/14(木) 17:08:08
あるファイルから別のファイルを見たときの相対的なディレクトリの位置はどのように取得すればよいのでしょうか?
>>467 ExtractRelativePath
469 :
本田 :2005/04/14(木) 22:21:49
470 :
デフォルトの名無しさん :2005/04/15(金) 02:35:27
Check1BoxのCheckedプロパティをいじっただけで、Check1Click(TObject *Sender)が実行されてしまうことはありうる? FromCreateでレジストリから以前の状態をCheckedに読み込んだだけで、Check1Click(TObject *Sender)が実行されてしまうのだけど・・・
>>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につっこむにはどうキャストしたらいいですか?
>>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を使っていた人は注意して下さい。
>>476 ObjectPascalの文字列型互換だからしょうがない
ひょっとしてM$にもGKっているのか? w
ゴールキーパー?
480 :
デフォルトの名無しさん :2005/04/16(土) 11:06:19
AnsiStringはhoge[1]ってアクセスできるのか? いまBCBが手元にないので確かめられないのだが、 AnsiString hoge[5]; hoge[1]="Nakajima"; とした場合は、hoge[1][1]にNが入るってこと?
>>480 その場合は
hoge[0][1]にNがはいるんじゃ
482 :
デフォルトの名無しさん :2005/04/16(土) 13:12:09
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は、ハンドルをもってないからなんでしょうか?
意味不明
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を割り当ててんだけど これって左クリでポップアップする方法教えれ。オブジェクトインスペクタの設定でな パネルのクリイベで自分で呼び出すってのはイラン
495 :
デフォルトの名無しさん :2005/04/18(月) 18:52:48
なんだおまえらしらねーのかよ、つかえねーやつらだなおまえらって
マウスの設定でボタンの左右を入れ替えたら完璧にできるお。
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
ShareやnyのファイルリストみたいにListViewで マウスボタンを押した状態でカーソルを移動させ て範囲内の項目を全て選択状態にするにはどう やったらできますか?BCB6Proです。
MultiSelect じゃなくて?
>>503 CtrlやSiftを押しながらではなくてマウスボタンを押しながら
カーソルを移動させるだけで破線の四角い枠が表示されて
範囲内の項目全てが選択状態になりますよね?
あれを実現したいのです。
RowSelect
VC6で作ったMFCのアプリケーションをBCB6でコンパイルするとafxres.hを開くことが出来ないと怒られます。 カーソル位置のファイルを開くで開いてみると、ちゃんとBCBがインストールされているディレクトリにあるみたいで、 インクルードのパスもMCFのディレクトリに通ってるみたいです。 何故エラーが出るのでしょうか。 FAQみたいな質問で申し訳ないです。
上記で書き忘れたのですが、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
>>509 Delphi2006またはDelphi2007をお待ちください。
513 :
504 :2005/04/20(水) 04:25:51
C++Builder 6.0で開発してます。 TTreeViewのスクロールバーって消えないのでしょうか? ShowScrollBarでやってみても一時的には消えるがやっぱり駄目 サイズ変更の微妙なサイズ変更(横スクロールバーが出る瞬間) とかするとまた出てきてしまいます。 SetWindowLongでむりやりスタイル変更 ULONG lStyle = ::GetWindowLong( TreeView1->Handle, GWL_STYLE); lStyle ^= WS_VSCROLL; ::SetWindowLong( TreeView1->Handle , GWL_STYLE, lStyle); とかしても、駄目っぽいです。 どなたか御存じないでしょうか?
>>508 そうなのですか・・・
>>510 それも試してみたのですが、やっぱり駄目でした。
アドバイスありがとうございました。
色々試してみます。
516 :
デフォルトの名無しさん :2005/04/20(水) 21:56:51
コーディング規約 public 宣言と private 宣言 グローバル g gstrUserName モジュールレベル m mblnCalcInProgress プロシージャ内 なし dblVelocity
すみません、質問です。 Borland C++Builderのチュートリアルをやっていてつまってしまいました… 2:フォーム上の ActionManager1 を選択し,オブジェクトインスペクタで Images プロパティに ImageList1 を設定します。 とあるのですが、ImageList1と言うものがプルダウンに表示されません 入力しても駄目です… これは、環境の設定とかが悪いのでしょうか? Borland C++Builder Professional Version6.0[Build10.166] を使用しています。 どなたか教えて下さい 宜しくお願いします。
>>517 フォーム上にTImageListコンポーネント置いてあるか?
519 :
517 :2005/04/21(木) 13:00:36
>>518 やってしまいました・・・置いてませんでした_| ̄|○
申し訳ありませんうまく行きました有り難うございます。
これからも精進致します…
TMemoコンポーネントに13Mのテキストファイルを LoadFromFileしたいのですが160000行もあり、読 み込みに20秒ぐらい掛かってしまいます。 ListViewのようにMemoもOwnerDataのような事が 可能でしょうか?また、できるならどのようにすれ ば実現できますか?
521 :
デフォルトの名無しさん :2005/04/21(木) 13:48:51
ん〜
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:」のもとで宣言し パブリック変数になります。 フォームに対応したユニット内のすべてのモジュール(関数)から使用できる 変数を、 『プライベート変数』と呼びます。 モジュール(関数)の中で宣言された変数は 『ローカル変数』 と呼ばれます。
>>514 スタイルにTVS_NOSCROLLを加える。
既にスクロールバーを持ってるやつを、SetWindowLongで変更する場合は、
変更後にShowScrollBarを呼ばないと消えない模様。
527 :
デフォルトの名無しさん :2005/04/22(金) 10:39:13
質問させていただきます。 C++Buirder5で開発中なのですが、 VBでいうMid関数と同じ役割とする関数ってC++Buirderにもありますか? もしあるのであれば、教えてくださいm(_ _)m
AnsiStringならSubStringメソッドかな?
531 :
デフォルトの名無しさん :2005/04/22(金) 19:23:19
いちいちヘルプ見れとかウザイ
>>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); //ん } //-------------------------------
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
なんで荒れてるの?
いつもの基地外さ
548 :
デフォルトの名無しさん :2005/04/24(日) 14:58:23
ApplicationEventsのOnIdleイベントは例えばデュアルコアのCPUで片方が空いてるときに、発動しますか?
春真っ盛り
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()関数で、イメージサイズを変えるとあまり綺麗にコピーできないのですが、 もう少し綺麗にコピーできる方法はないでしょうか?
>>548 OnIdleってそのアプリが処理するメッセージがないときに呼ばれるものだから、CPUの忙しさとは関係ないのでは。
CPUがどんだけ忙しくたって、キューにメッセージがなければそのアプリはアイドル状態って判断されるわけだし。
553 :
デフォルトの名無しさん :2005/04/24(日) 19:04:23
CopyFileでサイズの大きいファイルをコピーすると、 コピー中は、プログラムが固まって操作できなくなるんだけど これを回避する方法ってありますか?
スレッド
>>553 バッファ使うなりして自前でコピーしたら?
現在何%コピーできてるかとかの表示もできそう
だし。
ただ、正確にコピーできてるかファイル比較
したりする必要あるなら多少面倒っぽいかも。
ところでCopyFileの速度ってどうなの?
高速ファイルコピー専用のアプリも多いみたい
なんだけどファイルコピーが低速なのはエクスプロ
ーラ上だけ?
と、自分では何も確認してない俺がレスしときますね。
>>554-555 どうもありがとうです。
なんとか、スレッドを使ってうまくいったです。
でも、コピー失敗するから、ウェイトとかファイル比較とか
結構ややこい。
高速確実にファイルコピーできる方法があったら、
俺も知りたいです(´・ω・`)
557 :
デフォルトの名無しさん :2005/04/25(月) 00:34:43
Application->ProcessMessages();// 溜まっているイベントの処理
558 :
デフォルトの名無しさん :2005/04/25(月) 03:14:22
TThreadでメインFormからThreadのExecuteメソッドが実行中であるかどうかを判別する方法を教えてください
Executeの最初と最後で(ry
560 :
デフォルトの名無しさん :2005/04/25(月) 05:46:28
C++Builderからsusieのpluginを利用するサンプルプログラムはありませんか?
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
>>564 ヘルプの「ユニット」ってやつのヘッダ。
VCLのヘッダは拡張子hppだから気をつけて。
567 :
デフォルトの名無しさん :2005/04/26(火) 13:40:07
C++Builder5で開発中の初心者です。 ScrollBoxについてなのですが、 これは直接文字を書き込むことはできないのでしょうか? もしできるのであれば教えてください。
>>568 >これは直接文字を書き込むことはできないのでしょうか?
「直接文字を書き込む」とは、
ScrollBox のどこにどう書き込みたいのか?
次第による。
570 :
デフォルトの名無しさん :2005/04/26(火) 19:20:45
UTCを取得する関数ってありますか?
>>570 ::GetSystemTime(LPSYSTEMTIME);
じゃだめなのか?
>>526 レスがかなり遅くなりましたがありがとうございます。
それで、やってみます。
573 :
デフォルトの名無しさん :2005/04/27(水) 19:09:15
C++Builder1でTListViewにチェックボックスを付ける方法を教えてください
575 :
デフォルトの名無しさん :2005/04/28(木) 01:31:00
C++Builder6をインストして、 何の設定もしないままソース書いたんですが動きません。 どう設定すればよいか教えてください。
>>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){ にしてみたら?
>>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 が開けません
とでます。
>>579 できました。
ありがとうございました。
>>577 だから、分からんかったら全部書けって言ってるんだ。
そのプロジェクト、どういう手順で作成した?
それをはっきりさせて。
あと、「ファイル」→「新規作成」→「アプリケーション」で
新しいプロジェクトをつくって、なにもせずそのまま実行してごらん。
それでエラーが出るかどうか報告して。
>>582 いままで立ち上げてUnit1.cppに打ってました。
何もせず実行すると577で書いたエラーがでます。
584 :
デフォルトの名無しさん :2005/04/28(木) 04:48:43
TImageのPicture->Bitmapに画像を読み込みました。そしてPicture->Bitmap->SaveToFileでセーブしてみるときちんと 画像が書き込まれるのに、画面上でTImageの中に画像が表示されません。TImageのVisibleはtrueになっています。 表示されない原因として何が考えられるでしょうか?
なんか問題文みたいな書き方だな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にチェックボックスを付ける方法を教えてください
590 :
デフォルトの名無しさん :2005/04/28(木) 12:43:37
C++Builder1でTListViewにチェックボックスを付ける方法を教えてください
>>587 【VCLリファレンスより】
EOutOfResources は,Windows ハンドルを割り当てることができなかったときに送出される例外クラスです。
メモリが十分ある事が関係するとは思えないが?
593 :
デフォルトの名無しさん :2005/04/29(金) 05:29:49
>>550 どこで new DisplayClass() してるの?
Form と生成消滅のタイミングが同じなら
DisplayClass は Form の protected/private メンバにしたほうがよくない?
で、「OnCreate(Form::FormCreate) で new DisplayClass()」してね。
Form のコンストラクタで new したり、
Form に埋め込むのはやめたほうがいいよ。
VCL は普通の C++ じゃないからね。
595 :
550 :2005/04/29(金) 13:41:41
>>594 関数の外で
DisplayClass Display;
とグローバル変数として宣言しています。
これがいけないのでしょうか…
>>595 なんでグローバルという気もするけど、そっちは置いといてよさそう?
自分で TBitmap を割り当てているようなコントロールの
Bitmap に LoadPicBitmap を割り当てたとか?
...->Bitmap->Assign(Display.LoadPicBitmap);
↑ほんとはこう書かないといけないのに
...->Bitmap = Display.LoadPicBitmap;
↑こう書いているとか?
どこかのコントロールで二度目のdeleteが発生してる可能性のほうが高いのかな。
>>595 んん?
Application->Terminate() って、最近書いた記憶ないや
これもなんか変?
>MainForm プロパティを使うと,アプリケーションのメインウィンドウとして動作するフォームを指定できます。メインフォームは,アプリケーションのメインプログラムで最初に作成されるフォームです。メインフォームを閉じるとアプリケーションは終了します。
598 :
550 :2005/04/29(金) 16:56:49
Application->Terminate()は、これを書いておかないとなぜか一旦閉じたウィンドウが 復活してしまうのです。 他のハンドラからShowプロパティが呼ばれているのだと思い、destroyedというフラグ変数を OnCloseハンドラで立て、OnMouseDownなど、コードのある全てのハンドラの先頭に if(destroyed)return; と書いてもまだ復活してしまうのです。 なぜなんでしょう?
599 :
550 :2005/04/29(金) 17:03:58
Showプロパティ->Showメソッド
600 :
594 :2005/04/29(金) 17:47:36
ずるずると怪しいところが増加してます コードの書き方がたいへんユニークみたいやなあ それが原因ぽい 勇気をもってどっかにコード一式上げてみるかぃ
601 :
550 :2005/04/29(金) 18:02:11
602 :
594 :2005/04/29(金) 18:38:37
OnCreateでは通常はオブジェクトの生成と初期設定のみ記述だよ OnCreate で失敗すると、Form のロードに失敗したりするからねえ がんがー
604 :
550 :2005/04/30(土) 00:25:45
できました onClickを契機にメインルーチンを組んだらonCloseでインスタンスを解放できました。 Application->Terminate()も記述しないでプログラムが終了しました。 ただまれに「フォームが復活」することがあったのですが、 onClickからのルーチンを、とにかくonCloseで立てる「destroyed」フラグが 立っていたら作業をすぐやめる、ように書き直したら現象が出なくなりました。 ありがとうございました。 ソース晒しですが、とても恥ずかしい種類のプログラム(要するにエロゲ)なので ご勘弁下さい…
まあ、なんて破廉恥な
たぶん
>>604 のコードはとっても恥ずかしいコードなんだな
void __fastcall Sex::Incert(int WomanNo)
{
AnsiString str = "ずぶっ、ぬぷぷぷぷ";
.
.
.
}
>>604 エロゲで恥ずかしいのはテキストやCGであって
エンジン部分ではないと思うぞ・・・。
まさかソースに直接エロ台詞が書かれてるわけでもあるまいに。
C++ BuilderのGroupBoxはVC++ .NETのそれと 見た目が違いますね。(XPスタイル適用時) VC++ .NETと同じ様にするにはどうすればいい でしょうか
609 :
594 :2005/04/30(土) 12:04:04
>>606 それを言うならInsertぢゃ…
>>604 アプリ終了時にオブジェクトがアンロードされる順番が見えていないのでこまっとるのだろう
終了処理に入る前に自分が所有していないオブジェクトへの参照は全部 NULL にしておく
各イベント処理は destroyed を使うのではなくて
if (RefMainForm/* != NULL*/) { 処理; }
みたいにしてくれろ
参照を外す、NULL 放り込むという基本動作が大事だなあ
ぢゃ、そういうことで
UNICODE のアプリケーションを作るにはどうすればいいですか? やってみたら WinMain が未解決になって対処法がわかりません。 #include <windows.h> #include <tchar.h> int WINAPI wWinMain(HINSTANCE, HINSTANCE, PTSTR, int) { return 0; }
>>610 それMFC?
C++BuilderならWideStringやstd::wstringで書きまくるべし
Win9xはごく一部のUnicode関数しか実装していないのよねぇ
612 :
610 :2005/04/30(土) 20:02:59
MFCではないです。 知りたいことだけを言えば、 『エントリポイント関数を、 WinMain から wWinMain にするには どうすれば良いか?』ということです。
>>612 プロジェクトオプション→ディレクトリ/条件タブ→条件定義に「_UNICODE」を追加。
又はオプションソースを開いて、コマンドラインオプションに「-WU」を追加。
#include <windows.h>
#include <tchar.h>
extern "C" int WINAPI _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow)
{
return 0;
}
614 :
610 :2005/05/01(日) 00:02:04
>>613 解決しませんでした。
メイク可能なプロジェクトファイル一式をうpしてくれたら幸いです。
あれ?じゃあオプションソースに「c0w32.obj」があったら「c0w32w.obj」に書き換えて。 BCB上で書き換えても反映されないかもしれないから、BCB終了して適当なエディタで。 それでもできなければうpする。
616 :
610 :2005/05/01(日) 00:46:25
>>615 無理でした。
メイクファイルを作成して、そのc0w32.objを書き直した場合は成功しますが、
手間がかかるので、より簡単な方法があるなら知りたいです。
うちでは出来てるからなぁ。お手上げ。
618 :
610 :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というのが常に表示されているのですが、これを消したいのですが どうすればいいですか?
>>619-620 ヘルプを読む。
それでも分からなかったら、
自分の書いたソース晒して何がどう上手くいかなかったのか具体的にかけ。
>>621 TCppWebBrowser::LocationURL
>>622 TMemo::Lines
ってか人に聞く前にヘルプちゃんと読め。
624 :
デフォルトの名無しさん :2005/05/01(日) 11:57:11
タスクバーを除くデスクトップサイズを取得するにはどうしたらよいのでしょうか?
ここの回答者もヘルプ機能の一種ですから、 ここで質問することとヘルプを参照することはイコールです。
>>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
628 :
624 :2005/05/01(日) 12:55:54
親切な回答、ありがとうございます。
次回作は?
>>622 オブジェクトインスペクタでMemo1、Linesプロパティの右の...をクリック。
文字列リストの設定ダイアログで"Memo1"の文字列を削除。
次回作っつーと映画みたいだな
633 :
デフォルトの名無しさん :2005/05/01(日) 19:30:15
ボタンを押して、TabControlでタブを追加するやり方って どうやるのですか?
634 :
デフォルトの名無しさん :2005/05/01(日) 21:29:17
TabControlを使ってます。TabControl上にいくつかコンポーネントを つけました。 buttonを押すとタブを自動的にひとつ追加することはできたのですが、 新しくできたタブ上にもともとあったコンポーネントと同じものを追加するにはどうすればいいのでしょうか。 (簡単に言うとTabControl上にEditがあり、buttonを押すとタブが1つ増えて、新しくできたそのタブ上にもEditが自動的にできるようにしたい、ということでです。)
>>634 VCLリファレンスヘルプから引用
>TTabControl は異なるコントロールを格納する
>複数のページを持たない単一のオブジェクトです。
>現在のタブが変わると,タブコントロールは変更を
>反映するために OnChange イベントハンドラで
>直接コントロールの内容を更新しなければなりません。
引用終わり
>新しくできたタブ上にもともとあったコンポーネントと同じものを追加する
不可能。TPageControlのことか?
636 :
デフォルトの名無しさん :2005/05/01(日) 22:30:43
>>635 あ、間違えました。ご指摘のとおりTPageです
>>636 TPageなんてコンポーネントは存在しないぞ。
質問するときゃコンポーネント名くらい正確に書け。
複数のタブシートで同種のコンポーネントを使いたいなら
それこそTTabControlを使えばいい。
TPageControlは動的にページを追加するような使い方はあまりしない。
どうしてもやりたかったら追加したいコンポーネントをnewしてシート上に
配置するしかない。
複数のコンポーネントを扱うならフレームにまとめておけば一発で配置できる。
しかし、TTabControlを使うことを考えたほうが利口だとは思う。
638 :
デフォルトの名無しさん :2005/05/02(月) 05:26:20
StatusBarの中にProgressBarを表示したいのですが、どうしたら出来るのでしょうか?
ProgressBar->Parent = StatusBar 位置はてきとーに調整
C++Builderで作ったGUIはなんか VisualC++でつくったのよりキビキビしてない気がするんですが 気のせいですか?
641 :
age :2005/05/02(月) 08:48:49
気のせい
VCLはメッセージをいろいろ処理してるのでもっさりしてるようです
>>640 パソコンをグレードアップしろ。2GHz未満のCPUなぞ使うな。
>>643 2GHzのCeleronは1.4GHzのCeleronより早いですか?
>>644 CPU自体の速度はそんなに変わらないだろうが、メモリ周りが明らかに速い。
>>640 GUIでC++BuilderとVCのスピードの差などない。
本当にC++Builderで作ったのか?
Javaじゃないのか?
648 :
デフォルトの名無しさん :2005/05/02(月) 13:46:25
>>646 Javaはおそいねぇ。個人的にはこれがクライアントアプリケーションで使われなくなった最大の原因だと思うのだが(言語仕様的には好きなんだけどね)
649 :
デフォルトの名無しさん :2005/05/02(月) 16:03:11
C++Builder1でTListViewにチェックボックスを付ける方法を教エロ
げ、TEditとかTLabeledEditにOnMouseWheel系が無いのかよ。 マンドクセ
>>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; } }
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);
>>660 TCppWebBrowserのParentの設定は、CppWebBrowser1->TOleControl::Parent = 〜
ってしないとだめ。
って別にParentの設定でエラーが出たとは書いてないか。たぶんそうだと思うんだけど。 エラーが出たら、最低限エラーメッセージを書こうぜ。
PageControlでタブシートを1から2へ切り替えたとき 1のコンポーネントが前に出っ放し。 1のコンポーネントが邪魔で2のコンポーネントが 見えない・・・・・。 誰か助けて・・・・
切り替えるというか・・・自分の説明不足でした。スマソ。 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); } という感じになります。 他にも方法はいろいろあるのかも知れません。
>>667 (´-`).。oO(ただ単にActivePageが切り替わってないだけじゃ…)
>>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が起動
してしまいます。
>>670 うちでは隠れなかったので、隠れるというのは分からないけど、
IEが起動するのは、単に新しく作ったCppWebBrowserのOnNewWindow2イベントを設定してないからでは?
>>671 動的に作ったCppWebBrowserのOnNewWindow2イベントの設定ってどうやれば
いいのですか?CppWebBrowserは実行前は1つしかありません・・・
例えば
>>670 のイベントを使うなら、
CppWebBrowser->OnNewWindow2 = CppWebBrowser1NewWindow2;
ってすればいい。
>>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))))); }
>>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は再生できないのでしょうか?
>>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の取得方法を教えてください
>>677 それやめたほうがいいんじゃね?
子の側のコントロールのサイズを固定にして、
親の側をサイズ自動にしたら?
あるいはそうやって表示した後で
こっそり切り替えるというのはどう?
思いつきだけど
687 :
デフォルトの名無しさん :2005/05/04(水) 19:20:14
688 :
デフォルトの名無しさん :2005/05/05(木) 04:21:43
二重起動を防止しつつ、既存の方に情報を渡すにはどうしたらよいのでしょうか? 具体的には、メディアプレーヤーのように開かれるべきファイル名を渡したいのですが。
689 :
デフォルトの名無しさん :2005/05/05(木) 06:20:32
690 :
デフォルトの名無しさん :2005/05/05(木) 07:04:33
>>689 それだと、2つめが起動しないだけで、既存の方に情報を渡せないんです。
>>690 すでにアプリが起動してたら適当なプロセス間通信手段を使って既存アプリにデータを渡す。
前者はWM_COPYDATAとかあるし後者はメモリマップドファイルとかがある。
と、まあWM_USERで通知して共有メモリに書き込んでおいて、既存側はメッセージ受けたら共有メモリ覗けばいいだけか
同じアプリ間だからてこずってんだろ?
同じとか同じじゃないとか関係ないと思うが?
695 :
デフォルトの名無しさん :2005/05/06(金) 03:09:43
boostは使えますか?
このソフトは有料ですか
698 :
デフォルトの名無しさん :2005/05/06(金) 16:53:34
メインスレッドでSleepをかけた時、そのプログラムから作られた他のスレッドも同じくsleep状態になりますか?
>>698 他のスレッドにまで影響したら、Sleep() は使い物にならない。
700 :
デフォルトの名無しさん :2005/05/07(土) 02:52:38
スレッドがまだ実行中か終了したかを判別するにはどうしたらよいのでしょうか?
OnTerminateでフラグを立てるとか
子スレッドが、親スレッドへ、子スレッドが終わったよと何かしらの 方法で伝えればよい
グローバル変数でフラグ立ては微かに危険?
どんなプロシージャもグローバル変数なしで 記述できる グローバル変数はいわば手抜き
TThread.Terminatedってプロパティ無い?
>>706 そいつは終了したかどうかの判定には全く使えない
708 :
デフォルトの名無しさん :2005/05/08(日) 16:30:28
CppWebBrowzerだっけ?スペル忘れたが・・・ これで表示してるWebページのURL をRichEditに表示するにはどうすればいいの?
>>708 RichEdit1->Lines->Add(CppWebBrowser1->LocationURL);
失礼な奴w 自覚ないだろうけど
無いだろうな、たぶん。
>>700 親スレッドがメッセージキューを持ってるという前提だけど
子スレッドは終了時に、親スレッドのメッセージキューへWM_USER投げる
ってのはダメかい?
Paramには、スレッドのハンドルなり、インスタンスのアドレスを
キャストして渡すなりすりゃスレッドが複数あっても見分けがつく支那。
おっと最後にWaitForSingleObject()(TThread継承してるならTThread::WaitFor())
でスレッドの完全停止を待ってやってな。
BCCはWinアプリやるならVC++より遥かに効率 いいですか? .NETはアレだし、ソフト開発にあまりコスト 掛けられない現在、いまんとこBCCやDelphiでの 開発が無難としか思えないんだが。
↑いけね。BCC => BCB の間違いです。
716 :
a.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 ではクリックしても「今日は晴天です」って表示されませんけど どうしてか分かりますか?
分かりますよ。
718 :
a.b :2005/05/09(月) 07:46:15
イベントハンドラを登録すればいいです
720 :
a.b :2005/05/09(月) 08:07:44
Memo->OnEnter= Memo1Click; ↑ のことですか?
あ、ごめん。 ハンドラ内で文字列を設定しているのがMemo1だからでしょ。 これを、Sender(要キャスト)にすればOK。
722 :
a.b :2005/05/09(月) 08:18:16
すいません、まだBuilderは知らないので・・・ ソース教えてくれませんか?
こんな感じ。一行にまとめてもいいけどね。 void __fastcall TForm1::Memo1Click(TObject *Sender) { TMemo *memo = (TMemo *)Sender; memo->Text="今日は晴天です"; }
724 :
a.b :2005/05/09(月) 11:23:24
ありがとうございます。
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; }
VCLは階層重ねて設計してあるから、ダウンキャストはしょっちゅうなのね。
>>726 0が帰った時の対策しないのにdynamic_castしても意味ねーべ
Perlのunix_md5_crypt()と同じことをするにはどうしたらよいでしょうか Borland C++Builder 6です。
>>729 以下の手順でOK
1.Perlのunix_md5_crypt()の処理内容を調べる
2.調べた処理内容を実装する
732 :
デフォルトの名無しさん :2005/05/09(月) 19:54:07
次のバージョンは64bitに対応していますか?
>>731 MD5ならどっか転がってるだろ
探してみ
>>729 CryptAcquireContext()
CryptHashData()
CryptGetHashParam()
CryptDestroyHash()
CryptReleaseContext()
C++の例外をデバッガにとられないようにするにはどのオプションを変更すればよいのでしょうか?
>>737 ツール->デバッガオプション->言語固有の例外タブ->C++言語の例外で停止OFF
739 :
729 :2005/05/10(火) 03:04:28
BCB6でフォルダ選択ダイアログを使う方法を 教えてください。 BROWSEINFO bi;//未定義のシンボルと出ます #include <shlobj.h>//コンパイルエラーが出ます #define NO_WIN32_LEAN_AND_MEAN//試してみたけど上に同じ
742 :
デフォルトの名無しさん :2005/05/10(火) 15:59:19
フォームの移動を禁止する方法を教えてください
C++Buiderのよい入門書を教えてください。
>>741 NO_WIN32_LEAN_AND_MEANはプロジェクトオプション→ディレクトリ/条件タブ→条件→条件定義のとこに追加する。
vcl.hの前で#defineしてもいいけど、プリコンパイルヘッダの再作成が起きないように、
全部のソースで同じように#defineしなきゃいけないのでめんどい。
>>742 WM_WINDOWPOSCHANGINGでWINDOWPOS構造体のxとyに
LeftとTopを入れる。
746 :
デフォルトの名無しさん :2005/05/10(火) 16:21:38
なんだてめぇは…
748 :
デフォルトの名無しさん :2005/05/10(火) 16:23:56
てめぇこそなんだこら
はいはい。優しい誰かが書いてくれるかもね、と。
750 :
デフォルトの名無しさん :2005/05/10(火) 16:28:05
情けないなお前って
馬鹿だな…ウソでも丁寧に聞きゃいいのに。損するのは自分だ。
752 :
デフォルトの名無しさん :2005/05/10(火) 16:35:59
753 :
デフォルトの名無しさん :2005/05/10(火) 18:41:14
WinXPでのsndPlaySound不具合
名無しのageはかまってちゃんの荒らしだって 何回釣られたら憶えるんですかみなさん
なんだとぉ
コテハンならいいのかよ
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
>>761 馬鹿みたいに高いのは何とかならんかねえ
763 :
デフォルトの名無しさん :2005/05/11(水) 11:30:56
ホイールのチルトに反応するにはどのようなコードを書けばよいのでしょうか?
768 :
デフォルトの名無しさん :2005/05/11(水) 19:08:35
769 :
デフォルトの名無しさん :2005/05/11(水) 19:29:40
>>768 procedure TForm1.Edit1Click(Sender: TObject);
begin
Zenkaku_Iyaan;
end;
>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;
終わってんなこのスレ
784 :
デフォルトの名無しさん :2005/05/12(木) 01:55:56
5ボタンマウスの前後ボタンに反応するにはどうしたらよいのでしょうか?
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); }
ググってそれらしいキーワード見つけただけだからなぁ。 フォームのヘッダに↓書いて反応があれば正解だろうけど。俺は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); }
上のダブルクリックに反応するコードだった。 押されたのを調べるのはこっちか if (m.WParamLo & MK_XBUTTON1) Caption = "XBUTTON1";
791 :
デフォルトの名無しさん :2005/05/12(木) 02:44:45
そろそろゴミの削除依頼しちゃう?
793 :
784 :2005/05/12(木) 03:41:14
ありがとうございます。後は何とか自力でやってみます
>>794-794 どっちも無料で閲覧できるor閲覧できた時代のページしか見てないが、
>>794 のほうは比較的まともな内容。
>>795 は過去スレで散々馬鹿にされていた程度の内容。
>>794 の人はもともとDelphi使いらしくVCLの使い方は心得ている(この点は当てになる)が
C++の知識は多少怪しいところがある。
>>795 の人はVCLもC++も分かってない。
んなとこ。
ま、 初心者なら5千円@月払うより素直に「コンポーネント活用ガイド」買っといたほうが
利口だと思う。
>>794 >今、話題の C# の開発者は Delphi を開発した人です。 Microsoft に
>ヘッドハンティングされ、現在は Microsoft に勤めています。その後も
> Microsoft による引抜きが頻発したため、訴訟騒ぎになったほどです。
>ライバル企業との競争は理解できますが、キタナイ手を使うところは
>いかにも Microsoft らしいですね。商売のやり方もそうですが!
こういう馬鹿なことを書くのはどうかと思うがねえ
>>794 おれ、そのサイトにあるサンプルプログラムの機能全部書ける。
あんなので金取って人間として恥ずかしくないのかね。
794が本気でC++Builderを勉強する気があるなら答えてやってもよいぞ
799 :
デフォルトの名無しさん :2005/05/12(木) 13:41:33
タスクトレイのアイコンの画像を条件によってかえたいのですが、 どうやればできるでしょうか? 規定値は「オプション」−「プロジェクト」−「アプリケーション」の設定で設定しました。
801 :
デフォルトの名無しさん :2005/05/12(木) 14:27:35
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
804 :
デフォルトの名無しさん :2005/05/12(木) 16:47:11
フォームを半透明にするってできますか?
805 :
デフォルトの名無しさん :2005/05/12(木) 16:53:09
できる
806 :
デフォルトの名無しさん :2005/05/12(木) 17:07:12
APIを使え。
>>804 フォームのAlphaBlendをtrueにしてAlphaBlendValueをいじるだけ。Win2K以降用だけど。
808 :
デフォルトの名無しさん :2005/05/12(木) 18:18:28
>>807 そんなプロパティーあったっけ?BCB5
無いなら無いんだろう。6はある。
811 :
デフォルトの名無しさん :2005/05/12(木) 18:44:26
またか。どんだけリアルでみじめか知らんけど、こんなとこで憂さ晴らししてんなよ
>>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) お勉強サイトを教えてください。
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
820 :
デフォルトの名無しさん :2005/05/12(木) 22:25:04
買ってきた本の付録のCD サンプルを実行したら [C++ Fatal Error]sample.cpp(31): F1013 Error writing output file とエラーがでた。 誰か教えてください、意味がわからない・・・・OTZ
>>816 とりあえず使える言語と何をしたいかぐらいは書いといた
方がよいかも。
1.ゲーム(どんなゲームかも書いたほうが良い)作りたい。
2.アプリ作りたい。
3.時間かかっていいから言語から学習したい。
とか。
まあなんにしてもデバッグの操作覚えるのと
エディタの設定を。
>>820 とりあえず、そのエラーを選択してF1キーでヘルプ。
意味はわかる。
>>820 そのcppファイルをまずハードディスクにコピーしてから
コピーしたほうのファイルを実行すべきなんじゃないの?
.cppのあるディレクトリにOBJファイルやEXEファイルを
作るのがデフォルトだから、CD-ROMドライブにそれらを
作成しようとしてエラーが出てる気がする。
823 :
816 :2005/05/12(木) 23:44:22
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
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月
統合に関しちゃ↑以降なんのアナウンスもないのかな? デルファイて何?なBCB(だけしか知らない)ユーザにとっては 使い勝手が悪化したり、余計な知識が求められたりするんだ ろうか。
>>833 D2005は重いし従来のIDEとは動きが違ったりするので、そういう意味では「使い勝手悪化」
・「余計な知識要」だけど、Delphiシラネという意味ではあまり変わらないと思われ。
835 :
デフォルトの名無しさん :2005/05/13(金) 15:23:20
フォームに紐付いてるユニット名の変更は、 どこで指定したらいいでしょうか? 作り直ししか無理ですか?
ビルダーで作ったWebブラウザで、ボタンを押すと クッキーを全て遮断する、 ことができる機能を追加したいのですが教えてくださいませんか。
837 :
デフォルトの名無しさん :2005/05/13(金) 17:22:34
838 :
デフォルトの名無しさん :2005/05/13(金) 17:29:51
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/
841 :
デフォルトの名無しさん :2005/05/13(金) 19:23:45
842 :
デフォルトの名無しさん :2005/05/13(金) 19:58:40
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); }
>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形に変換できないと怒られてしまいます。 お手数ですが、どなたかよい方法をアドバイスしてください。
850 :
デフォルトの名無しさん :2005/05/14(土) 02:26:46
>849 さんありがとうございます。 やってみます。
ある実行ファイルのアイコンを取得する方法を教えてください
852 :
デフォルトの名無しさん :2005/05/14(土) 03:26:06
853 :
デフォルトの名無しさん :2005/05/14(土) 10:02:22
ビルダーで作ったWebブラウザで、ボタンを押すと クッキーを全て遮断する、 ことができる機能を追加したいのですが教えてくださいませんか。
初めてDLL使おうと思い、#include <zlib.h> としたのですが、 zconf.h(264): E2015 'Byte' と 'System::Byte' の区別が曖昧 と出て駄目でした。 zlibを簡単に扱うコンポーネントか何かありませんか?
俺そこの少し上の typedef unsigned char Byte; /* 8 bits */ をコメントアウトして使ってる
Byte じゃなく、BYTE にしちゃうという手も。
たとえば、3時に何かを実行したいという場合、Timerで毎秒ごとに3時かどうかをチェックするしかないのでしょうか? 3時ちょうどにWindowsからイベントを発生させることは出来ないのでしょうか?
860 :
デフォルトの名無しさん :2005/05/15(日) 07:19:55
>>859 こんとろーるぱねる たすくすけじゅーる追加
>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時までの時間差が分かるから タイマーの間隔を設定すればいいんじゃないのか。 ちょうどに出来るかは知らんけど。
>>859 スレッド作ってスレッド内で判定する、
と言う方法もある。
863 :
デフォルトの名無しさん :2005/05/15(日) 10:56:45
最近、パーソナル版を買ったんですけど このタイマーってVB6と一緒で信用できないんですか?
>>857 ,858,861
ありがとうございます。
コンパイルは出来るようになりました。
ただ、zlib.libをプロジェクトに追加すると、
[リンカ エラー] 'C:\ZLIB.LIB' contains invalid OMF record, type 0x21 (possibly COFF)
が出てしまうのですが、どうすればいいのでしょうか?
>>865 zlib.libを自分でビルドするかdll使う。
>>865 どこかからダウンロードしてきたLIBならおそらくVisualC++用なので
coff2omf.exeでBCBで使える形式に変換するか
implib.exeでDLLからインポートライブラリを作る
>>866 さんのリンク先のソースのzdllbor.libを使ったら無事にできたみたいです(つД`)
>>867 ,868
なるほど、ありがとうございます。
メモしておきます(つД`)
自分でVisualC++でビルドしたのをBorlandで使ってましたorz
皆さんどうもありがとうざございました。
870 :
861 :2005/05/15(日) 21:35:39
俺の#pragmaは全然見てくれてなかったわけね
>>859 っSetWaitableTimer()
873 :
デフォルトの名無しさん :2005/05/16(月) 03:08:06
HTMLヘルプとC++Builderのフォームの連携方法を教えてくれろ
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";
>>875 BuilderについてくるNMなんとか・・っていうコンポーネントはやめといたほうがいい
NMHTTPも挙動が変な時あるし、使うんだったらIndyをインストールすればOK
日本語ヘルプファイルはDelphi用のがBorlandからDLできたはず
UDPを使わない
>>877 Indy10のインストールをしたいのですが、やり方がわかりません。教えてください。
>>879 BCBならIndy9までしか公式では対応してない。
>>880 BCBは見捨てられてしまったのでしょうか?
それとも単にインストーラだけの問題じゃなく、他の部分で問題があって対応できないのでしょうか?
>>881 多分そうじゃなくて、Delphiのバージョンだけが進み、それに準じて
Indy10が書かれているので、単にそれをBCB6に移植するのが面倒に
なっただけでしょ。BCB7でも出れば出そうな希ガス。
ひたすらdpkと同じ構成のbpkを作ったら、DesignIdeがどうたらでエラーが出たぐらいで、それを回避すればインストールできたけどね>Indy10 IdHTTPでGetしてみたぐらいでロクに動作確認したわけじゃないけども。
>dpkと同じ構成のbpkを作ったら これはどうやってやるのでしょうか?もう少し詳しく教えていただけないでしょうか?
ようはDelphi用のパッケージ(.dpk)はあるわけだから、それを適当なエディタで開いて、 そのパッケージに必要なファイルを調べて、 自分でBCBで作ったパッケージ(bpk)に追加していくという事なんだけんども。 パッケージもファイルも多くて非常に面倒くさい。
MonthCalendarコントロールで日付ごとに色を付けるにはどうすればよいのでしょうか? Boldにする方法はわかったのですが、それ以外の装飾をつけるにはどうしたらよいのでしょうか?
887 :
886 :2005/05/17(火) 05:03:09
なんで誰も答えてくれないの?
888 :
886 :2005/05/17(火) 05:03:35
早くしろデブ!こっちは忙しいんだよ
889 :
886 :2005/05/17(火) 05:03:58
時間がないので早く教えてくれません?
890 :
886 :2005/05/17(火) 05:04:02
ほんとどいつも役にたたねぇな
ラウンジ帰れボケ
892 :
886 :2005/05/17(火) 05:04:33
まだかよ、さっさと教えろカス共、おまえらニートと違って俺は急いでるんだよボケ。
893 :
884 :2005/05/17(火) 05:04:37
俺の質問が先だよカス
894 :
デフォルトの名無しさん :2005/05/17(火) 05:04:55
ラウンジって何?
895 :
886 :2005/05/17(火) 05:04:56
そのカルボナーラいつ食べ終わるの?早くしろって
896 :
886 :2005/05/17(火) 05:05:21
早く教えてください
898 :
886 :2005/05/17(火) 05:06:08
自己解決しました。 お騒がせしてすみません。
899 :
886 :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  ̄ ̄ ̄ ̄ `ー-----ヽ、 (~ ̄ノ
902 :
886 :2005/05/17(火) 05:07:14
m n _∩ ∩_ n m
⊂二⌒ __) /\___/ヽ ( _⌒二⊃
\ \ /'''''' '''''':::::::\ / /
\ \ |(●), 、(●)、.:| / /
\ \| ,,ノ(、_, )ヽ、,, .::::|/ /
\ .| ´トェェェイ` .:::::::| / それが、ラウンジ精神
\\ |,r-r-| .::::://
http://ex7.2ch.net/entrance/ \`ー`ニニ´‐―´/
/ ・ ・ /
またラウンジの奴らかよ・・・・・・・ 懲りないな、ホント 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
ラウンジって噂ではきいてましたけど本当にひどいところですね
909 :
874 :2005/05/17(火) 05:09:07
早く答えろクズ共
911 :
デフォルトの名無しさん :2005/05/17(火) 05:09:57
俺の彼女がマクドoffでラウンコにセクハラされていたとき、 顔を真っ赤にして、彼女をかばってくれたのはチリチリパーマのおとなしそうなvipperさんでした 俺はニヤニヤ笑ってみてたけど
ブラクラ貼んなハゲ
ラウンジの人たちって本当にキモイよね?
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
>910 ブラクラ
919 :
886 :2005/05/17(火) 05:13:00
ラウンジの人が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がラウンジの悪事をあばくの
なんでそんなことするんですか?
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張っておいた方がいいのか?
これ見ればわかるでしょ?
886が別のスレにマルチに行っちゃった。
929 :
デフォルトの名無しさん :2005/05/17(火) 05:21:12
もう分かったから。ラウンジ帰れよ
ラウンジャーって必死だな
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/
>>887 -は自分ではありません。何で突然ここがこんなに荒らされているのでしょう?
934 :
933 ◆Ikx9obzOAY :2005/05/17(火) 06:50:00
936 :
デフォルトの名無しさん :2005/05/17(火) 10:12:08
937 :
デフォルトの名無しさん :2005/05/17(火) 13:20:53
Indyについて詳しくかかれてる日本語サイトを教えてください
939 :
デフォルトの名無しさん :2005/05/17(火) 15:49:43
最近、C++Builderを触っているものですが、 「オブジェクトの配列」化の方法がわかりません。 BitBtn1,BitBtn2,BitBtn3,BitBtn4,,,,,をBitBtn(n)という風にするには どうすれば良いでしょうか? もしかしてできないのでしょうか?
>>939 FindComponentで列挙してstd::vector<TBitBtn*>に突っ込むのはだめか?
>>939 TListをつかってみたら?
パワフルテクニック集にも載っていたはず
オブジェクトの数が明確に決まっているのなら TBitBtn* BitBtn[5]; BitBtn[0]=BitBtn1;//0は空けといたほうがわかりやすいな BitBtn[1]=BitBtn2; ... でもいいような気がするけど、これじゃ駄目なの?
943 :
デフォルトの名無しさん :2005/05/17(火) 17:27:14
オブジェクトのタイマーの秒数を0にしたら、 プログラム終了前に再度はじめから処理が流れてしまうのでしょうか? 終了してから、また流れるのでしょうか?
944 :
939 :2005/05/17(火) 17:37:12
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] 外部シンボルが未解決』から始まるスレッドが該当しそうですが 「実行時パッケージを使用」しない設定での解決方法がわかりません。 どなたかご教示いただければ幸いです。
>>945 再現できないな。実行時パッケージの使用の有無に関わらずコンパイル・実行できるけども。
関係ないかもしれないけど、Delphi6入れててbcb6fix.exeを実行してないとかない?
947 :
875 :2005/05/17(火) 20:09:04
亀レスですみませんm(_ _)m レスくれた皆様ありがとうございます^^;A で、嵐?なのかは知りませんが、私からみたら大助かりの>938氏の サイトを参照したのですが・・・ これに書いてあるのがDelphiのインスコ方法で、正直BCBのインスコが わからない所存です_| ̄|○ どなたかぷりーず
948 :
875 :2005/05/17(火) 20:11:28
↑すみません、嵐っぽいのは>938氏以外の方 なんか昨日の夜は相当吹雪いていたみたいですね
949 :
デフォルトの名無しさん :2005/05/18(水) 00:25:21
l
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(教えてください)
まともな日本語(書いてください)
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); }
教えてください 一つのアプリケーションで開いたモードレスフォーム一つずつに タスクバーのタイトルバー(?名前わかんない)を表示させたいのですが どの様にしたらいいのでしょうか。お願いします。
>>955 Lparamがインスタンスなら実行時型識別で識別できるだろ。
VCLコントロールならTObject派生(Delphi型クラス)のはずだから基底クラスのインスタンスから派生先の型を取得できる。
TPanelがCM_MOUSEENTERイベントに反応するにはどうしたらよいのですか?
959 :
デフォルトの名無しさん :2005/05/18(水) 14:32:52
スタートメニューを非表示にする方法を教えてください
961 :
デフォルトの名無しさん :2005/05/18(水) 15:54:12
962 :
デフォルトの名無しさん :2005/05/18(水) 16:08:09
Indy9入れたんですが、これ何がどう変わったのかわかりませんが
963 :
デフォルトの名無しさん :2005/05/18(水) 17:30:32
TNMSMTPを使用してメール送信プログラムを作成していたのですが 認証が必要なメールサーバーに接続できなかった為、 某所で質問したところIndyのTIdSMTPを使用すれば可能だと知りました。 ぐぐってもBuilderでのサンプルが書かれているサイトが 見つけられませんでした。 TIdSMTPについて詳しく書かれている所を教えてください。
>>963 ObjectPascalのコードくらい読めないか?普通。
とりあえず./CBuilder6/Help/op.hlpよんどけ。
oplg.hlpだったorz
誰もCBuilder6なんて一言もいってないのに・・・
>>964 はただの基地外か
967 :
デフォルトの名無しさん :2005/05/18(水) 18:10:17
968 :
デフォルトの名無しさん :2005/05/18(水) 22:15:20
j
969 :
デフォルトの名無しさん :2005/05/19(木) 05:34:02
970 :
デフォルトの名無しさん :2005/05/19(木) 08:57:29
C++BuilderにはCSVを簡単に読み込んだり書き込んだりする方法があったと思うのですが、ググっても見つかりません。 どなたか教えていただけないでしょうか?
972 :
デフォルトの名無しさん :2005/05/19(木) 09:44:07
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="あいう,かきく" と、変数に入っている場合、最初のカンマまで("あいう,")を取得したいのですが…
978 :
963 :2005/05/19(木) 11:53:47
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する方法を教えてください
複数のビットマップ画像からaviファイルを作成する方法を教えてください。
985 :
デフォルトの名無しさん :2005/05/19(木) 15:58:04
毎度おなじみ
廃人回収でございま〜す〜〜
988 :
デフォルトの名無しさん :2005/05/20(金) 02:29:55
まだまだやっぱりおまえは子供だ全然全くわかってないよ なんて言ったら分かるのかなぁ どんなにアタシが素晴らしいかを!
991 :
デフォルトの名無しさん :2005/05/20(金) 13:46:48
梅
埋め
993 :
デフォルトの名無しさん :2005/05/20(金) 17:35:39
運命
994 :
美香 ◆RQ0Spv3q06 :2005/05/20(金) 19:14:45
(´・_・)?
>>990 うるせえボケナス大魔神!
おとといきやがれこの亀虫!
(o_o^)??
ume
999
1000
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。