実践解説/入門(Web)


  1. dllファイルの参照
    まず、あなたのシステムでSlothLibを利用できるようにします。

    1. Visual Studioの画面右部にある「ソリューションエクスプローラ」というウィンドウから、プロジェクトのソースの参照設定を右クリックし、参照の追加を選択します。
      ref2.PNG

      もしソリューションエクスプローラがVisual Studioの画面上に表示されていない場合は、メニューの[表示]から[ソリューションエクスプローラ]を選択することで表示できます。
      solution.PNG

    2. 「参照の追加」というウインドウが表示されるので、「参照」タブを選び、SlothLibの中でもあなたが使いたい機能を持つdllファイルを指定します。 今回はまず、Webに関する基本的な機能が含まれているSlothlib.Web.Search.Base.dllを追加します。
      addref2.PNG

      同様に、Yahoo検索に関する機能を持つ SlothLib.Web.Search.YahooJapanWebService.dllを追加してください。

    3. 「参照設定」の「+」をクリックすることで参照が追加されているかどうか確認することができます。
      refadded2.PNG

  2. コントロールの配置
    今からあなたが作るシステムの画面上に、コントロール(ボタンなどの機能)を設置します。

    1. ソリューションエクスプローラにあるForm1.csをダブルクリックするか、右クリックメニューからデザイナの表示を選択します。
      designer.PNG

    2. 画面左側のツールボックスから配置したいコントロールを選び配置します。
      配置は、ツールボックス上に表示されたコントロールをダブルクリックまたはドラッグ&ドロップすることにより行えます。
      button.PNG

    3. TextBoxコントロールを2つ、Buttonコントロールを1つフォーム内に配置してください。
      配置したコントロールはドラッグによりサイズを変更することができます。
      controlSet.PNG

    4. 各コントロールのプロパティを変更します。
      テキストボックスとボタンの名前およびその他のプロパティの値を、以下の方法で変更します。これにより、ボタンに表示される文字などさまざまな変更を行うことができます。
      まず、テキストボックスのプロパティを変更してみましょう。テキストボックスを選択して右クリックし、[プロパティ]を選びます。

      propertySet.PNG

      TextBoxコントロールは、Multilineプロパティの値をtrueに変更することで、複数行の入力が可能になり、上下の幅も調節できるようになります。

      tbResult.PNG

      tbResultのMultilineプロパティの値をtrueにし、tbResultのサイズを変更しました。

      同様に、他のコントロールの変数名(Name)の値も変更します。(Name)で指定した値はプログラム中で利用するときの呼び名として使うので、分かりやすい名前にしておきましょう。
      YahooSearch.PNG
      今回は、
      検索式の入力用のTextBoxの名前をtbQuery
      検索用のButtonの名前をbtnSearch
      検索結果が出力されるテキストボックスの名前をtbResult
      とすることにします。

      最後に、Form1のTextプロパティの値を「YahooSearch」に、btnSearchのTextプロパティの値を「検索」に変更します。


  3. コードの記述
    ライブラリの機能を利用するために、今からその機能を利用するということを宣言します。
    使いたいライブラリの名前空間をusingディレクティブに追加するということを行うことで、プログラム中でライブラリの機能を使えるようになります。以下に例を示します。
    1. まず、ソリューションエクスプローラからForm1.csを右クリックし、コードの表示を選択します。
      code.PNG

    2. 使いたいライブラリの名前空間をusingに追加します。
      例えば、Slothlib.Web.Search.Base.dllとSlothLib.Web.Search.YahooJapanWebService.dllの場合、以下のように参照を追加します。
      using SlothLib.Web.Search;

      using2.PNG

    3. プログラムの実際の動作となるコードを記述します。
      ボタンをクリックしたときに動作を行わせる方法を説明します。
      まず、画面上部のタブから、[Form1.cs[デザイン]]をクリックします。
      formDesign.PNG

      デザインのページが開くので、ボタンをダブルクリックしてください。
      buttonClick.PNG

      すると、次のような画面が表示されます。
      btnClick.PNG

      これは、ボタンがクリックされたときに実行される関数です。 ここに、以下のように記述することにより、検索式入力用のTextBoxに入力された内容をYahooで検索し、上位10件のタイトルが検索結果出力用のTextBoxに表示されます。
      private void btnSearch_Click(object sender, EventArgs e)
      {
          tbResult.Text = "";
          IWebSearch yahoo = new YahooJpWebSearch("slothlib");
          IWebSearchResult result = yahoo.DoSearch(tbQuery.Text, 10); 
           foreach (IWebElement element in result.ResultElements)
          {
              tbResult.Text += element.Title + "\r\n";
          }
      }
      Form1.csのコードが次のようになっていたら、完了です。

      form1.PNG

    4. コードの記述が完了したら、メニューの[デバッグ]から[デバッグの開始]を選択し、ビルドします。
      debug.PNG

      ビルドが成功するとウインドウが表示されるので、正しく動作するか確認します。
      適当な検索式を入力して「検索」ボタンを押し、結果が表示されたら成功です。
      demo.PNG

      ビルドに失敗した場合は、以下のように画面下部のエラー一覧にエラーの内容が表示されるので、修正して、もう一度ビルドしてください。
      error2.PNG