Control.Capture Proprietà

Definizione

Ottiene o imposta un valore che indica se il controllo ha ricevuto l'input del 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

Valore della proprietà

true se il controllo ha ricevuto l'input del mouse; in caso contrario, false.

Attributi

Esempio

Nell'esempio di codice seguente viene illustrata la Capture proprietà . Per eseguire questo esempio, incollare il codice seguente in un modulo contenente un Label oggetto label1 denominato e due ListBox controlli denominati listbox1 e listbox2. Verificare che l'evento del modulo e dei controlli sia MouseDown associato al metodo in questo esempio.

// 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

Commenti

Quando un controllo ha acquisito il mouse, riceve l'input del mouse indipendentemente dal fatto che il cursore si trova all'interno dei bordi. Il mouse viene in genere acquisito solo durante le operazioni di trascinamento.

Solo la finestra in primo piano può acquisire il mouse. Quando una finestra di sfondo tenta di eseguire questa operazione, la finestra riceve messaggi solo per gli eventi del mouse che si verificano quando il cursore del mouse si trova all'interno della parte visibile della finestra. Inoltre, anche se la finestra in primo piano ha acquisito il mouse, l'utente può comunque fare clic su un'altra finestra, portandola in primo piano.

Quando viene acquisito il mouse, i tasti di scelta rapida non dovrebbero funzionare.

Si applica a

Vedi anche