第36講 複数のソフトをナビゲーションソフトから起動する(マルチスレッド研究)☆☆
第3話 新たなスレッドから新しいソフトを起動する方法

では、新しいスレッドから新しいソフトを起動しするための方法を記述していきましょう。
まず、ソリューションエクスプローラーを表示して、
マルチスレッドヘッダファイルを右クリックしてください。
そして、追加→新しい項目と進み、
c++Windowsフォームを選びます。
名前は、Form2としましょう。
そして、OKを押します。
すると、入門Form2.h[デザイン]ができています。

同じ手順を繰り返し、Form3、Form4、Form5を加えます。
vc++
尚、それぞれのデザインやForm1.hはの順番はドラッグで変更できますので、
画面と順番が違っていても全く気にする必要はありません。

Form1.h[デザイン]をクリックして、
ツールボックスからボタンを4つ入れてください。
右クリックしてプロパティから、
BottonのTextをそれぞれ、
『素数探索ソフトを起動する』『数独探索ソフトを起動する』『魔方陣探索ソフトを起動する』『円周率計算ソフトを起動する』にして、
BottonとForm1大きさと位置を手適当に調整して、
初心者
としてください。
ボタンができたら、それぞれのボタンをダブルクリックして
コードを記述します。
記述内容は以下の通りです。
#pragma endregion
  private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
           Thread^ t=gcnew Thread(gcnew ThreadStart(f1));
           t->Start();
        }
  private: System::Void button2_Click(System::Object^ sender, System::EventArgs^ e) {
           Thread^ t=gcnew Thread(gcnew ThreadStart(f2));
           t->Start();
        }
  private: System::Void button3_Click(System::Object^ sender, System::EventArgs^ e) {
           Thread^ t=gcnew Thread(gcnew ThreadStart(f3));
           t->Start();
        }
  private: System::Void button4_Click(System::Object^ sender, System::EventArgs^ e) {
           Thread^ t=gcnew Thread(gcnew ThreadStart(f4));
           t->Start();
        }
        static void f1(){
           Application::Run(gcnew Form2());
        }
        static void f2(){
           Application::Run(gcnew Form3());
        }
        static void f3(){
           Application::Run(gcnew Form4());
        }
        static void f4(){
           Application::Run(gcnew Form5());
        }
  };
}
記述の意味は、第5話で詳しく説明します。

さらに、冒頭に
#pragma once
#include"stdafx.h"
#include "Form2.h"
#include "Form3.h"
#include "Form4.h"
#include "Form5.h"

namespace スレッドの起動 {

    using namespace System;
    using namespace System::ComponentModel;
    using namespace System::Collections;
    using namespace System::Windows::Forms;
    using namespace System::Data;
    using namespace System::Drawing;
    using namespace System::Threading;
             ・
ピンクを加えます。

準備が整いました。F5を押してビルドしてみましょう。
ナビゲーションソフトが起動します。
『素数探索ソフトを起動する』『数独探索ソフトを起動する』『魔方陣探索ソフトを起動する』『円周率計算ソフトを起動する』
各ボタンをクリックしましょう。
すると、Form2などが起動します。
それぞれのボタンを何回も押して、何重にも起動できることを確認しましょう。



第2話へ 第4話へ


戻る

VC++講義第1部へ
vb講義へ
VB講義基礎へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座
初心者のための世界で一番わかりやすいVBA入門講義(基礎から応用まで)