- ベストアンサー
BCB6で教科書付属プログラム実行表示
- BCB6で教科書付属のプログラムを実行し、リストを表示する方法についての質問です。
- 具体的には、表示部分のコンポーネントやプログラムの貼り付け場所、ボタンのイベント処理について分からない点があります。
- また、以前はMAKEファイルを使用して実行していたが、BCB6では必要ないのかもしれません。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
1. 表示部分には、好きな物を使えばいいと思います。 テキストがだらだら表示されるのであれば、メモがいいかもしれませんし、 ホントにリストとしてあとから使うようなものであれば、リストボックスを使うとか。 2. GUIベースのイベント駆動されるプログラムでは、 ほとんどイベントの部分に記入すれば良いと思います。(まあ、一般的な話で、いつもそうというわけではないですが) 3. ボタンのイベントに主となる(main関数は、システムが用意するので必要なくなる)プログラムを書けば(転記)すればよいと思います。 コンソール出力だった部分を、1.で選んだコンポーネントに出力するよう変更しないといけないと思います。 4. makeファイルはシステムが用意します。 特別には必要ありません。 ビルドとか、いきなり実行を選ぶとコンパイル&実行されます。 役に立つ回答かどうかはわかりませんが、 がんばって下さい。
その他の回答 (2)
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
>どのように結果を表示させたらよいのか分からず頭を悩ませています っていうか、それって、BCBで書き直すというより もとのプログラム自体理解できてないってことじゃないですか? まず、プログラムの理解をしないと、ただ動いたってだけじゃ意味がありません。 なんていうか、目隠しでワケもわからず、車を走らせているようなもんです。 どういう操作をしたら車が走ったり曲がったりするのかわかってないで運転はできません。 まず、元のプログラムの動作を理解するってところに戻りましょう。
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
Memo1とEdit1があって、 ボタンを押すたびに Editボックスに書かれた文字列をメモに追加するには、 Button1Clickに以下のように書きます。 Memo1->Lines->Add(Edit1.Text); つまり、 Memo1->Lines->Add("書きたい文字列"); のようにして、メモに行を追加することができます。 具体的には、 例えば、printf("なんたらかたら%d\n",var); のように出力していた部分を Memo1->Lines->Add(Format("なんたらかたら%d",var)); みたいな形でメモに書き出せば良いです。 Format関数についても、詳しくはヘルプを見て下さい。 ボーランドの開発環境は、BCBに限らず、ヘルプが充実しているので、このようなことは、調べればすぐわかります。 例えば、フォームデザインの処で、 Memoオブジェクトをクリックして選択された状態でF1キーを押すと、Memoコンポーネントについてのヘルプが見れます。 そこで、プロパティやメソッドについて調べることができ、さらに、そこで使われているクラスなどについて同じようにたどって調べることができます。 クラス定義は、イベントに書いたりしないで、プロジェクトから追加するようにします。
お礼
ご返答ありがとうございました。アドバイスの元に,やってみました。ら,Memoにどのように結果を表示させたらよいのか分からず頭を悩ませています。こんな初歩的な質問に答えて下さり本当にありがとうございました。
お礼
返信大変ありがとうございました。また質問になってしますのですが,MEMOにボタンを押すことにより,リストを表示させるにはどのような命令を書けばいいのですか??本やサイトを見ても参考のものがなく理解に乏しい状態です。。また,ボタンのクリックイベントにプログラムを転記してみましたが,エラーが続出してしまい‥下に略したプログラムを載せておりますので,参考にして頂けたら幸いです。ご返答ありがとうございました。またお時間ありましたらアドバイスをよろしくお願いします。 #include <deque> #include <algorithm> #include <iostream> using namespace std; struct State { // // 状態を表すフラグ // false は、川の左岸、true は、川の右岸を表わす // bool wolf; bool goat; bool cabbage; bool man; // // この状態になるまでの道のり // deque<State> path; public: // // -------- 初期化 -------- // // 初期状態では、全て川の左岸 State() : wolf( false ), goat( false ), cabbage( false ), man( false ), path() { } // // -------- 状態のチェック -------- // // 目標状態かどうか bool succeeded() const { return( this -> wolf && this -> goat && this -> cabbage && this -> man ); } // 禁止状態かどうか bool failed() const { return( (wolf == goat && man != wolf) || (goat == cabbage && man != goat) ); }