私は 2 年以上コンソール アプリケーションに取り組んできました。コードは常に改善/拡張されていますが、GUI を追加すると役立つと思いました。最初のいくつかの障害の後、基本的な GUI (CLI を使用した Windows フォーム) ができました。最初に、「メイン」関数内から GUI から入力を取得しようとしました (コンソール アプリからのメイン関数でした)。次に、これは良い考えではないことを読み、「実行」ボタンをクリックした後に関数への入力が変更される可能性を望まないことにも気付きました。
したがって、基本的に、これに最適なプログラミング手法は何なのか疑問に思っています。これを行う方法を本当に知っている唯一の方法は、button_click イベント内から「メイン」関数を開き、テキストボックスとチェックボックスから取得した値を渡すことです。
私は別の方法を認識していませんが、これはあまりにもずさんなようです。メイン関数には 100 を超える値が渡される可能性があり、これほど多くの引数を持つ関数は見たことがありません。以前は、それらを関数にハードコードするか、cin を使用して実行時に変更していました。
これに関するアドバイスは大歓迎です。プログラミングの練習が下手なら、今していることを続けたくありません。また、OOP についての知識があまりないため、私のプログラミング スタイルは通常は手続き型であることも言及しておく必要があります。
現時点で私がどのように行っているかを示す例を次に示します。
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
if ( this->Input1->Text->Length == 0 )
this->Input1->Text = "Enter number";
else{
String^ In1Str = this->Input1->Text;
double In1 = Convert::ToDouble(In1Str);
if(this->CBshowConsole->Checked)
showConsole();
main(In1);
}
}
繰り返しになりますが、ここから行う方法は、基本的にこれを Input2、Input3、Input4 などに対して行い、In2、In3、In4 などをメイン関数に渡すことです。