次の方法で共有


手順 6: ボタン コントロールの名前の設定

PictureBox はフォームで 1 つだけ使用しています。このコントロールには、追加したときに自動的に pictureBox1 という名前が付けられています。CheckBox も 1 つだけで、checkBox1 という名前が付けられています。この後に記述するコードの中には、CheckBox と PictureBox を参照するものがあります。これらのコントロールについては、どちらも 1 つだけであるため、コードで pictureBox1 または checkBox1 となっていても何を指しているのかがわかります。

[!メモ]

Visual Basic の場合は、どのコントロールの名前も既定で先頭文字が大文字になるため、名前は PictureBox1CheckBox1 のようになります。

ボタンはフォームに 4 つあり、button1button2button3、および button4 という名前が付けられています。現在の名前を見ただけでは、どれが [Close] ボタンでどれが [Show a picture] ボタンなのかわかりません。そのため、ボタン コントロールにもっとわかりやすい名前を付けると便利です。

ビデオへのリンクこのトピックのビデオ版については、「Tutorial 1: Create a Picture Viewer in Visual Basic - Video 3 (チュートリアル 1: Visual Basic によるピクチャ ビューアーの作成 - ビデオ 3)」または「Tutorial 1: Create a Picture Viewer in C# - Video 3 (チュートリアル 1: C# によるピクチャ ビューアーの作成 - ビデオ 3)」を参照してください。これらのビデオでは、旧バージョンの Visual Studio を使用しているため、一部のメニュー コマンドやその他のユーザー インターフェイス要素が若干異なります。ただし、概念および手順は、現在のバージョンの Visual Studio でも同様です。

ボタン コントロールの名前を設定するには

  1. フォームで [閉じる] をクリックします。 (すべてのボタンが選択されたままになっている場合は、Esc キーを押して選択を取り消します)。 [プロパティ] ウィンドウで、(Name) プロパティが表示されるまでスクロールします (プロパティがアルファベット順になっている場合は、(Name) プロパティは上の方にあります)。 次の図に示すように、名前を closeButton に変更します。

    closeButton の名前が表示された [プロパティ] ウィンドウ

    closeButton 名のある [プロパティ] ウィンドウ

    [!メモ]

    ボタンの名前を、close と Button の間に空白文字を含む「closeButton」という名前に変更しようとすると、IDE で "プロパティの値が無効です" というエラー メッセージが表示されます。 空白文字 (およびその他のいくつかの文字) は、コントロール名に使用できません。

  2. 他の 3 つのボタンの名前を backgroundButtonclearButton、および showButton に変更します。名前を確認するには、[プロパティ] ウィンドウにあるコントロール セレクターのドロップダウン リストをクリックします。新しいボタン名が表示されます。

  3. フォームで [Show a picture] をダブルクリックします。代わりに、フォームの [Show a picture] をクリックし、Enter キーを押すこともできます。これを行うと、IDE では [Form1.cs] (Visual Basic を使用している場合は [Form1.vb]) というメイン ウィンドウで追加のタブが開きます。このタブは、次の図に示すように、フォームの背後にあるコード ファイルを示します。

    Visual C# コードが表示された [Form1.cs] タブ

    Visual C# コードのある [Form1.cs] タブ

  4. コードの次の部分にフォーカスを設定します。 (Visual Basic を使用していてコードの Visual Basic バージョンを表示するには、次の [VB] タブをクリックします)。

    Private Sub showButton_Click() Handles showButton.Click
    
    End Sub
    
    private void showButton_Click(object sender, EventArgs e)
    {
    }
    

    showButton_Click() というコードが表示されています。[showButton] ボタンのコード ファイルを開いたときに、これがフォームのコードに追加されます。デザイン時に、フォームでコントロールのコード ファイルを開いて、コードが存在しない場合はコントロール用のコードが生成されます。メソッドと呼ばれるこのコードは、プログラムを実行し、コントロール (この場合は、[Show a picture]) をクリックしたときに実行されます。

    [!メモ]

    このチュートリアルでは、自動的に生成される Visual Basic コードのかっこ () で囲まれた部分をすべて削除して、コードを簡略化してあります。このような場合は、コードの同じ部分を削除してかまいません。いずれの場合もプログラムは正常に機能します。チュートリアルの残りの部分では、自動的に生成されるコードについてはできる限り簡略化して示します。

  5. Windows フォーム デザイナーのタブ (Visual C# の場合は [Form1.cs [デザイン]]、Visual Basic の場合は [Form1.vb [デザイン]]) をもう一度クリックし、[Clear the picture] ボタンのコード ファイルを開いてフォーム コード内のメソッドを作成します。残りの 2 つのボタンについてもこの手順を繰り返します。それぞれについて、フォームのコード ファイルに新しいメソッドが追加されます。

  6. メソッドをもう 1 つ追加するために、Windows フォーム デザイナーで CheckBox コントロールのコード ファイルを開きます。IDE で checkBox1_CheckedChanged() メソッドが追加されます。このメソッドは、ユーザーがチェック ボックスのオンとオフを切り替えるたびに呼び出されます。

    [!メモ]

    プログラムの作業を行うときは、コード エディターと Windows フォーム デザイナーを頻繁に切り替えることになりますが、IDE ではプロジェクト内を簡単に移動することができます。ソリューション エクスプローラーを使用して Windows フォーム デザイナーを開くには、Visual C# の場合は [Form1.cs]、Visual Basic の場合は [Form1.vb] をダブルクリックします。または、メニュー バーで [表示][デザイナー] の順にクリックします。

    コード エディターに表示される新しいコードを次に示します。

    Private Sub clearButton_Click() Handles clearButton.Click
    
    End Sub 
    
    Private Sub backgroundButton_Click() Handles backgroundButton.Click
    
    End Sub 
    
    Private Sub closeButton_Click() Handles closeButton.Click
    
    End Sub 
    
    Private Sub CheckBox1_CheckedChanged() Handles CheckBox1.CheckedChanged
    
    End Sub
    
    private void clearButton_Click(object sender, EventArgs e)
    {
    }
    
    private void backgroundButton_Click(object sender, EventArgs e)
    {
    }
    
    private void closeButton_Click(object sender, EventArgs e)
    {
    }
    
    private void checkBox1_CheckedChanged(object sender, EventArgs e)
    {
    }
    

    追加した 5 つのメソッドは、(ユーザーがボタンをクリックしたときやチェック ボックスをオンにしたときなど) イベントが発生するたびにプログラムで呼び出されることから、イベント ハンドラーと呼ばれます。

    デザイン時に IDE でコントロールのコードを表示して、イベント ハンドラー メソッドが見つからないと Visual Studio はコントロールのためにこれを追加します。たとえば、ボタンをダブルクリックすると、そのボタンの Click イベントに対するイベント ハンドラー (ユーザーがボタンをクリックするたびに呼び出されるイベント ハンドラー) が追加されます。チェック ボックスをダブルクリックすると、そのチェック ボックスの CheckedChanged イベントに対するイベント ハンドラー (ユーザーがチェック ボックスのオンとオフを切り替えるたびに呼び出されるイベント ハンドラー) が追加されます。

    コントロールのイベント ハンドラーを追加した後は、Windows フォーム デザイナーでコントロールをダブルクリックするか、またはメニュー バーで [表示][コード] の順にクリックして、いつでもイベント ハンドラーに戻ることができます。

    名前は、プログラムを作成するときに重要になります。メソッド (イベント ハンドラーを含む) には任意の名前を付けることができます。IDE でイベント ハンドラーを追加した場合は、コントロールの名前と処理されるイベントに基づいて名前が作成されます。たとえば、showButton というボタンの Click イベントのイベント ハンドラー メソッドには showButton_Click() という名前が付けられます。また、メソッドであることを示すために、通常はメソッド名の後に左かっこと右かっこ () が追加されます。コード変数名を変更する場合は、コードの変数を右クリックし、[リファクター] をクリックし、[名前の変更] をクリックします。コードのその変数のすべてのインスタンスの名前は変更されます。詳細については、「名前の変更リファクタリング (C#)」または「リファクタリングと [名前の変更] ダイアログ ボックス (Visual Basic)」を参照してください。

続行または確認するには