Control.Capture Tulajdonság
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Lekéri vagy beállít egy értéket, amely jelzi, hogy a vezérlő rögzítette-e az egeret.
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
Tulajdonság értéke
trueha a vezérlő rögzítette az egeret; egyéb esetben. false
- Attribútumok
Példák
Az alábbi példakód a tulajdonságot Capture mutatja be. A példa futtatásához illessze be a következő kódot egy Label elnevezett címkét1 és két ListBox listbox1 és listbox2 nevű vezérlőt tartalmazó űrlapba. Győződjön meg arról, hogy az űrlap és vezérlők eseménye MouseDown a példában szereplő metódushoz van társítva.
// 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
Megjegyzések
Ha egy vezérlő rögzítette az egeret, akkor megkapja az egér bemenetét, függetlenül attól, hogy a kurzor a szegélyeken belül van-e. Az egér általában csak húzási műveletek során lesz rögzítve.
Csak az előtéren lévő ablak képes rögzíteni az egeret. Amikor egy háttérablak megkísérli ezt megtenni, az ablak csak akkor kap üzeneteket, ha az egérmutató az ablak látható részén belül van. Emellett még ha az előtérablak rögzítette is az egeret, a felhasználó továbbra is rákattinthat egy másik ablakra, és az előtérben helyezheti el.
Az egér rögzítésekor a billentyűparancsok nem működnek.