2011-08-30 5 views
0

Bonjour est-il possible de créer un objet qui fonctionnerait comme un bouton? Parce que je fais un système de gestion de la chambre pour un hôtel et le directeur veut que je mette une représentation graphique des chambres. Je pense que ce serait convivial si je crée un objet qui représenterait la pièce, par exemple, parce que je pense que c'est trop horrible si j'y mets beaucoup de boutons. (C'est trop douloureux dans les yeux).Objets Microsoft Visual Studio

L'objet doit être cliquable car lorsque l'utilisateur clique ou double-clique dessus. Les détails de la chambre apparaîtraient.

Merci beaucoup ...

+1

Travaillez-vous sur un Windows Form, une application WPF ou autre? –

+0

Utilisez l'événement MouseDown. Vous devrez ajouter le code qui détermine exactement quelle pièce a été cliquée à partir des coordonnées de la souris. –

Répondre

0

Oui, c'est. Tous les contrôles (du moment qu'ils héritent de Control, ce qui est le cas pour tous les éléments de l'interface utilisateur) ont un Click-Event, auquel vous pouvez vous inscrire pour que vous soyez averti lorsque vous cliquez dessus.

Si vous me dites si vous utilisez WinForms ou WPF, je peux vous donner un exemple de dessin d'un objet clickabel personnalisé.

0

Vous pouvez simplement définir la taille d'un bouton pour représenter la pièce, ou vous pouvez attraper l'événement Click de n'importe quel élément que vous souhaitez utiliser pour représenter la pièce, par exemple un Panel.

Vous pouvez également créer une classe qui hérite d'un contrôle et implémente davantage de fonctionnalités, ce qui facilite sa réutilisation. Exemple:

public class Room : Panel { 

    // perhaps something to keep track of what room it is 
    private int _id; 

    // a constructor that sets the data that you need 
    public Room(int id) { 
    _id = id; 
    } 

    protected override OnClick(EventArgs e) { 
    // here you can handle the click 
    } 

} 
0

Vous créez un objet qui hérite de Control, et faire le code dessin personnalisé à l'aide System.Drawing, il est une tâche assez simple. Avec Control vous êtes exposé à des événements réguliers comme MouseDown, MouseUp, MouseEnter, MouseLeave, OnPaint, PaintBackground. Ce sont des événements que vous allez vouloir si vous ajoutez des effets.

Questions connexes