- 1 名前:デフォルトの名無しさん mailto:sage [2007/02/12(月) 03:39:51 ]
- このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だが分からない質問を勇気を持って書き込むスレッドです。 C++Builder使いが優しくコメントを返しますが、 お礼はC++Builderの布教と初心者の救済をお願いします。 Borland Home Page www.borland.co.jp/ <過去スレ> くだすれC++Builder(超初心者用) pc8.2ch.net/test/read.cgi/tech/1117225464/l50 くだすれC++Builder(超初心者用)その2 pc10.2ch.net/test/read.cgi/tech/1144308804/l50 <兄弟スレ> くだすれDelphi(超初心者用)その39 pc10.2ch.net/test/read.cgi/tech/1169386914/l50
- 702 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 01:08:53 ]
- >>700
AllocConsole()でコンソールが開きます。コンソールのハンドルをGetStdHandle( STD_OUTPUT_HANDLE )で取得したら SetConsoleTextAttribute()とWriteConsole()で好きな文章を色つきで出力できます。 printf() っぽく使うならこんな感じ #include <stdio.h> int __stdcall con_printf( const CHAR* Format, ... ) { const int nLengthMax = 1024; int nLength = 0; HANDLE hConsole = ::GetStdHandle( STD_OUTPUT_HANDLE ); if( hConsole != INVALID_HANDLE_VALUE ){ CHAR Message[ nLengthMax ]; va_list List; va_start( List, Format ); nLength = vsnprintf( Message, nLengthMax - 1, Format, List ); va_end( List ); DWORD dwLengthWritten; ::WriteConsole( hConsole, Message, (DWORD)nLength, &dwLengthWritten, NULL ); } return( nLength ); } IDEが入ってない環境とかで使えるよ。
- 703 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 02:04:16 ]
- _open_osfhandle()とかdup2()とかを組み合わせれば
普通にそのままのprintfが使えるようになるんじゃないかね。 知らないけど。
- 704 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 02:44:28 ]
- IDEでデバッグしてるならOutputDebugString使えばイベントウィンドウに出力されるぞ
- 705 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 10:34:03 ]
- 複数のフォームを持ったアプリを作っています。
メインフォームの初期化ルーチン(FormCreateとか)から他のフォームの初期化ルーチンを呼び出したいが、 それがまだ生成されていないのでエラーになるというケースが多くて困っています。 全てのフォームが生成された後で一括して初期化を行いたいという時にはどうすればよいのでしょうか? どなたか教えて下さい。
- 706 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 12:02:22 ]
- メインフォームのコンストラクタで他のフォームnewすれば?
- 707 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 12:46:22 ]
- >>700
解決したかも知れないけど、 TMemo 貼って Add で俺はやってる。
- 708 名前:デフォルトの名無しさん [2008/10/02(木) 17:46:19 ]
- コンパイルした時に作成される実行ファイルの名前を、プログラム側で変更することってできます?
#ifdefで二種類作るので、間違えないようにしたいのですが・・・
- 709 名前:700 mailto:sage [2008/10/02(木) 18:59:26 ]
- なるほど、色んなやり方があるんですね。
しかしこのスレ非常にやさしいw ありがとうございました〜、色々とやってみて合うもの見つけてみます
- 710 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 19:43:14 ]
- >>708
#pragma optionでできないものリストに「-efilename」が書かれてるから無理 objファイルならできるけど。
- 711 名前:デフォルトの名無しさん [2008/10/02(木) 19:56:58 ]
- >>710
無理なんですか、了解です。 ありがとうございました。
- 712 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 20:00:24 ]
- >>711
makefileで分けるといい
- 713 名前:705 mailto:sage [2008/10/03(金) 17:03:11 ]
- >>706 どうもありがとうございます。やってみます。
- 714 名前:デフォルトの名無しさん mailto:sage [2008/10/17(金) 00:02:21 ]
- TwebBrowserで表示したページのセレクトボックスを変更したりボタンを押したりしたいのですが、参考になるページが見つからず途方に暮れています(他の言語は多少あるのですが・・・)
他の言語のを真似して WebBrowser1->Document->All->GetElementsByName("hoge")[0]->selectedindex = 0; ※hogeは表示するページのソースをみて名前を調べました などとしたのですが、「AllはIdispatchのメンバーではない」とエラーが出ます・・・ どんな書き方をすればよいのでしょうか
- 715 名前:デフォルトの名無しさん mailto:sage [2008/10/17(金) 04:28:58 ]
- たぶん中身をIHTMDocument2とかにして触るんじゃないかな。
昔触ったのを見たら IHTMLDocument2Ptr doc; doc = browser->Document; IHTMLElementPtr body = doc->body; とかやってた。 IHTMLDocument2Ptrとして使うには、MSHTMLかなんかをimportだかする必要があったと思うけど。
- 716 名前:デフォルトの名無しさん [2008/10/19(日) 04:31:46 ]
- Imageに貼り付けた四角の画像を台形とかに変形させることはできますか?
- 717 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 04:18:55 ]
- できる
- 718 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 16:48:53 ]
- できるよ
- 719 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 15:03:10 ]
- AnsiStringsの中に何も入っていない場合、c_str()で比較してチェックすることはできますか?
if(c_str()=="")やif(c_str()==NULL)と書いても素通りしますよね。 Lengthが0かどうかでチェックをしているので問題は無いのですが、気になったのでよろしくお願いします。
- 720 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 16:20:53 ]
- IsEmpty()
- 721 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 17:14:13 ]
- 素通りっつーのはよく分からんが、そもそも「if(c_str()=="")やif(c_str()==NULL)」って書き方おかしくね?
c_str使うんならstrcmpとか使おうぜ。 AnsiStringとchar型文字列の比較なら普通に==で良いとも思うけどな。
- 722 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 17:56:44 ]
- >>720
専用の関数があったんですね、ありがとうございます。 >>721 素通りというのは""やNULLで比較しても、何か文字が入っているような動きをしていたものですから。 まだAnsiStringを理解してないかもです。 strcmpも使ってみたのですが、動きは同じだったので・・・。 ところで、フォルダ名をチェックするのに最後に\がついているかを見て、無かったら\を付けたいのですが、 これってどうやればいいんでしょう? AnsiLastCharで拾おうとしてのですが、うまくいかないので、よろしくお願いします。
- 723 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 18:11:14 ]
- IncludeTrailingBackslash()
- 724 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 19:05:07 ]
- >>723
処理してくれる関数があったんですね。 ありがとうございます。
- 725 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 20:18:52 ]
- IncludeTrailingPathDelimiterがあればそちらを使うのが望ましい。
- 726 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 15:47:30 ]
- Imageを2枚重ねて、下に写真、上に色を塗るようにしています。
上のImageに半透明や透明色を塗ることってできるのでしょうか? 半透明で調べてもフォームやボタンはあるのですが・・・。 すいませんが、どなたか方法を教えて頂けないでしょうか。
- 727 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 16:24:39 ]
- 実際には透明色や半透明色ってのはないからなぁ。アルファブレンド?
- 728 名前:デフォルトの名無しさん [2008/10/25(土) 19:16:29 ]
- 計算した数字をEdit1,Edit2,Edit3に出したのですが、
それをMemo1にすべて書き出しExcelで読み込んだときにA欄B欄C欄と分けて出したいのですが いったいどのようにすればいいんでしょうか? Edit1->Text=a; Edit2->Text=b; Edit3->Text=c; Memo1->Lines->Strings[0]=a; Memo1->Lines->Strings[1]=b; Memo1->Lines->Strings[2]=c; 今こんな感じで書いてるのですが全然わかりません・・ どなたかよろしければアドバイスお願いします。
- 729 名前:デフォルトの名無しさん mailto:sage [2008/10/26(日) 13:10:23 ]
- コンマ区切りにすればいいってことじゃなくて?
- 730 名前:デフォルトの名無しさん mailto:sage [2008/10/26(日) 13:45:41 ]
- >>729
あ、コンマ区切りで数列を出せばExcelでは枠別に表示されるんですね ありがとうございます! よろしければどなたかコンマ区切りでEdit1から3までの数字を一つのMemo1に出す 方法を教えていただけないでしょうか
- 731 名前:デフォルトの名無しさん mailto:sage [2008/10/26(日) 14:20:40 ]
- void __fastcall TForm1::Button1Click(TObject *Sender)
{ Memo1->Lines->Add(AnsiString().sprintf("%s,%s,%s", Edit1->Text, Edit2->Text, Edit3->Text)); }
- 732 名前:デフォルトの名無しさん mailto:sage [2008/10/26(日) 15:03:38 ]
- BCBで使えるRS-232Cコンポーネントで安定しているのってありますでしょうか?
現在はHmCommを使用しているのですが、USB-232C変換器が物によって正常に通信できたりタイミングがずれたりするので、 別の物を試してみたいのですが・・・良い物がありましたら紹介してください。 よろしくお願いします。
- 733 名前:デフォルトの名無しさん [2008/10/26(日) 18:23:25 ]
- TMemoryStream* ms=new TMemoryStream();
char *mTop=(char*)(ms->Memory); char *mEnd=pTop+(ms->Size); と記述すると W8072 問題のあるポインタ演算 という警告が出ます。 警告の出ない正しい記述方法を教えてください。
- 734 名前:デフォルトの名無しさん mailto:sage [2008/10/26(日) 22:51:08 ]
- ms->Sizeの型が__int64だからintにキャストすれば出ないよ
- 735 名前:デフォルトの名無しさん mailto:sage [2008/10/26(日) 23:19:32 ]
- >>732
ttp://www.geocities.jp/in_subaru/erslib/index-erslib16.html これ使ってごらん。 コンポーネントじゃないけど、ヘッダファイルだけで動作する。 初期化に2行、出し入れに数行、後始末に1行ぐらい書けばいいので PICとやり取りするのに簡単だから使ってる。 でも、USBのシリアル変換機はもともと不安定だからなぁ・・・。
- 736 名前:デフォルトの名無しさん mailto:sage [2008/10/27(月) 00:15:44 ]
- >>734
解決しました。ありがとうございます。
- 737 名前:732 mailto:sage [2008/10/27(月) 00:45:44 ]
- >>735
ありがとうございます。 シンプルで良さそうですね。 ちょっと使ってみます。 ノートPCが前提なので、USBのシリアル変換機を使用して安定してないといけないんです・・・。
- 738 名前:デフォルトの名無しさん [2008/10/27(月) 15:18:20 ]
- A, B, C, D, E, 00:00, f, g, h, i, j, k, l,
A1, B1,C1,D1,E1, 00:00, f1, g1, h1, i1, j1, k1, l1, A2, B2,C2,D2,E2, 00:00, f2, g2, h2, i2, j2, k2, l2, というコンマ区切りの何百行のデータがあり、j(1.2.3・・・)の部分だけ読み込みたいのですが どういう風にやればいいですか。よろしくお願いします。
- 739 名前:デフォルトの名無しさん mailto:sage [2008/10/27(月) 15:37:37 ]
- >>726
写真ともう一枚の32bppなTBitmap用意、アルファブレンドしてTImageに転送するしかないと思う。 アルファチャンネル扱えるTBitmap継承クラスも何種類か公開されてるから難しい物じゃない。 写真じゃないほうにペイントするとかだったら、TImageのイベントで取ったストロークの情報でペイント描画用のTBitmapに描けばいいだけだし。 >>738 ただのCSVファイルじゃん(・ε・)
- 740 名前:738 [2008/10/27(月) 15:48:54 ]
- 少し説明不足でしたが、テキストで読み込んでMemoに表示させたいのです。
- 741 名前:デフォルトの名無しさん mailto:sage [2008/10/27(月) 16:06:44 ]
- >>738
要するに 00:00 を取り除くって事?
- 742 名前:738 [2008/10/27(月) 16:10:52 ]
- >>741
j(1.2.3・・・)の部分だけをmemoに表示させたいのです。
- 743 名前:デフォルトの名無しさん mailto:sage [2008/10/27(月) 16:13:33 ]
- >>j(1.2.3・・・) の意味がわからん
- 744 名前:デフォルトの名無しさん mailto:sage [2008/10/27(月) 16:14:48 ]
- Memoに j1, j2, j3 とかって表示させたいの?
- 745 名前:デフォルトの名無しさん mailto:sage [2008/10/27(月) 16:19:37 ]
- だからcsvファイル扱うクラス書いて、各行から11列目の値をTMemoに突っ込めばいいだけじゃ‥‥
- 746 名前:デフォルトの名無しさん mailto:sage [2008/10/27(月) 16:24:14 ]
- こういうの見るとBCB2009でregex使いたくなるな
- 747 名前:738 [2008/10/27(月) 16:33:42 ]
- はい。
Memo1 j j1 j2 j3 ・ ・ な感じで。
- 748 名前:デフォルトの名無しさん mailto:sage [2008/10/27(月) 16:40:05 ]
- >>738
そんなん単に先頭からカンマを10こ読み飛ばせばいいだけじゃん。 strXXX系の関数使うまでもなく。 とみんな思うんだろうけど、暇だったのでVCLのヘルプみてみた。 TStrings::DelimiterとTStrings::DelimitedTextなんてものがあるのな。 TStringList* Data = new TStringList; Data->Delimiter = ','; Data->DelimitedText = "aa,bb,cc,dd,ee"; Caption = Data->Strings[3]; // ddが表示される ただしBCB5以前は無理かもしれない。あしからず。
- 749 名前:デフォルトの名無しさん mailto:sage [2008/10/27(月) 16:49:38 ]
- こんなんとか。
void __fastcall TForm1::Button1Click(TObject *Sender) { std::ifstream ifs("File1.txt"); std::string str, s2; if (!ifs) { Memo1->Lines->Add("File1 not found."); } while (std::getline(ifs, str)) { std::string::size_type pos = str.find('j'), pos2; if (pos != std::string::npos) { s2 = "j"; if (pos < str.size() && (pos2 = str.find(',', pos)) != std::string::npos) { s2 += str.substr(pos + 1, pos2 - pos - 1); } Memo1->Lines->Add(AnsiString(s2.c_str())); } } }
- 750 名前:デフォルトの名無しさん mailto:sage [2008/10/27(月) 16:58:54 ]
- くだスレが役に立ってry
- 751 名前:デフォルトの名無しさん mailto:sage [2008/10/27(月) 17:36:22 ]
- ないってことか
- 752 名前:デフォルトの名無しさん mailto:sage [2008/10/28(火) 14:44:59 ]
- すいません、プログラム上でスクロールバーが動いたことにするには、どのようにすればよいのでしょうか?
Positionの値を変えるのでは無く、マウスで操作した時の動きをさせたいのですが・・・。
- 753 名前:デフォルトの名無しさん mailto:sage [2008/10/28(火) 15:28:27 ]
- イベント呼べばいいんでないの?
- 754 名前:デフォルトの名無しさん mailto:sage [2008/10/28(火) 15:58:04 ]
- イベントは、呼ばれるものじゃねえのか。
イベントはさすがに呼べねえだろ。
- 755 名前:デフォルトの名無しさん mailto:sage [2008/10/28(火) 16:56:44 ]
- 自分でOnChange呼べつったんだ馬鹿かお前
- 756 名前:デフォルトの名無しさん mailto:sage [2008/10/28(火) 17:21:13 ]
- >>755
Are you a big baka ? スクロールした結果、OnChange()が発生するのであって OnChange()を自前で呼んでも無意味じゃん。
- 757 名前:デフォルトの名無しさん mailto:sage [2008/10/28(火) 17:25:37 ]
- もも・・・
しかして>>755は OnChange()を呼べばスクロールが発生するとでも思っているのかぁ プププ
- 758 名前:755 mailto:sage [2008/10/28(火) 19:00:09 ]
- 私のために争うのはもうやめてっ
プログラム上からイベントを発生させる方法ってあります?
- 759 名前:デフォルトの名無しさん mailto:sage [2008/10/28(火) 19:06:50 ]
- 自分宛にメッセージ投げればいいと思うよ
- 760 名前:デフォルトの名無しさん mailto:sage [2008/10/28(火) 23:13:14 ]
- >>755
嘘はいかんな
- 761 名前:752 mailto:sage [2008/10/29(水) 02:51:14 ]
- 名前間違えた、こっちだ
どうやってやればいいんでしょう・・・?
- 762 名前:デフォルトの名無しさん mailto:sage [2008/11/01(土) 01:22:01 ]
- 標準のボタンの背景や形を変えることってできますか?
BitBtnは画像を配置すると文字が消えてしまうので、他に何か方法は無いでしょうか? よろしくお願いします。
- 763 名前:デフォルトの名無しさん mailto:sage [2008/11/01(土) 15:51:47 ]
- >>762
起動時bitbtnにするDIBにフォントを使って字を書いてしまえばいいじゃないかw 元の画像は普通のボタンから抜くなりなんなりすればいいジャマイカ そしてそれをフリーで後悔すれば…. と思う前に誰かすでに作ってないかとかおもってググ…
- 764 名前:デフォルトの名無しさん [2008/11/01(土) 15:52:23 ]
- 同じフォルダにあるテキストデータA001〜A020を同時に読み込んで
その中の計算を行いそれを50個またテキストデータとして保存したいのですが テキストデータを同時に読む込むプログラムとそしてそれを同時に書き出す方法が どうしてもわかりません。よければアドバイスお願いします。
- 765 名前:デフォルトの名無しさん mailto:sage [2008/11/01(土) 17:32:46 ]
- いちどきに読み込むことや書き出すことはできてもどうじに読んだり書き出したりするのは非常に困難です
- 766 名前:デフォルトの名無しさん [2008/11/01(土) 18:48:32 ]
- >>765
すみません、説明不足だったようです。 同時にではなくたとえばA001〜020で読み込む場合にfor文などで回して 自動ですべてを順に読み込み書き出すようにしたいのです
- 767 名前:デフォルトの名無しさん mailto:sage [2008/11/01(土) 20:10:09 ]
- >>766
for文で回して順に読み込み書き出しすればいいと思うよ と思ったが「同じフォルダにあるテキストデータ」ってファイルのこと? ならファイルを順繰りに読んで希望のファイルだけ読み込み書き出しすれば良いんじゃないかね
- 768 名前:デフォルトの名無しさん mailto:sage [2008/11/01(土) 20:51:35 ]
- TStringList使っとけ
- 769 名前:デフォルトの名無しさん mailto:sage [2008/11/01(土) 23:37:20 ]
- 具体的に何をする方法がわからんのか
そのへんが全然わからんから エスパーじゃないから 答えようがねえなぁ 文章から類推すると、何もかもまったくわからんようにしか見えんが。
- 770 名前:デフォルトの名無しさん mailto:sage [2008/11/02(日) 13:55:50 ]
- 教えてください。
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) { progressBar1->Maximum = shikou_kaisu; /* 最大値 */ progressBar1->Visible = true; label8->Text = "処理中"; label8->ForeColor = System::Drawing::Color::Red; for(i=0; i<shikou_kaisu; i++){ rnd(kibou_kosu); //自作関数呼び出し Sleep(1); } }; このようにshikou_kaisuには10000を入れていまして、1万回のループに入る前に プログレスバーを出し、label8の文字色を赤にし、処理中と書き換えているのですが どちらとも(プログレスバーもlabel書き換えも)for文が終了したあとに処理されてしまいます。 なぜでしょうか?
- 771 名前:デフォルトの名無しさん mailto:age [2008/11/02(日) 14:03:05 ]
- 連投すみません。
あともう一つ教えてください。 出力ウィンドウに、テスト的に変数の値などを表示させたいのですが、 Console::WriteLine("aaa"); などとしてもまったく表示されません。何か方法はありますでしょうか? よろしくお願いします。
- 772 名前:デフォルトの名無しさん mailto:sage [2008/11/02(日) 14:27:08 ]
- >>770 誤爆?
ここは、 くだすれC++Builder(超初心者用)その3
- 773 名前:デフォルトの名無しさん mailto:sage [2008/11/02(日) 14:57:22 ]
- >>772
すみません。間違えました><
- 774 名前:デフォルトの名無しさん [2008/11/03(月) 18:05:44 ]
- 読み込みと保存について質問なんですが
バイナリ形式のファイル読み込んで、その内容を同じファイル名でテキスト形式に置き換えて保存したいのですが それを手動保存するのではなく自動で同じファイルネームでそのフォルダ内に生成されるプログラムを作りたいのですがどのようにすればよいのでしょうか
- 775 名前:デフォルトの名無しさん mailto:sage [2008/11/03(月) 18:49:03 ]
- >>774
スレ違い C/C++の宿題を片付けます 117代目 pc11.2ch.net/test/read.cgi/tech/1225320579/ こっちだな
- 776 名前:デフォルトの名無しさん mailto:save [2008/11/03(月) 18:55:33 ]
- >>775
すいません、これをSaveDialogやOpenDialogなどを用いてc++builderで 実行しなくてはいけないのですが読み込んだファイルを同じ名前のテキスト形式で自動生成する保存の方法を教えていただけないでしょうか
- 777 名前:デフォルトの名無しさん mailto:sage [2008/11/03(月) 19:46:17 ]
- >>776
君の質問に回答できる奴はエスパー
- 778 名前:デフォルトの名無しさん mailto:sage [2008/11/03(月) 20:06:21 ]
- そんな事できません
バイナリの中身が構造体だったり、浮動小数点と整数が 交互に書かれていたりする時どうやって判別するのですか? コンピュータから見るとどちらもただの0と1の羅列ですよ?
- 779 名前:デフォルトの名無しさん mailto:sage [2008/11/04(火) 04:10:55 ]
- 00010111000 とかをテキストで保存するんだろ。
- 780 名前:デフォルトの名無しさん mailto:sage [2008/11/04(火) 12:41:53 ]
- それはファイルダンプじゃん。
- 781 名前:デフォルトの名無しさん mailto:sage [2008/11/04(火) 13:44:41 ]
- 失礼します。
OpenDialogを使用して、指定したフォルダからファイルを読み込みたいのですが、 最初の動作ではInitialDirに指定フォルダ名が入っているのにも関わらず、デフォルトのフォルダが表示されてしまいます。 再起動しても変わりません。 でも、他の動作で指定フォルダを開くと、最初のOpenDialogも指定フォルダを開けるようになります。 フォルダ名を指定した後、確定させる方法があるのでしょうか? よろしくお願いします。 if(FolderTXT.IsEmpty()){ // フォルダ指定無し OpenDialog1->InitialDir = ExtractFilePath(Application->ExeName)+"DATA"; }else{ OpenDialog1->InitialDir = FolderTXT+"DATA"; } // フォルダオープン if(OpenDialog1->Execute()){ if(FileExists(OpenDialog1->FileName)){ fn=OpenDialog1->FileName; } } ※FolderTXTにフォルダ名が入っています。
- 782 名前:デフォルトの名無しさん mailto:sage [2008/11/04(火) 14:14:42 ]
- Execute()する前に
DirectoryExists(OpenDialog1->InitialDir) してみい falseが返ってくるからさ
- 783 名前:デフォルトの名無しさん mailto:sage [2008/11/04(火) 14:41:37 ]
- そうじゃなくて
FileNameにフルパスでいれときゃいい
- 784 名前:デフォルトの名無しさん mailto:sage [2008/11/04(火) 15:16:55 ]
- >>782
はい、falseでした。 一度動くようになると、PCを再起動してもtrueですね・・・。 なぜでしょう? >>783 汚い書き方ですが、 OpenDialog1->FileName = OpenDialog1->InitialDir; をExecute()の前に置いたら動作しました。 Execute()で最初に開くフォルダはFileNameのフォルダで、InitialDirでは無いってことでよろしいでしょうか?
- 785 名前:デフォルトの名無しさん mailto:sage [2008/11/04(火) 17:13:51 ]
- さっさと教えてくださいよ。グズは嫌いですよ。
こっちも忙しいんだから早くして下さいね。
- 786 名前:デフォルトの名無しさん mailto:sage [2008/11/04(火) 23:57:41 ]
- >>784
>一度動くようになると パスが通ってるから。 想定される状況で通るように場合分けしたら? フォルダを開くという概念がどうもね。
- 787 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 17:01:27 ]
- ShowMessage()で表示したメッセージを
指定時間後に自動的に閉じることって可能でしょうか? 可能であればどうすればいいのでしょうか?
- 788 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 17:24:43 ]
- 根性
- 789 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 17:47:09 ]
- >>787
TSplashForm
- 790 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 23:35:09 ]
- タイマーで閉じればいいじゃん。
- 791 名前:デフォルトの名無しさん mailto:sage [2008/11/08(土) 00:16:07 ]
- タイマーイベントを設定して
Close(); Release(); で閉じれるね
- 792 名前:デフォルトの名無しさん mailto:sage [2008/11/08(土) 02:51:27 ]
- Delphi/C++Builderにはスプラッシュウィンドウが用意されてなかったっけ?
- 793 名前:デフォルトの名無しさん mailto:sage [2008/11/08(土) 04:17:33 ]
- VC++には昔っからあるのにね。
ってか、大麻付きダイアログを作ればいいだけだけど。
- 794 名前:デフォルトの名無しさん mailto:sage [2008/11/08(土) 04:38:46 ]
- 面倒くさい。とか言ってる奴がBCB使うわけで。
- 795 名前:デフォルトの名無しさん mailto:sage [2008/11/10(月) 09:41:38 ]
- あるある
- 796 名前:デフォルトの名無しさん [2008/11/10(月) 16:04:46 ]
- for (int I = 1; I <=9 ; I++){
pass = ID +"0"+IntToStr(I); fp = fopen(pass.c_str(), "rb" ); fread(data,2,10,fp); fclose(fp); } と途中まで作ったのですが、この9個の読み込んだ配列データ(data)を9個別々に A1〜A9(AnsiString)で格納したいのですがやりかたがわからないのでアドバイスください。 A1にはID01の読み込んだ配列データ・・・A9にはID09の配列データです。
- 797 名前:デフォルトの名無しさん mailto:sage [2008/11/10(月) 16:16:55 ]
- AnsiStringの配列じゃダメなのか?
- 798 名前:796 [2008/11/10(月) 16:25:20 ]
- >>797
AnsiStringでいいです。別のところでそれぞれの配列を使って計算したいので。。 どういう風に書けば9個格納できるでしょうか。
- 799 名前:デフォルトの名無しさん mailto:sage [2008/11/10(月) 16:36:03 ]
- AnsiStringの配列でいいじゃないかw
- 800 名前:デフォルトの名無しさん mailto:sage [2008/11/10(月) 16:46:49 ]
- 普通に配列使おうぜ?
char wk[128]; AnsiString A[10]; for (int I = 1; I <=9 ; I++){ pass = ID +"0"+IntToStr(I); fp = fopen(pass.c_str(), "rb" ); fread(wk,2,10,fp); fclose(fp); A[i] = wk; }
- 801 名前:796 [2008/11/10(月) 17:26:07 ]
- >>800
うまくいきません。 Memo1->Lines->Add(A1)で確認してみたのですがうまく読み込めていませんでした。 読み込むファイルが数百行というのは関係あるのでしょうか。 A1 = 1回目に読み込んだ配列 A2 ・・・ という感じでやりたいのですが。。。 とりあえずがんばってやってみます。
- 802 名前:デフォルトの名無しさん mailto:sage [2008/11/10(月) 17:35:33 ]
- >>801
んじゃさ、TStringList使えばいいんでないの? TStringList *sl = TStringList(); sl->LoadFromFile("ファイル名""); for( int i = 0; i < sl->Count; i ++ ){ aa = sl->Strings[i]; } こんな感じでどうよ?
|

|