Control.MouseClick Control.MouseClick Control.MouseClick Control.MouseClick Event

定义

用鼠标单击控件时发生。Occurs when the control is clicked by the mouse.

public:
 event System::Windows::Forms::MouseEventHandler ^ MouseClick;
public event System.Windows.Forms.MouseEventHandler MouseClick;
member this.MouseClick : System.Windows.Forms.MouseEventHandler 
Public Custom Event MouseClick As MouseEventHandler 

示例

下面的代码示例演示如何使用此成员。The following code example demonstrates the use of this member. 在此示例中, 事件处理程序报告MouseClick事件的发生。In the example, an event handler reports on the occurrence of the MouseClick event. 此报表可帮助你了解何时发生事件, 并可帮助你进行调试。This report helps you to learn when the event occurs and can assist you in debugging. 若要报告多个事件或频繁发生的事件, 请考虑MessageBox.ShowConsole.WriteLine消息替换为多行或将TextBox其追加到多行。To report on multiple events or on events that occur frequently, consider replacing MessageBox.Show with Console.WriteLine or appending the message to a multiline TextBox.

若要运行示例代码,请将其粘贴到一个项目中,该项目包含从Control继承的类型的实例,如ComboBox Button或。To run the example code, paste it into a project that contains an instance of a type that inherits from Control, such as a Button or ComboBox. 然后命名该实例Control1 ,并确保事件处理程序MouseClick与事件相关联。Then name the instance Control1 and ensure that the event handler is associated with the MouseClick event.

private void Control1_MouseClick(Object sender, MouseEventArgs e) {

System.Text.StringBuilder messageBoxCS = new System.Text.StringBuilder();
messageBoxCS.AppendFormat("{0} = {1}", "Button", e.Button );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Clicks", e.Clicks );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "X", e.X );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Y", e.Y );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Delta", e.Delta );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Location", e.Location );
messageBoxCS.AppendLine();
MessageBox.Show(messageBoxCS.ToString(), "MouseClick Event" );
}
Private Sub Control1_MouseClick(sender as Object, e as MouseEventArgs) _ 
     Handles Control1.MouseClick

    Dim messageBoxVB as New System.Text.StringBuilder()
    messageBoxVB.AppendFormat("{0} = {1}", "Button", e.Button)
    messageBoxVB.AppendLine()
    messageBoxVB.AppendFormat("{0} = {1}", "Clicks", e.Clicks)
    messageBoxVB.AppendLine()
    messageBoxVB.AppendFormat("{0} = {1}", "X", e.X)
    messageBoxVB.AppendLine()
    messageBoxVB.AppendFormat("{0} = {1}", "Y", e.Y)
    messageBoxVB.AppendLine()
    messageBoxVB.AppendFormat("{0} = {1}", "Delta", e.Delta)
    messageBoxVB.AppendLine()
    messageBoxVB.AppendFormat("{0} = {1}", "Location", e.Location)
    messageBoxVB.AppendLine()
    MessageBox.Show(messageBoxVB.ToString(),"MouseClick Event")

End Sub

注解

当光标位于控件上方时,按下鼠标按钮通常会引发控件中的以下一系列事件:Depressing a mouse button when the cursor is over a control typically raises the following series of events from the control:

  1. MouseDown 事件。MouseDown event.

  2. Click 事件。Click event.

  3. MouseClick 事件。MouseClick event.

  4. MouseUp 事件。MouseUp event.

为此,不能在控件的类中禁用各种事件。For this to occur, the various events cannot be disabled in the control's class.

按用户操作系统的鼠标设置所确定的,两次单击即可完成,这将生成一个MouseDoubleClick事件而不是第二个MouseClick事件。Two single clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a MouseDoubleClick event instead of the second MouseClick event.

重要

Click事件是控件在逻辑上更高的级别事件。Click events are logically higher-level events of a control. 它们通常由其他操作引发,例如当控件具有焦点时按 ENTER 键。They are often raised by other actions, such as pressing the ENTER key when the control has focus.

有关处理事件的详细信息, 请参阅处理和引发事件For more information about handling events, see Handling and Raising Events.

适用于

另请参阅