J'ai un bouton auquel sont ajoutés deux événements mousedown et click
Lorsque le mousedown se produit, je souhaite faire glisser le bouton
public void button_MouseDown(object sender, MouseEventArgs e) { panel.DoDragDrop(((Button)sender), DragDropEffects.Move); }
Lorsque la souris est cliqué, une fenêtre contextuelle apparaît
private void button_Click(object sender, EventArgs e) { Form2 fm= new Form2(); fm.ShowDialog(); }
mais seul l'événement mousedown semble fonctionner. Vous ne savez pas pourquoi ?
Éteignez le premier et voyez si le second fonctionne. Laissez le premier événement activé, désactivez le deuxième événement et voyez s'il a un effet.
Allumez les deux derniers et voyez comment ça se passe. S'ils ne peuvent pas répondre tous les deux, cela devrait être un conflit
Parce que l'opération panel.DoDragDrop empêche les opérations normales de la souris mousedown et mouseup. Sans descente et montée complètes pour le même contrôle , il n'y aura pas d'événement de clic.
Eh bien, j'ai essayé. Un seul d'entre eux peut répondre aux événements de la souris
Comment puis-je réaliser que lorsque la souris est enfoncée, je veux faire glisser le bouton, et lorsque je clique, une fenêtre apparaîtra.
Comment le résoudre Sont-ils contradictoires ?
Enregistrer les événements mousedown et mouseup
Quelles opérations seront effectuées après avoir appuyé sur ? Faire une marque après avoir appuyé sur et effectuer des opérations lors du déplacement de la souris.
Pourquoi ne me dis-tu pas ce que tu veux réaliser. Facile de vous donner la bonne direction.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!