Jim Clinton Ответов: 1

Как добавить все текстовые поля, а затем преобразовать их в результат 10%?


Привет, кто-нибудь может мне помочь, если добавить все текстовые поля, а затем преобразовать их в 10%?

вот мои текстовые поля максимальный ввод составляет 20 в каждом из них

Что я уже пробовал:

btncalculate
txtQuiz1.text
txtQuiz2.text
txtQuiz3.text
txtQuiz4.text
txtQuiz5.text
txtQuiz6.text
txtResultQuiz.text

1 Ответов

Рейтинг:
9

Bryian Tan

Просто добавьте эти значения текстового поля и разделите на общее число (120)? Я неправильно истолковал вопрос ранее, ОП запросил VB.NET вместо C# и 10% результата

txtResultQuiz.Text = (CDbl(Integer.Parse(txtQuiz1.Text) _
+ Integer.Parse(txtQuiz2.Text) _
+ Integer.Parse(txtQuiz3.Text) _
+ Integer.Parse(txtQuiz4.Text) _
+ Integer.Parse(txtQuiz5.Text) _
+ Integer.Parse(txtQuiz6.Text)) * 0.1).ToString()

txtResultQuiz.Text =
               ((double) (int.Parse(txtQuiz1.Text) + int.Parse(txtQuiz2.Text) + int.Parse(txtQuiz3.Text) + int.Parse(txtQuiz4.Text)
                + int.Parse(txtQuiz5.Text) + int.Parse(txtQuiz6.Text)) / 120).ToString("0.00%");


Karthik_Mahalingam

Привет Брайан,
ОП пометил VB.Net :), перевел ваш код на vb

txtResultQuiz.Text = (CType((Integer.Parse(txtQuiz1.Text)  _
            + (Integer.Parse(txtQuiz2.Text)  _
            + (Integer.Parse(txtQuiz3.Text)  _
            + (Integer.Parse(txtQuiz4.Text)  _
            + (Integer.Parse(txtQuiz5.Text) + Integer.Parse(txtQuiz6.Text)))))),Double) / 120).ToString("0.00%")

Bryian Tan

Картик, спасибо, не обратил внимания :)

Karthik_Mahalingam

Добро пожаловать :)

Jim Clinton

это для кнопки btncalculate?

txtResultQuiz.Text = (CType ((Integer.Синтаксический анализ(txtQuiz1.Текст) _
+ (Целое число.Синтаксический анализ(txtQuiz2.Текст) _
+ (Целое число.Синтаксический анализ(txtQuiz3.Текст) _
+ (Целое число.Синтаксический анализ(txtQuiz4.Текст) _
+ (Целое число.Синтаксический анализ(txtQuiz5.Текст) + Число.Синтаксический анализ(txtQuiz6.Текст)))))),Двойные) / 120).Метод toString("0.00%")

Bryian Tan

да.

Jim Clinton

Я имею в виду, если 120 = 10% результата

Bryian Tan

Я думаю, вы просто хотите получить 10% от общего результата? если в каждом текстовом поле есть 10, то 10*6 = 60, 10% = 6?

txtResultQuiz.Text = (CType((Integer.Parse(txtQuiz1.Text) _
            + (Integer.Parse(txtQuiz2.Text) _
            + (Integer.Parse(txtQuiz3.Text) _
            + (Integer.Parse(txtQuiz4.Text) _
            + (Integer.Parse(txtQuiz5.Text) + Integer.Parse(txtQuiz6.Text)))))), Double) * 0.1).ToString()

Jim Clinton

да... это работает, спасибо

Jim Clinton

могу ли я добавить пустое текстовое поле?

Bryian Tan

Вы можете использовать целое число.Метод TryParse, но это должно сработать

txtResultQuiz.Text = (CDbl(Integer.Parse(If(String.IsNullOrEmpty(txtQuiz1.Text), 0, txtQuiz1.Text)) _
+ Integer.Parse(If(String.IsNullOrEmpty(txtQuiz2.Text), 0, txtQuiz2.Text)) _
+ Integer.Parse(If(String.IsNullOrEmpty(txtQuiz3.Text), 0, txtQuiz3.Text)) _
+ Integer.Parse(If(String.IsNullOrEmpty(txtQuiz4.Text), 0, txtQuiz4.Text)) _
+ Integer.Parse(If(String.IsNullOrEmpty(txtQuiz5.Text), 0, txtQuiz5.Text)) _
+ Integer.Parse(If(String.IsNullOrEmpty(txtQuiz6.Text), 0, txtQuiz6.Text))) * 0.1).ToString()

Jim Clinton

Как вычислить, если

quiz1= 12
quiz2 = 12
quiz3 = 12
quiz4 = 100% со знаком процента
quiz5 =12

Bryian Tan

Ваше требование-продолжать меняться !
В этом сценарии вам нужно написать код, чтобы проверить, содержит ли txtQuiz4.Text.Contains ( " % "), если да, то заменить его пустым txtQuiz4.Text. Replace ( " % " ,""), а затем преобразовать его в десятичную / 100 * максимальную точку для quiz4