Control.Capture Propriedade

Definição

Obtém ou define um valor que indica se o controle capturou o 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 da propriedade

true se o controle tiver capturado o mouse; caso contrário, false.

Atributos

Exemplos

O exemplo de código a seguir demonstra a Capture propriedade . Para executar este exemplo, cole o código a seguir em um formulário que contém um Label label1 nomeado e dois ListBox controles chamados listbox1 e listbox2. Verifique se o evento de MouseDown formulário e controles está associado ao método neste exemplo.

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

Comentários

Quando um controle captura o mouse, ele recebe a entrada do mouse, independentemente de o cursor estar ou não dentro de suas bordas. Normalmente, o mouse é capturado somente durante operações de arrastar.

Somente a janela em primeiro plano pode capturar o mouse. Quando uma janela em segundo plano tenta fazer isso, a janela recebe mensagens somente para eventos do mouse que ocorrem quando o cursor do mouse está dentro da parte visível da janela. Além disso, mesmo que a janela em primeiro plano tenha capturado o mouse, o usuário ainda poderá clicar em outra janela, colocando-a em primeiro plano.

Quando o mouse é capturado, as teclas de atalho não devem funcionar.

Aplica-se a

Confira também