Hello. I am trying to round a double to the nearest Integer, and display the answer in a DoubleField for a GUI application.
I've tried to cast the variable being used to type int, and tried using the Format.justify method. Here's the code, any help would be appriciated.
/**
*Calculates the population growth
**/
import javax.swing.*;
import BreezySwing.*;
import BreezySwing.Format;
public class PopulationGrowth extends GBFrame
{
private JLabel initialOrganismsLabel;
private JLabel growthRateLabel;
private JLabel hoursLabel;
private JLabel growthHoursLabel;
private DoubleField initialOrganismsField;
private DoubleField growthRateField;
private DoubleField hoursField;
private DoubleField growthHoursField;
private DoubleField totalOrganismsField;
private JButton calculateButton;
//*************************Constructor Method***********************************
public PopulationGrowth()
{
initialOrganismsLabel = addLabel ("Initial Organisms" ,1,1,1,1);
initialOrganismsField = addDoubleField (0.0 ,1,2,1,1);
growthRateLabel = addLabel ("Growth Rate" ,2,1,1,1);
growthRateField = addDoubleField (0.0 ,2,2,1,1);
hoursLabel = addLabel ("Hours to achieve this rate" ,3,1,1,1);
hoursField = addDoubleField (0.0 ,3,2,1,1);
growthHoursLabel = addLabel ("Hours to grow" ,4,1,1,1);
growthHoursField = addDoubleField (0.0 ,4,2,1,1);
totalOrganismsField = addDoubleField (0 ,5,1,2,2);
calculateButton = addButton ("Calculate Population" ,6,2,1,1);
}
public void buttonClicked (JButton buttonObj)
{
double initialOrganisms,
growthRate,
hours,
growthHours,
growPeriod,
totalOrganisms = 0;
if (buttonObj == calculateButton)
{
initialOrganisms= initialOrganismsField.getNumber();
growthRate = growthRateField.getNumber();
hours = hoursField.getNumber();
growthHours = growthHoursField.getNumber();
growPeriod = hours / growthHours;
totalOrganisms = (int)initialOrganisms * Math.pow(growthRate,growPeriod);
double temp = Format.justify('l' ,totalOrganisms, 25, 0);
totalOrganismsField.setNumber(temp);
}
}
public static void main (String[] args)
{
PopulationGrowth GUI = new PopulationGrowth(); //Instantiate the GUI window
GUI.setSize (500, 400); //Set the size of the program
GUI.setVisible (true); //Shows the program
}
}
Thanks.