UQ Students should read the Disclaimer & Warning
Note: This page dates from 2005, and is kept for historical purposes.
COMP2301 – Assignment Three – User Interface in Visual Basic
This assignment is a pass/fail assignment. I achieved a pass.
The goal of this assignment is to design a user interface in Visual Basic.
This program must provide the functionality of assignment 1 with a number of enhancements.
Although the functional specifications for the stop watch remains basically the same there is no longer any limit to how the graphics and user interface are drawn to the screen.
You may use or recode as much of your assignment one code as you see fit.
New features required for the user interface
- Start / Stop button to start/stop the stop watch (one button, context sensitive label)
- Set clock counting mode (forward/ backwards)
- Preset start time to any [minute, second] setting
- Reset start time to zero minutes, zero seconds
- Set alarm time (Alarm is displayed by blinking stop watch for 3 seconds)
- Select colour from pallet for
- stop watch face
- minute hand
- second hand
- digital display (one colour for frame and one digits)
- Set option Digital display on/off
- Store and restore from the last 5 custom setups (counting mode, colour settings, Alarm, digital display status (on/off) ... )
- Provide a Menu System with the following
- File → Exit
- Help → About (About must bring up a modal dialog box, with project information including Student Name, Number etc)
General
- Code comments must correctly reference the work of others
- Code must be readable, well structured and conform to the pre-defined style
- The solution must demonstrate the use of check boxes, sliders, text input and pull down lists
- Users must be able to store and restore a previous configuration at will
- Reasonable error checking is required. Eg Program must handle invalid entries (invalid start time or alarm time) gracefully
Note: This assignment was intentionally coded as poorly as possible. After putting much effort into assignment 2, and then realising that no one noticed or cared (I could have had assignment 2 passed irregardless of whether it even worked or not), I decided to code this assignment using whatever idea first occurred to me, with no restructuring or refactoring at all. This made the assignment easy, and had the side effect of making it look horrible – more effort went into getting it to look as bad as possible, than anything else.
Compiled (WIN32) binary (60 KB)
Clock.frm
Code © Copyright 2004 Ned Martin
15-May-2004