Purchase Solution

VB Program to calculate energy costs

Not what you're looking for?

Ask Custom Question

I am working on a program that I want to use for a simple home energy data information system. I am stuck at trying to figure out how add an inputbox to the washing machine selection that is in my listbox. I would like to add an inputbox that allows, (only if the user selects the washing machine) the user to add the amount of water they used in gallons per hour and how much that water costs per gallon. In addition I can't figure out how to make all of my calculations appear in a column in my second listbox. The data that I want to appear (as soon as the user enters it) is the appliance that they select, number of hours they are used per day and the cost. Where I am having trouble at is with the calculations and making them appear in the listbox without the use of a calculate button control. I want the calculations to be automatic as soon as I as the user would enter it in the textbox controls. I originally created labels for the data to appear in but I plan to remove them since I really want the data to appear in the second listbox. Here is the code from the form1.vb:

Public Class Form1
'Class level constants
Const dblHOURS_DAY As Double = 24 'Hours a day
Dim intPowerNeeded As Integer

Private Sub txtCostPerHour_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtCostPerHour.TextChanged
'Declare cost per hour
Dim decCostPerHour As Decimal

decCostPerHour = CDec(txtCostPerHour.Text)

If decCostPerHour <= 0 Then
'Display out of range message
MessageBox.Show("Please enter a positive number greater than zero.")

End If

'Displays the inputted data without the use label
lblDisplayKiloWattHourCost.Text = txtCostPerHour.Text

End Sub

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim decCostPerHour As Decimal
Dim lblDisplayKiloWattHourCost As Decimal

decCostPerHour = CDec(txtCostPerHour.Text)

lblDisplayKiloWattHourCost = CDec(decCostPerHour.ToString("n"))
End Sub

Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged

Dim strOut As String
strOut = ListBox1.SelectedItem.ToString
'Create the above variable name in the label area where I need this data to be copied to.
End Sub

Private Sub txtNumberOfHours_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtNumberOfHours.TextChanged

lblNumberOfHoursDisplay.Text = txtNumberOfHours.Text

Dim intNumberOfHoursDisplay As Integer
Dim intCostDisplay As Integer

intNumberOfHoursDisplay = CInt(txtNumberOfHours.Text)

intCostDisplay = intNumberOfHoursDisplay * intPowerNeeded
End Sub

Private Sub strSelectedItemFromListBox_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles strOut.SelectedIndexChanged
strOut.Text = lblCostDisplay.Text
End Sub

Private Sub txtPowerNeeded_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtPowerNeeded.TextChanged

intPowerNeeded = CInt(txtPowerNeeded.Text)

lblCostDisplay.Text = CStr(intPowerNeeded)

End Sub
End Class

Purchase this Solution

Solution Summary

The VB program calculates the cost of different appliances in the house.
The user should be able to do the following:

- Enter the cost per kilowatt-hour.
- Select from a list of home appliances which includes a washer, among other appliances.
- Enter the power needed in kilowatts (kW) for the selected appliance.
- Enter the number of hours used per day for the selected appliance.
- If the washer is selected, enter both the number of gallons of water used by the washer per hour and the cost per gallon.

The program should do the following:

- Calculate and display the cost for operating a home appliance as soon as the data is entered.
- Use arrays or structures where applicable.
- Create a listing area to display each of the following for each appliance entered:
o Home appliance
o Number of hours per day
o Cost
o Display and update the total cost of all appliances, as soon as a new entry is added to the listing area.

Solution Preview

Dear student,

Please find attached the complete VB project. I have reworked your form. The calculation is done whenever any of the parameters change and the calculated cost ...

Purchase this Solution


Free BrainMass Quizzes
Word 2010: Tables

Have you never worked with Tables in Word 2010? Maybe it has been a while since you have used a Table in Word and you need to brush up on your skills. Several keywords and popular options are discussed as you go through this quiz.

Java loops

This quiz checks your knowledge of for and while loops in Java. For and while loops are essential building blocks for all Java programs. Having a solid understanding of these constructs is critical for success in programming Java.

C# variables and classes

This quiz contains questions about C# classes and variables.

Basic UNIX commands

Use this quiz to check your knowledge of a few common UNIX commands. The quiz covers some of the most essential UNIX commands and their basic usage. If you can pass this quiz then you are clearly on your way to becoming an effective UNIX command line user.

Excel Introductory Quiz

This quiz tests your knowledge of basics of MS-Excel.