.NETクラス "Panel"から継承したpersonnalクラスにイベントハンドラを追加しようとしました。ランタイム時にクラスにMouseDownイベントとMouseMoveイベントを追加します。
私はそれを行うには、いくつかのいくつかの方法を試してみましたが、それは私が他のパネルが含まれている主なパネルを持っている...もう
を働いていません。それはGrafcetを設計することです。
だから私はパネルを継承私のクラス「エタップ」があります。
class Etape : Panel
{
private Point MouseDownLocation;
private void Etape_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
MouseDownLocation = e.Location;
this.BackColor = CouleurSelect;
MessageBox.Show("Bonjour");
}
}
private void Etape_MouseMove(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
this.Left = e.X + this.Left - MouseDownLocation.X;
this.Top = e.Y + this.Top - MouseDownLocation.Y;
}
}
}
をそして、私はそのように宣言します。
toto = new Etape();
toto.BackColor = Color.White;
toto.BorderStyle = BorderStyle.FixedSingle;
toto.Width = 40;
toto.Height = 40;
「TOTOは、」私の「主」パネルに追加されその後。 実行時にパネルを移動するためにEventhandlerを追加したいと思います。上記のコードを試しましたが、C#ではEtapeをクリックしていることを検出できません。
私を助けるアイデアがありますか?
ジュリアンは
おかげであなたの助けのためにたくさんの機能をフックする必要があります。それが私の必要なものです! 私は「Etape_MouseMove()というメソッドを宣言するだけでは、それまで何もフックしていません」と覚えています。 –