亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

通過組合框計算多次轉化

通過組合框計算多次轉化

C#
慕桂英546537 2022-10-23 13:59:53
所以,下面是我所得到的。它一直告訴我我無法在小數或雙精度上使用數學運算符。不幸的是,這些是我必須使用的。我想要做的是將長度測量從英制轉換為公制。我已經查看了許多其他與此相關的問題,并且能夠弄清楚部分代碼以及如何讓它讓我做一個“if”語句。但我就是想不通它的數學部分。誰能指出我正確的方向?public partial class Form1 : Form{    string conversions;    decimal meter, feet, centimeter, inches, miles, kilometers;    public Form1()    {        InitializeComponent();    }    private void btnCalculate_Click(object sender, EventArgs e)    {        calculateConversions();    }    private void Form1_Load(object sender, EventArgs e)    {        cbConversion.SelectedText = "Miles to Kilometers";        string[] Conversion = new string[] { "Miles to Kilometers",            "Kilometers to Miles",            "Feet to Meters",            "Meters to Feet",            "Inches to Centimeters",            "Centermeters to Inches" };        { }        for (int i = 0; i < Conversion.Length; i++)        {            cbConversion.Items.Add(Convert.ToString(Conversion[i]));        }        miles = 0m;        kilometers = 0m;        feet = 0m;        meter = 0m;        inches = 0m;        centimeter = 0m;    }         private void cbConversion_SelectedIndexChanged(object sender, EventArgs e)    {        conversions = Convert.ToString(cbConversion.SelectedItem);        IList<string> lstString = new List<string>();        lstString.Add("Miles:");        lstString.Add("Kilometers:");        lstString.Add("Feet:");        lstString.Add("Meters:");        lstString.Add("Inches:");        lstString.Add("Centimeters:");        label2.Text = lstString[cbConversion.SelectedIndex];        IList<string> lstStringTwo = new List<string>();        lstStringTwo.Add("Kilometers:");        lstStringTwo.Add("Miles:");        lstStringTwo.Add("Meters:");        lstStringTwo.Add("Feet:");        lstStringTwo.Add("Centimeters:");        lstStringTwo.Add("Inches:");        label3.Text = lstStringTwo[cbConversion.SelectedIndex];    }我什至翻閱了我的書,但無法弄清楚(這是一項家庭作業)我擁有的 GUI。它是通過組合框選擇的,輸入的文本被計算到轉換中。一切正常,但數學
查看完整描述

2 回答

?
一只斗牛犬

TA貢獻1784條經驗 獲得超2個贊

我cbConversion.SelectedIndex = 0;在 form1_load 中添加以選擇組合框的第一個索引,然后在calculateConversions()我在 textoutput.text 中輸出的每個條件下使用函數。


然后剩下的你可以做 else if 并研究其他轉換公式。


我使用cbConversion.SelectedItem.ToString()了這樣您就可以從組合框中獲取項目文本以進行比較。


你可以試試這個


string conversions;

    decimal meter, feet, centimeter, inches, miles, kilometers;


    private void btnCalculate_Click(object sender, EventArgs e)

    {

        calculateConversions();

    }


    public Form1()

    {

        InitializeComponent();




    }


    private void Form1_Load(object sender, EventArgs e)

    {

        cbConversion.SelectedText = "Miles to Kilometers";

        string[] Conversion = new string[] { "Miles to Kilometers",

        "Kilometers to Miles",

        "Feet to Meters",

        "Meters to Feet",

        "Inches to Centimeters",

        "Centermeters to Inches" };

        { }

        for (int i = 0; i < Conversion.Length; i++)

        {

            cbConversion.Items.Add(Convert.ToString(Conversion[i]));

        }

        miles = 0m;

        kilometers = 0m;

        feet = 0m;

        meter = 0m;

        inches = 0m;

        centimeter = 0m;

        cbConversion.SelectedIndex = 0;

    }


    private void cbConversion_SelectedIndexChanged(object sender, EventArgs e)

    {


        conversions = Convert.ToString(cbConversion.SelectedItem);


        IList<string> lstString = new List<string>();

        lstString.Add("Miles:");

        lstString.Add("Kilometers:");

        lstString.Add("Feet:");

        lstString.Add("Meters:");

        lstString.Add("Inches:");

        lstString.Add("Centimeters:");


        label2.Text = lstString[cbConversion.SelectedIndex];


        IList<string> lstStringTwo = new List<string>();

        lstStringTwo.Add("Kilometers:");

        lstStringTwo.Add("Miles:");

        lstStringTwo.Add("Meters:");

        lstStringTwo.Add("Feet:");

        lstStringTwo.Add("Centimeters:");

        lstStringTwo.Add("Inches:");

        label3.Text = lstStringTwo[cbConversion.SelectedIndex];



    }

    private void calculateConversions()

    {

        decimal input = Convert.ToDecimal(txtInput.Text);

        decimal mileToKM = Convert.ToDecimal(1.609344);


        if (cbConversion.SelectedItem.ToString() == "Miles to Kilometers")

        {


            decimal miles = (input * mileToKM);

            txtOutput.Text = miles.ToString();

        }



    }

輸出

http://img1.sycdn.imooc.com//6354d88a0001938703430361.jpg

查看完整回答
反對 回復 2022-10-23
?
墨色風雨

TA貢獻1853條經驗 獲得超6個贊

這是我現在使用的代碼


private void Form1_Load(object sender, EventArgs e)

    {

        cbConversion.SelectedText = "Miles to Kilometers";

        string[] Conversion = new string[] { "Miles to Kilometers",

            "Kilometers to Miles",

            "Feet to Meters",

            "Meters to Feet",

            "Inches to Centimeters",

            "Centermeters to Inches" };

        { }

        for (int i = 0; i < Conversion.Length; i++)

        {

            cbConversion.Items.Add(Convert.ToString(Conversion[i]));

        }

        miles = 0m;

        kilometers = 0m;

        feet = 0m;

        meter = 0m;

        inches = 0m;

        centimeter = 0m;

        cbConversion.SelectedIndex = 0;




    }



         private void cbConversion_SelectedIndexChanged(object sender, EventArgs e)

    {

        conversions = Convert.ToString(cbConversion.SelectedItem);


        IList<string> lstString = new List<string>();

        lstString.Add("Miles:");

        lstString.Add("Kilometers:");

        lstString.Add("Feet:");

        lstString.Add("Meters:");

        lstString.Add("Inches:");

        lstString.Add("Centimeters:");


        label2.Text = lstString[cbConversion.SelectedIndex];


        IList<string> lstStringTwo = new List<string>();

        lstStringTwo.Add("Kilometers:");

        lstStringTwo.Add("Miles:");

        lstStringTwo.Add("Meters:");

        lstStringTwo.Add("Feet:");

        lstStringTwo.Add("Centimeters:");

        lstStringTwo.Add("Inches:");

        label3.Text = lstStringTwo[cbConversion.SelectedIndex];


    }


    private void calculateConversions()

    {

        decimal input = Convert.ToDecimal(txtInput.Text);

        decimal mileToKM = Convert.ToDecimal(1.6093);

        decimal kMToMile = Convert.ToDecimal(0.6214);

        decimal ftToM = Convert.ToDecimal(0.3048);

        decimal mToFt = Convert.ToDecimal(3.2808);

        decimal inToCm = Convert.ToDecimal(2.54);

        decimal cmToIn = Convert.ToDecimal(0.3937);



        if (cbConversion.SelectedText.ToString() == "Miles to Kilometers")

        {

            decimal miles = (input * mileToKM);

            txtOutput.Text = miles.ToString();

        }


查看完整回答
反對 回復 2022-10-23
  • 2 回答
  • 0 關注
  • 117 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號