Maison > Article > développement back-end > Introduction détaillée au code graphique du convertisseur d'unités C#
Cet article présente principalement en détail un cas simple de convertisseur d'unités C#, une simple application winform avec une certaine valeur de référence. Les amis intéressés peuvent s'y référer
Après quelques jours d'études, j'ai écrit un simple winform. application et publié le code source en cas d'urgence.
L'interface après le démarrage du logiciel est la suivante :
Comme le montre l'image, le programme se compose de 6 étiquettes, 8 comboBox, 8 textBoxes et 4 Composés de boutons. Les quatre zones de texte à droite définissent l'attribut ReadOnly sur true.
Lorsque le logiciel démarre, vous pouvez faire en sorte que la comboBox affiche les éléments par défaut. Vous devez utiliser l'instruction comboBox.SelectedIndex. Par défaut, comboBox.SelectedIndex="-1" (c'est-à-dire qu'aucun élément n'est affiché par. par défaut). Remplacez -1 par Set to 0 pour afficher le premier élément. Mettez le code dans l'événement Load du formulaire. Exemple de code :
private void MainForm_Load(object sender, EventArgs e) { comboBox1.SelectedIndex = 0; comboBox2.SelectedIndex = 1; comboBox3.SelectedIndex = 0; comboBox4.SelectedIndex = 1; comboBox5.SelectedIndex = 0; comboBox6.SelectedIndex = 1; comboBox7.SelectedIndex = 0; comboBox8.SelectedIndex = 1; }
Appuyez sur le bouton OK, exécutez la fonction de conversion, convertissez le résultat du calcul en type chaîne et affectez-le à textBox.Text, Exemple de code :
private void button4_Click(object sender, EventArgs e) { string str1, str2; str1=Convert.ToString(comboBox7.SelectedItem); str2=Convert.ToString(comboBox8.SelectedItem); double d1, d2; if (textBox7.Text == "") { textBox7.Text = "1"; d1 = 1; } else d1 = Convert.ToDouble(textBox7.Text); if (str1 == str2) { d2 = d1; textBox8.Text = Convert.ToString(d2); } else { if(str1 == "摄氏度" && str2 == "华氏度") { d2=1.8*d1+32; textBox8.Text = Convert.ToString(d2); } if(str1 == "摄氏度" && str2 == "开氏度") { d2=d1+273.15; textBox8.Text = Convert.ToString(d2); } if(str1 == "华氏度" && str2 == "摄氏度") { d2=(d1-32)/1.8; textBox8.Text = Convert.ToString(d2); } if(str1 == "华氏度" && str2 == "开氏度") { d2=(d1-32)/1.8+273.15; textBox8.Text = Convert.ToString(d2); } if (str1 == "开氏度" && str2 == "摄氏度") { d2 = d1 - 273.15; textBox8.Text = Convert.ToString(d2); } if (str1 == "开氏度" && str2 == "华氏度") { d2 = (d1 - 273.15) * 1.8 + 32; textBox8.Text = Convert.ToString(d2); } } }
désactive la saisie de touches autres que la touche retour arrière, les touches numériques et les touches de point décimal (la conversion de température peut saisir un signe négatif) pour empêcher l'utilisateur de saisir des caractères non numériques et de provoquer des erreurs de programme. Ajoutez le code pertinent dans l'événement keypress, exemple de code :
private void textBox1_KeyPress(object sender, KeyPressEventArgs e) { if (e.KeyChar != '\b' && e.KeyChar != 46)//允许输入退格键和小数点键 { if ((e.KeyChar < '0') || (e.KeyChar > '9'))//允许输入0-9数字 { e.Handled = true; } } }
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!