Compartir vía


Control.Capture Propiedad

Definición

Obtiene o establece un valor que indica si el control ha capturado el mouse.

public:
 property bool Capture { bool get(); void set(bool value); };
[System.ComponentModel.Browsable(false)]
public bool Capture { get; set; }
[<System.ComponentModel.Browsable(false)>]
member this.Capture : bool with get, set
Public Property Capture As Boolean

Valor de propiedad

true si el control ha capturado el mouse; en caso contrario, false.

Atributos

Ejemplos

En el ejemplo de código siguiente se muestra la Capture propiedad . Para ejecutar este ejemplo, pegue el código siguiente en un formulario que contenga un Label label1 con nombre y dos ListBox controles denominados listbox1 y listbox2. Asegúrese de que el evento de formulario y controles MouseDown está asociado al método de este ejemplo.

// This method handles the mouse down event for all the controls on the form.  
// When a control has captured the mouse
// the control's name will be output on label1.
void Control_MouseDown( System::Object^ sender,
   System::Windows::Forms::MouseEventArgs^ /*e*/ )
{
   Control^ control = (Control^)(sender);
   if ( control->Capture )
   {
      label1->Text = control->Name + " has captured the mouse";
   }
}
// This method handles the mouse down event for all the controls on the form.  
// When a control has captured the mouse
// the control's name will be output on label1.
private void Control_MouseDown(System.Object sender, 
    System.Windows.Forms.MouseEventArgs e)
{
    Control control = (Control) sender;
    if (control.Capture)
    {
        label1.Text = control.Name+" has captured the mouse";
    }
}
'This method handles the mouse down event for all the controls on the form.  When a control has
'captured the mouse, the control's name will be output on label1.
Private Sub Control_MouseDown(ByVal sender As System.Object, _
    ByVal e As System.Windows.Forms.MouseEventArgs) Handles MyBase.MouseDown, _
    label1.MouseDown, listbox1.MouseDown, listbox2.MouseDown
    Dim control As Control = CType(sender, Control)
    If (control.Capture) Then
        label1.Text = control.Name & " has captured the mouse"
    End If
End Sub

Comentarios

Cuando un control ha capturado el mouse, recibe la entrada del mouse tanto si el cursor está dentro de sus bordes como si no. Normalmente, el mouse solo se captura durante las operaciones de arrastre.

Solo la ventana en primer plano puede capturar el mouse. Cuando una ventana de fondo intenta hacerlo, la ventana recibe mensajes solo para los eventos del mouse que se producen cuando el cursor del mouse está dentro de la parte visible de la ventana. Además, incluso si la ventana en primer plano ha capturado el mouse, el usuario puede seguir haciendo clic en otra ventana, lo que lo lleva al primer plano.

Cuando se captura el mouse, las teclas de método abreviado no deben funcionar.

Se aplica a

Consulte también