Я работаю над приложением, которое позволяет пользователю отслеживать цель сбережения денег.Как правильно вернуть значение?
public static int CalcProg(int userGoal, int userBalance, int userProg)
{
userProg = userBalance/userGoal;
userProg = userProg * 100
return userProg;
}
private void Form1_Load(object sender, EventArgs e)
{
//Calls the FileVerification Method
FileVerification();
//Sets the label1 transparency to true
label1.Parent = pictureBox1;
label1.BackColor = Color.Transparent;
LoadData();
CalcProg(userGoal, userBalance, userProg);
progressBar1.Value = userProg;
progLabel = Convert.ToString(userProg);
label3.Text = progLabel;
}
Это всего лишь небольшая часть кода, но именно там у меня проблемы.
Я использую методы для чтения и записи файла для данных, используемых в переменных userBalance и userGoal. Это все работает нормально, потому что, когда я использую одну из этих переменных вместо «userProg» в функции преобразования ниже, она отображается так же, как и в текстовом файле.
Проблема возникает, когда я пытаюсь выполнить преобразование. Моя формула находится в CalcProg. Когда я когда-либо запускаю программу, два элемента (индикатор выполнения и метка), которые устанавливают их значение в переменной userProg, просто отображают нуль независимо от того, какое значение вводится в текстовый файл.
Я попытался использовать double для метода CalcProg и установил userProg как двойной, но это не работает. Я немного застрял, и буду благодарен за помощь, если кто-то может мне помочь.
Можете ли вы показать нам свой метод LoadData? –
Вы не присвоили значение, возвращаемое 'CalcProg' переменной. – Luka
, вам, вероятно, нужно установить несколько точек останова и войти в вашу программу и определить основную причину. и ваш метод CalcProg выглядит довольно проводным - почему вы прошли в userProg, когда используете его как локальный varialbe, а значение pass-in никогда не использовалось? – Rex