Как я могу заставить эту программу проверять несколько вещей одновременно? - PullRequest
0 голосов
/ 10 октября 2011

/ В нижней части этого кода есть два оператора if. Я хочу иметь возможность ПЕРВЫЙ проверить, выбрал ли пользователь аромат (текст по умолчанию для текстового поля «Выберите вкус»). Если они нажимают кнопку AddDrink, не выбирая аромат, в окне сообщения должно отображаться, что они не выбрали аромат, а не ввели количество, а затем переходят к программе. Однако, если они выбрали вкус, но не ввели количество, тогда должно появиться окно сообщения о вводе количества. Если нужна дополнительная информация, пожалуйста, дайте мне знать. СПАСИБО ЗА ВАШУ ПОМОЩЬ !!! /

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

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

        private void Form1_Load(object sender, EventArgs e)
        {

        }

        private void ComputeCost_CheckedChanged(object sender, EventArgs e)
        {

        }

        private void btnCompleteOrder_Click(object sender, EventArgs e)
        {
            MessageBox.Show(lblFinalFlavor.Text + "\n" + lblFinalTopping.Text + "\n" + lblFinalCost.Text);
        }

        private void btnAddDrink_Click(object sender, EventArgs e)
        {
            double cost = 0;
            double quantityPrice;
            double quantityNum;
            this.lblFinalTopping.Text = "Extras: ";

            if (this.radSmall.Checked)
            {
                cost += 3.00;
            }
            else if (this.radMedium.Checked)
            {
                cost += 3.50;
            }
            else if (this.radLarge.Checked)
            {
                cost += 4.00;
            }

            if (this.ckBoxCherries.Checked)
            {
                cost += .50;
                this.lblFinalTopping.Text += "Cherries ";
            }
            if (this.ckBoxGrape.Checked)
            {
                cost += .50;
                this.lblFinalTopping.Text += "Grapes ";
            }
            if (this.ckBoxLemon.Checked)
            {
                cost += .50;
                this.lblFinalTopping.Text += "Lemon ";
            }
            if (this.ckBoxPineapple.Checked)
            {
                cost += .50;
                this.lblFinalTopping.Text += "Pineapple ";
            }
            if (this.ckBoxStrawberry.Checked)
            {
                cost += .50;
                this.lblFinalTopping.Text += "Strawberry ";
            }
            if (this.ckBoxVitamin.Checked)
            {
                cost += .50;
                this.lblFinalTopping.Text += "Vitamin Pack ";
            }
            if (this.ckBoxWhipped.Checked)
            {
                cost += .50;
                this.lblFinalTopping.Text += "Whipped cream ";
            }

            this.lblFinalCost.Visible = true;            

            if (this.txtQuantity.Text != "0")
            {
                quantityNum = double.Parse(this.txtQuantity.Text);
                quantityPrice = cost * quantityNum;
                this.lblFinalCost.Text = "Cost: " + quantityPrice.ToString("c");
            }
            else
                MessageBox.Show("Please enter a quantity!");

            if (this.cmboBoxJuiceFlav.Text != "Select a flavor")
                this.lblFinalFlavor.Text = "Flavor: " + this.cmboBoxJuiceFlav.Text;
            else
                MessageBox.Show("Please select a flavor!");
        }
    }
}

Ответы [ 2 ]

0 голосов
/ 10 октября 2011

Разве это не то, что вы хотите:

if (this.cmboBoxJuiceFlav.Text != "Select a flavor")
{
    this.lblFinalFlavor.Text = "Flavor: " + this.cmboBoxJuiceFlav.Text;
    if (this.txtQuantity.Text != "0")
    {
        quantityNum = double.Parse(this.txtQuantity.Text);
        quantityPrice = cost * quantityNum;
        this.lblFinalCost.Text = "Cost: " + quantityPrice.ToString("c");
    }
    else
    {
        MessageBox.Show("Please enter a quantity!");
    }
}
else
{
    MessageBox.Show("Please select a flavor!");
}
0 голосов
/ 10 октября 2011

Есть лучшие способы сделать то, что вы пытаетесь сделать.Но просто чтобы решить вашу проблему, вы можете попробовать это -

.
.
.
   string msgBoxTxt = "";

    if (this.txtQuantity.Text != "0")
    {
        quantityNum = double.Parse(this.txtQuantity.Text);
        quantityPrice = cost * quantityNum;
        this.lblFinalCost.Text = "Cost: " + quantityPrice.ToString("c");
    }
    else
        msgBoxTxt += "Please enter a quantity! ";

   if (this.cmboBoxJuiceFlav.Text != "Select a flavor")
       this.lblFinalFlavor.Text = "Flavor: " + this.cmboBoxJuiceFlav.Text;
   else
       msgBoxTxt += "Please select a flavor!";

   if (msgBoxTxt != "")
        MessageBox.Show(msgBoxTxt);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...