次の方法で共有


Form.Activate メソッド

フォームをアクティブにし、そのフォームにフォーカスを移します。

Public Sub Activate()
[C#]
public void Activate();
[C++]
public: void Activate();
[JScript]
public function Activate();

解説

アクティブなアプリケーションであるフォームをアクティブにした場合は、そのフォームが最前面に移動します。アクティブなアプリケーションではないフォームの場合は、そのフォームのウィンドウ キャプションが点滅します。このメソッドを有効にするには、フォームを表示できる状態にしておく必要があります。フォームがマルチ ドキュメント インターフェイス (MDI) アプリケーションのフォームである場合に、アプリケーション内でアクティブなフォームを決定するには、 ActiveForm プロパティまたは ActiveMdiChild プロパティを使用します。

使用例

[Visual Basic, C#] SetDesktopLocation メンバ、 Load メンバ、および Activate メンバの使用方法を示すコード例を次に示します。この例を実行するには、次のコードを、Form1 という名前のフォームに貼り付けます。このフォームには、Button1 という名前のボタンおよび Label1 と Label2 という名前の 2 つのラベルが配置されています。必ずすべてのイベントをイベント処理メソッドに関連付けるようにしてください。

 
Shared x As Integer = 200
Shared y As Integer = 200

Private Sub Button1_Click(ByVal sender As System.Object, _
    ByVal e As System.EventArgs) Handles Button1.Click

    ' Create a new Form1 and set its Visible property to true.
    Dim form2 As New Form1
    form2.Visible = True

    ' Set the new form's desktop location so it appears below and 
    ' to the right of the current form.
    form2.SetDesktopLocation(x, y)
    x += 30
    y += 30

    ' Keep the current form active by calling the Activate method.
    Me.Activate()
    Me.Button1.Enabled = False
End Sub



' Updates the label text to reflect the current values of x and y, 
' which was were incremented in the Button1 control's click event.
Private Sub Form1_Activated(ByVal sender As Object, _
    ByVal e As System.EventArgs) Handles MyBase.Activated
    Label1.Text = "x: " & x & " y: " & y
    Label2.Text = "Number of forms currently open: " & count
End Sub

Shared count As Integer = 0

Private Sub Form1_Closed(ByVal sender As Object, _
    ByVal e As System.EventArgs) Handles MyBase.Closed
    count -= 1
End Sub

Private Sub Form1_Load(ByVal sender As Object, _
    ByVal e As System.EventArgs) Handles MyBase.Load
    count += 1
End Sub

[C#] 
static int x = 200;
static int y = 200;

private void Button1_Click(System.Object sender, 
    System.EventArgs e)
{
    // Create a new Form1 and set its Visible property to true.
    Form1 form2 = new Form1();
    form2.Visible = true;

    // Set the new form's desktop location so it  
    // appears below and to the right of the current form.
    form2.SetDesktopLocation(x, y);
    x += 30;
    y += 30;

    // Keep the current form active by calling the Activate
    // method.
    this.Activate();
    this.Button1.Enabled = false;
}



// Updates the label text to reflect the current values of x 
// and y, which was were incremented in the Button1 control's 
// click event.
private void Form1_Activated(object sender, System.EventArgs e)
{
    Label1.Text = "x: "+x+" y: "+y;
    Label2.Text = "Number of forms currently open: "+count;
}

static int count = 0;

private void Form1_Closed(object sender, System.EventArgs e)
{
    count -= 1;
}

private void Form1_Load(object sender, System.EventArgs e)
{
    count += 1;
}

[C++, JScript] C++ および JScript のサンプルはありません。Visual Basic および C# のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

.NET Framework セキュリティ:

参照

Form クラス | Form メンバ | System.Windows.Forms 名前空間 | ActiveForm | ActiveMdiChild