3

Visual C# 2008 を使用していますが、パネルでマウス イベントが発生します。マウス ダウン、マウス リーブ、マウス エンターを定義しました。とてもシンプルにしました。

必要なイベントを選択したパネルを押すと、マウス イベントを発生させるために必要なコードが自動生成されました。

受信イベントコードにブレークポイントを挿入しましたが、起動しません。

Visual C# にバグはありますか? 私が間違っていることを見つけることができません。

いくつかのコードForm1.Designer:

this.pagepanel.MouseDown += new System.Windows.Forms.MouseEventHandler(this.pagepanel_MouseDown);
this.pagepanel.MouseEnter += new System.EventHandler(this.pagepanel_MouseEnter);
this.pagepanel.MouseLeave += new System.EventHandler(this.pagepanel_MouseLeave);

Form1.cs:

private void pagepanel_MouseLeave(object sender, EventArgs e) =>
    this.Cursor = Cursors.Default;
private void pagepanel_MouseEnter(object sender, EventArgs e) =>
    this.Cursor = Cursors.WaitCursor;

private void pagepanel_MouseDown(object sender, MouseEventArgs e)
{
    if (mode == MODE_BUTTON)
    {
        int x = e.X;
        int y = e.Y;

        switch (e.Button)
        {
            case MouseButtons.Right: break;
            case MouseButtons.Left:   break;
            case MouseButtons.Middle: break;
        }
    }
}
4

1 に答える 1

3

パネルが前面にあることを確認してください。デザイナーで前面に出すを使用します。別のコンテナ コントロールが邪魔をしている可能性があります。

于 2012-09-09T20:52:05.813 に答える