Red de conocimiento informático - Problemas con los teléfonos móviles - Cómo obtener el foco del formulario winform

Cómo obtener el foco del formulario winform

El código es el siguiente:

//llamar API

[System.Runtime.InteropServices.DllImport("user32.dll", CharSet = System.Runtime.InteropServices.CharSet.Auto , ExactSpelling = true)]

public static extern IntPtr GetForegroundWindow(); //Obtener el identificador de este formulario

[System.Runtime.InteropServices.DllImport("user32.dll" , CharSet = System.Runtime.InteropServices.CharSet.DllImport("user32.dll", EntryPoint = "SetForegroundWindow")]

public static extern bool SetForegroundWindow(IntPtr hWnd); ventana activa

//definir la variable, manejar el tipo

public IntPtr han

Cuando se carga el formulario, el valor de la variable, es decir, el actual. ventana El identificador del cuerpo se asigna a la variable:

El código es el siguiente:

void Form1_Load(object sender, EventArgs e)

{

han = this.Handle;

Cuando se carga el formulario, asigne el valor de la variable, es decir, el identificador del formulario actual, a la variable:

El código es el siguiente Handle;

timer2.Enabled = true;

}

/ Cargue el control del temporizador, verifique si el identificador actual de WINDOWS es el igual que el identificador de este formulario, si no, actívalo. El formulario

El código es el siguiente:

private void timer2_Tick(object sender, EventArgs e)

{

if (han ! = GetForegroundWindow ())

{

SetForegroundWindow(han);

}

}

}