[Csharp] question boutton

Résolu/Fermé
yyannd Messages postés 44 Date d'inscription mercredi 31 mai 2006 Statut Membre Dernière intervention 2 mars 2007 - 8 janv. 2007 à 13:57
mohamed-teldj Messages postés 55 Date d'inscription samedi 1 décembre 2007 Statut Membre Dernière intervention 20 mai 2012 - 21 juil. 2008 à 17:45
Bonjour,

On me demande de crééer un bouton intitulé 'démarrer serveur'

IL faudrait que lors du clic sur le bouton son nom change pour devenir 'arreter serveur', puis lors du clic revenir à 'démarrer serveur' et ceci infiniment

Vous savez comment faire ceci?

Merci

7 réponses

yyannd Messages postés 44 Date d'inscription mercredi 31 mai 2006 Statut Membre Dernière intervention 2 mars 2007 4
8 janv. 2007 à 14:51
Je fais

Button1.text = "Arrêter le serveur";

Le problème c'est qu'en recliquant il ne revient pas à son nom initial..
0
il faut que tu dérives la classe bouton pour la spécialiser : ajouter un "flag" d'état du bouton (booléen a priori...) comme variable membre de l'objet.

A ce moment pour la méthode du 'clic', tu changes la valeur du booléen (genre 'etat = !etat;') et ainsi tu peux savoir dans quel état tu es, et selon le cas mettre le texte que tu veux ^^
0
yyannd Messages postés 44 Date d'inscription mercredi 31 mai 2006 Statut Membre Dernière intervention 2 mars 2007 4
8 janv. 2007 à 15:32
Justement j'ai créér une variable booléene etat..

bool Etat = false;

mais c'est la dedans que j'arrive pas trop a piger comment changer le nom

private void button1_Click(object sender, EventArgs e)
{

Etat = !Etat;

if ...
..



}
0
private void button1_Click(object sender, EventArgs e)
{

this.Etat = !this.Etat;

if(Etat)
{
this.Text = "Demarrer";
}
else
{
this.Text = "Arreter";
}


}


c'est pas sorcier ^^
par contre ça fait longtemps que j'ai pas pratiqué C#, alors je suis pas tout à fait sûr de la syntaxe

Mais je suis pas certain que tu aies compris qu'il fallait dériver la classe Button ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
yyannd Messages postés 44 Date d'inscription mercredi 31 mai 2006 Statut Membre Dernière intervention 2 mars 2007 4
8 janv. 2007 à 15:49
Non j'ai pas compris ce que veux dire dérivée le boutton :P

je suis en réseau et on me fait faire du developpement j'y connais rien aie aie

Merci
0
errrfffff
va falloir reprendre à la base de la programmation objet...

Tu trouveras facilement des infos sur le net, je te donne les grandes lignes du principe :

Ton bouton, est une instance de la classe "Button" (qui fait partie de framework .Net)
Ce qu'il faut faire pour toi (et pour être propre) c'est spécialiser cette classe pour qu'elle se comporte comme tu veux. ça passe par la définition de la méthode appelée lors d'un clic (button1_Click) mais aussi dans ton cas par la dérivation de la classe. C'est à dire créer une nouvelle classe appelée par exemple "BoutonServeurOnOff" qui possède toutes les propriétés de la classe Button de base, plus celles que tu y ajouteras toi-même...ce qui peut être fait par le mécanisme (base de la programmation Objet) de dérivation...

Visual Studio te maches le travail, ce qui n'est pas forcément une bonne chose (tu en es l'exemple vivant). Quand tu as créé ton bouton, il a en fait crée un objet 'button1' qui est une instance de la classe "Button" : tu peux le voir quelque part dans la méthode "InitializeComponent" de ton projet. Le but est donc de remplacer cet objet Button par un objet "BoutonServeurOnOff" bien à toi.......

C'est pas évident d'expliquer tout ça sur un forum, et encore moins évident quand l'interlocuteur n'a apparemment jamais touché à l'objet ! ^^

Je doute que tout ça soit très clair.....je fais de mon mieux !
0
mohamed-teldj Messages postés 55 Date d'inscription samedi 1 décembre 2007 Statut Membre Dernière intervention 20 mai 2012 1
21 juil. 2008 à 17:45
Salut!
tu dois proceder comme suite :
crier ton button puis aller sur la palette des evenment ou tu trouve tout les fonction de button mais il faut que le button soi selectionne,
piuis il exist des evenment qui s'appele movemouse , mouse_on je me souvient pas de non la tu peut trouver des fonction qui intervient losque la souris est au dessus de composant on cliquant sur le combosant en quittosant ....
losque tu choisi la fonction adequat il suffi juste d'ajouter ce code:
button.text= "arreter le serveur", losque on cliquant on maitenat, et button.text=" demmarer server" losque on quitte la zone de button
0