Probleme C# interface graphique

symbashas Messages postés 7 Date d'inscription dimanche 6 mai 2012 Statut Membre Dernière intervention 9 janvier 2011 - 31 oct. 2010 à 00:32
symbashas Messages postés 7 Date d'inscription dimanche 6 mai 2012 Statut Membre Dernière intervention 9 janvier 2011 - 2 nov. 2010 à 01:25
Voici un code que j'essaye de faire et ne reussit pas. Ce que je cherche a faire c'est de calculer le périmétre et la surface d'un carré, d'un rectangle et d'un cercle sous C sharp interface graphique. J'ai reproduit le meme schema de ce qui m'est demander dans cette exos ( a savoir que c'est un exo que j'ai trouver dans un livre d'info sans correction). Voir le schema ci dessous:



(NI: les chiffres qui sont écrit a l'intérieur des cases ne doivent pas etre copier betement mais plutot doivent etre calculer automatiquement par la machine ce qui fera apparaitre les chiffres dans les cases).

Après avoir facilement recopier betement le schema cliquer sur "calculer" et cela vous amene directement a la page code ou la vous devrez écrire le code que j'ai fait en partie ci dessous( mais ne l'ai pas terminer car je n'y arrive plus après 3 semaines de recherches)


using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void cote_Click(object sender, EventArgs e)
{

}

private void calculer_Click(object sender, EventArgs e)
{
float Coté = Convert.ToSingle(tbcarré.Text);
float Rectangle= Convert.ToSingle(tbrectan.Text);
float largeur = Convert.ToSingle(tbcarré.Text);
float longueur = Convert.ToSingle(tblongueur_du_rect.Text);
float rayon = Convert.ToSingle(tbRayon.Text);
float perimetre_du_carré,périmètre_du_cercle,label10,label9,label8;

{
if (cbcarré.checked)
périmetre_du_carré = Coté*Coté;
tbsurface_carré = cote*cote**;
tbsurface_du carré.Text= tbsurface_carré.ToString();


else if ( cbrectangle.checked);
}
périmètre_du_rectangle= 2*tblongueur+2*tbLarg;
tbsurface_du_rectangle= tblongueur*tbLarg;
tbLarg.Text= tbLarg.ToString();
tblongueur_du_rect= tblongueur_du_rect.ToString();

else if ( cbcercle.checked);
périmètre_du_cercle= 2*3.1416*tbRayon;
tbsurface_du_cercle= 3.1416 (tbRayon)**;
périmètre_du_carré.Text= périmètre_du_carré.ToString();
tbsurface_cercle = tblongueur_du_rect.ToString();

}

}
}

Pour plus d'information contacter moi sur ma boite mail: benard_aymeric@yahoo.fr

7 réponses

cs_Robert33 Messages postés 834 Date d'inscription samedi 15 novembre 2008 Statut Membre Dernière intervention 14 janvier 2017 33
31 oct. 2010 à 16:20
Bonjour

3 semaines ????
ça n'a pas l'air compliqué pourtant !!!
mais encore faut-il savoir calculer les différentes valeurs demandées

allé je suis de bonne disposition aujourd'hui
private void button_Calculer_Click(object sender, EventArgs e)
{
if (checkBox_Carre.Checked)
{
float cote;
if (float.TryParse(textBox_Cote.Text, out cote))
{
textBox_PerimetreCarre.Text = (cote * 4).ToString();
textBox_SurfaceCarre.Text = (cote * cote).ToString();
}
else
MessageBox.Show("Erreur dans la valeur du côté","calcul du carré");
}
if (checkBox_cercle.Checked)
{
float longueur, largeur;
if (float.TryParse(textBox_Largeur.Text , out largeur) 
&& float.TryParse(textBox_Longueur.Text, out longueur))
{
textBox_PerimetreRectangle.Text=(2*(longueur+largeur )).ToString();
textBox_SurfaceRectangle.Text=(longueur*largeur).ToString();
}
else
MessageBox.Show("Erreur dans la valeur de la longueur ou la largeur","Calcul du rectangle");
}
if (checkBox_Rectangle.Checked)
{
float rayon;
if (float.TryParse(textBox_Rayon.Text, out rayon))
{
textBox_PerimetreCercle.Text = (rayon * Math.PI  * 2).ToString();
textBox_SurfaceCercle.Text = (rayon*rayon * Math.PI).ToString();
}
else
MessageBox.Show("Erreur dans la valeur du rayon","calcul du cercle");
}
}


Bob
C# is amazing, enjoy it!
0
symbashas Messages postés 7 Date d'inscription dimanche 6 mai 2012 Statut Membre Dernière intervention 9 janvier 2011
1 nov. 2010 à 01:26
pour tout te dire robert33. Ton code est juste sous mode console mais la on me demande de calculer la surface et le périmetre du cercle sous interface graphique. Pour cela faut refaire le meme schema que je vais vous redonner ( j'ai remarquer que celui du dessus il manqué la suite donc je vous réenvoie l'original) sans inscrire les chiffres ( a savoir qu'il apparaitront une fois que le code sera inserer et fera apparaitre automatiquement les chiffres dans les textbox)et de cliquer sur "calculer" ( une fois que le textbox etc... on bien était configurer auparavant) qui vous amène a inserer le code ( nn sur mode console mais INTERFACE GRAPHIQUE) qui a la fin fera le calcul directement.

Voici la photo du schema a reproduire ( celui ci dessus est faux ne pas s'y referer):
0
symbashas Messages postés 7 Date d'inscription dimanche 6 mai 2012 Statut Membre Dernière intervention 9 janvier 2011
1 nov. 2010 à 01:28
0
cs_Robert33 Messages postés 834 Date d'inscription samedi 15 novembre 2008 Statut Membre Dernière intervention 14 janvier 2017 33
1 nov. 2010 à 08:55
Bonjour,

OK, je pense que tu as besoin d'un cours C# de base, mais je ne peux pas le faire ici.

Si tu regardes un peu le code tu remarqueras qu'il ne peut s'agir d'un code console.
l'utilisation des TextBox, des checkbox
et la methode private void button_Calculer_Click(object sender, EventArgs e)
indique bien un code de type UI.

pour l'utiliser:
dans le "designer" de visual studio, crée une "form" ayant l'aspect de ton image
nomme les textBox comme dans le code que j'ai fourni (textBox_cote, textBox_longueur etc ...)
nomme les checkbox également comme dans le code (checkBox_Carre, checkBox_Rectangle etc ...)
nomme le bouton "button_Calculer"
double click sur le bouton, cela va generer le corps de la méthode button_Calculer_Click
remplace cette methode par le code fourni.
Et voila.

Bob.
C# is amazing, enjoy it!
0

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

Posez votre question
symbashas Messages postés 7 Date d'inscription dimanche 6 mai 2012 Statut Membre Dernière intervention 9 janvier 2011
1 nov. 2010 à 10:00
Pour info supplémentaire ( désolé de t'embeter avec cela) j'ai deja nommé tout ce que tu m'a dis et j'ai bien cliquer sur "calculer" ce qui m'a effectivement generer le corps de la méthode button_Calculer_Click mais la ou je n'y arrive pas c'est juste le code a écrire donc quand toi tu parles du code c'est le code que tu m'a fourni ou s'est autre chose.

Merci de ton aide et t'en suis trop reconnaissant
0
cs_Robert33 Messages postés 834 Date d'inscription samedi 15 novembre 2008 Statut Membre Dernière intervention 14 janvier 2017 33
1 nov. 2010 à 14:46
Oui, remplace simplement le corps de la méthode généré par celui que je t'ai donné.

Bob
C# is amazing, enjoy it!
0
symbashas Messages postés 7 Date d'inscription dimanche 6 mai 2012 Statut Membre Dernière intervention 9 janvier 2011
2 nov. 2010 à 01:25
Par le code que tu m'a donné en tt 1er c'est a dire celui ci:
private void button_Calculer_Click(object sender, EventArgs e)
{
if (checkBox_Carre.Checked)
{
float cote;
if (float.TryParse(textBox_Cote.Text, out cote))
{
textBox_PerimetreCarre.Text = (cote * 4).ToString();
textBox_SurfaceCarre.Text = (cote * cote).ToString();
}
else
MessageBox.Show("Erreur dans la valeur du côté","calcul du carré");
}
if (checkBox_cercle.Checked)
{
float longueur, largeur;
if (float.TryParse(textBox_Largeur.Text , out largeur)
&& float.TryParse(textBox_Longueur.Text, out longueur))
{
textBox_PerimetreRectangle.Text=(2*(longueur+largeur )).ToString();
textBox_SurfaceRectangle.Text=(longueur*largeur).ToString();
}
else
MessageBox.Show("Erreur dans la valeur de la longueur ou la largeur","Calcul du rectangle");
}
if (checkBox_Rectangle.Checked)
{
float rayon;
if (float.TryParse(textBox_Rayon.Text, out rayon))
{
}

else
MessageBox.Show("Erreur dans la valeur du rayon","calcul du cercle");
}
}


sachant que l'autre ( form) celui ci j'y arrive mais n'arrive pas a écrire le code une fois taper (a moins de reprendre le code que j'ai remis ci dessus de ce message).

Excuse de t'embeter avec cela. J'essaye de bien comprendre en détail pour pas faire erreur
0
Rejoignez-nous