Ваш код работает нормально, но есть пара вещей ...
- Используйте If..ElseIf..EndIF, о котором все упоминают.
- Постарайтесь неиспользуйте Val (это работает в этой ситуации, но может не во всех)
Что касается того, почему вы получаете только 0, я смог повторить это поведение, используя ваш существующий код, одним изthreefollowing ...
- Не нажимайте сначала btnDisplay.В этом случае вы не присваиваете значение tip, поэтому по умолчанию оно равно 0. Умножьте 0 на любое количество, и вы получите ... 0.
- Не имея значения в TxtBill.Причина та же, что и у # 1.
- Не задано значение по умолчанию для установленных переключателей, и я пытаюсь вычислить.
Предполагая, что я поместил значение в txtBill, выберите опцию подсказки иНажав btnDisplay, я получаю значение.
Я бы вставил разрывы и попытался отследить значения в ваших переменных, чтобы увидеть, что происходит.Вы также можете, вероятно, заставить btnDisplay и btnCalc выполнять всю работу одновременно (убедитесь, что выбрана сумма чаевых, а также рассчитать и отобразить результаты).Нет смысла нажимать две кнопки.