CIS355A landscaping calculator tabbed program (Java)
Course Project Examples
This document provide a sample of what is possible, and could lead to a project worth the maximum grade of 100% Something to think about! Do not think this is what you have to do to get the maximum number of points. It is just a sample! You are only bound by your programming ability. Please do not try and do more than you are capable of. Think, plan, design and code YOUR project. This is your opportunity to show off your skills!
Overall Appearance
Tabs should be used in this application. At a minimum, 4 fully functioning tabs should be designed – the Pools tab, the Hot Tubs tab, the customer tab and the Contractors tab.
General Tab
The first tab simply displays the current date. An Exit button is provided in this tab, as well as all others. (For all buttons throughout the application, mnemonic values are set.)
Options Tab
The user should be able to change the company name in the Options tab. If the user returns to this tab later, the name should be displayed in the title of the window frame.
Customers Tab
The Customers tab allows the user to add new customers and checks for the existence of the customer.txt file in the directory where the program is located. If the file does not exist, the program tells the customer in the Message Area at the bottom. The Customer Display will give a brief explanation of the user’s options.
Message Area
Customer Display
Add Customer
When the user clicks Add Customer, an entry window should appear. If the customer.txt file does not exist, the program tells the customer in the Message Area at the bottom.
Message Area
In this window, the user can enter customers; the information entered will be stored as entered.
Clicking Add Customer will attempt to write the information to customer.txt. The user should receive an indication when a customer is added successfully.
Successful customer addition
After a customer has been added and the Customers window is closed, the user can click Refresh to refresh the Customer Display area, which will display the contents of the customer.txt file.
Contractor Tab
The Contractor tab functions in exactly the same way as the Customers tab. The filename for contractors is contract.txt.
Pools Tab
The Pools tab should perform a calculation.
After a length, width, and depth have been entered, the user can click Calculate Volume and the program will display the calculated volume (length * width * depth in cubic feet).
Exception handling is used here to catch exceptions, including incomplete forms, invalid entries, and combinations of these.
Incomplete forms:
Message Area
Fields not filled out
Invalid input:
Message Area
Invalid Input
Combination invalid input/incomplete input:
Hot Tubs Tab
The Hot Tubs tab allows for round and oval tubs’ volumes to be calculated.
Round Tub
When Round Tub is selected, the user cannot fill out the width field since we’re dealing with a circle. After filling out the length and depth fields, the Calculate Volume button will display the volume (Pi * ((length/2)^2) * depth). The width is automatically set to the same value as the length, and the user is informed.
Again, exception handling is used here.
Automatically set to same value as length
Oval Tub
When Oval Tub is selected, the width field is opened up:
The formula used to calculate the volume is (Pi * (length * width)^2) * depth.
As with the Pools tab, the same error messages should be displayed in case of no input/invalid values.
Temp Calc Tab
The Temp Calc tab offers a temperature converter (Celsius <-> Fahrenheit).
Opposite values
The user enters a temperature, and selects either C or F. The field after the Result display will display the opposite (if C is selected, field will display F; if F is selected, field will display C).
No input:
Value automatically set to zero in case of no input/invalid input
The Length Calc tab offers the user a length converter (millimeters, meters, yards, feet, and inches).
“Feet” was filled out; all other values are automatically populated
6