Comment puis-je vérifier si une souris a été cliqué dans un plan de coordonnées spécifique sur la forme "?vérifier si une souris a été cliqué dans une zone spécifique
Répondre
Vous utilisez le MouseEventArgs.X et MouseEventArgs.Y pour voir si elles sont dans le plan de coordonnées.
Cette réponse a été un clic le lien que j'ai posté dans ma réponse à votre question précédente.
http://msdn.microsoft.com/en-us/library/system.windows.forms.mouseeventargs_members.aspx
Ajouté
Scénario:. J'ai une zone en forme de rectangle Je veux gérer les clics dans
Le coin supérieur gauche de la forme est à l'emplacement 28,83 (gauche, haut)
La taille est de 225, 52 (largeur, hauteur)
Donc si l'emplacement X (Gauche est entre 28 et 28 + 225 (253) ET l'emplacement Y est entre 83 et 83 + 52 (135) est dans les limites.
exemple le code:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication4
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
this.MouseClick += new MouseEventHandler(Form1_MouseClick);
}
void Form1_MouseClick(object sender, MouseEventArgs e)
{
if (e.X >= 28 && e.X <= 253 && e.Y >= 83 && e.Y <= 135)
{
MessageBox.Show("Clicked within the rectangle");
}
else
{
MessageBox.Show("Clicked outside the rectangle");
}
}
}
}
s'il vous plaît donner un exemple de code –
hey david im désolé pouvez-vous faire vb.net s'il vous plaît? –
code VB pour marquer une zone carrée de 100 pixels à partir de Coord 100.100. (Définissez vos propres valeurs.)
Private Sub frm_MouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseClick
Dim x As Integer = e.Location.X
Dim y As Integer = e.Location.Y
If x > 100 AndAlso x < 200 AndAlso y > 100 AndAlso y < 200 Then
MessageBox.Show("Inside")
Else
MessageBox.Show("Outside")
End If
End Sub
Bien sûr, cela ne fera que bloquer le clic de la souris s'il touche la surface du formulaire. Vous devrez réfléchir à ce que vous voulez faire si vous cliquez sur un certain contrôle sur le formulaire.
Ou vous pouvez utiliser Dim x As Integer = e.X (Ma fenêtre IntelliSense était petite et j'ai d'abord vu la propriété Location!) – Bill
- 1. comment vérifier si une valeur particulière a été sélectionnée dans la zone de sélection
- 2. Comment puis-je vérifier si une structure a été initialisée?
- 3. Quel objet a été cliqué lorsqu'un événement a été déclenché?
- 4. Lors du développement pour un Tablet PC, comment déterminer si l'utilisateur a cliqué sur une souris ou un stylo?
- 5. Déterminez si une connexion a été rompue
- 6. Comment savoir ce qui a été cliqué?
- 7. Comment vérifier si une méthode privée a été appelée avec l'argument attendu dans le test unitaire?
- 8. fichier batch Windows - vérifier si le fichier a été modifié
- 9. Vérifier si le contenu a déjà été envoyé en PHP
- 10. xsl: comment dire si une variable a été déclarée
- 11. Javascript - vérifier si le prototype de méthode a été changé?
- 12. Ouverture de la page Web comme si un lien a été cliqué de la page Web
- 13. vérification de si cliqué + Jquery
- 14. Comment déterminer si une zone de texte dans un formulaire Windows a le focus
- 15. Comment déterminer si une URL asp.net a été "réécrite"?
- 16. Vérifier si un objet a le focus
- 17. Comment vérifier si PDF a été ouvert avec succès dans le navigateur en utilisant WatiN?
- 18. Jquery: Comment vérifier si l'élément a une certaine
- 19. WPF vérifier si un dataproperty a une liaison de
- 20. Méthode efficace pour vérifier si DataTable a une ligne
- 21. Vérifiez si textbox a une valeur vide
- 22. capture quel bouton a été cliqué pour provoquer la validation
- 23. Comment puis-je déterminer si une valeur dans une structure a été modifiée?
- 24. Comment puis-je vérifier si un utilisateur a été engagé près d'un CGPath?
- 25. Vérifiez si l'enregistrement a été détruit juste dans des rails
- 26. Comment puis-je vérifier si un 'Review' a déjà été écrit par un @current_user donné?
- 27. Rails vérifier si le rendement: zone est définie dans content_for
- 28. Dans CakePHP, comment pouvez-vous déterminer si un champ a été modifié dans une action d'édition?
- 29. Une exception non gérée a été générée
- 30. Comment savoir si une application .NET a été compilée en mode DEBUG ou RELEASE?
Je suis un peu rouillé avec les maths, mais n'est-ce pas la forme dans un seul plan de coordonnées? Voulez-vous dire que vous voulez les coordonnées x, y spécifiques où l'utilisateur a cliqué sur la souris et si oui ou non ils étaient à l'intérieur d'une zone spécifique (rectangulaire, polygonale, etc.) sur le formulaire? –