• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

calcApplet

 
Greenhorn
Posts: 4
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
CalcApplet.java uses or overides a deprecated API
recompile with -deprecation for details?

import java.lang.*;
import java.awt.*;
import java.applet.*;
import java.awt.event.*;
import java.util.*;
import java.math.*;
public class CalcApplet extends Applet implements Runnable, ActionListener
{
int Counter;//counts the number of digits entered
double Result;//the answer displayed, as well as the second
//operator taken for an operation
double Operand;//the first number entered for an operation

double Mem;//the variable which holds whatever value the user
//wants kept in "memory"

boolean DecimalFlag;//the 'flag' that will signify whether or not the
//decimal button has been pressed

boolean SignFlag;//the 'flag' that will signify whether or not the
//plus/minus button has been pressed

boolean OperatorKey;//the 'flag' that will signify whether or not any
//operator button has been pressed

boolean FunctionKey;//the 'flag' that will signify whether or not any f
//function button has been pressed

int Operator;//an integer value to indicate which operator
//button was pressed

char currchar;//a character to hold the value of the key most
//recently pressed

String GrStatus;//String to hold the status of various graphic
//operations of the program

String Status;//String to hold the status of various parts
//of the program
Thread timer;//A thread that will count how long user has been
//working with the calculator

int secs = 0;//counts seconds, used by Thread timer
int mins = 0;//counts minutes, used by Thread timer
int hrs = 0;//counts hours, used by Thread timer

//A string to hold the currentCount as indicated by the above variables
String currentCount = "Count started...";

//A Label that will display the current count on the calculator
Label CountTimer = new Label(" ",Label.LEFT);

//A string to hold the currentTime as indicated by the above variables
String currentTime = "Current Time";
//A Canvas that will display the current time on the calculator
Canvas currTime;

//This label will display all error messages
Label DisplError = new Label(" ",Label.CENTER);


Label LabelMem = new Label(" ",Label.RIGHT);

Label lcdDisplay = new Label("0",Label.RIGHT);

// This is the declaration of all numeric buttons to be used in the applet

Button button1 = new Button("1");
Button button2 = new Button("2");
Button button3 = new Button("3");
Button button4 = new Button("4");
Button button5 = new Button("5");
Button button6 = new Button("6");
Button button7 = new Button("7");
Button button8 = new Button("8");
Button button9 = new Button("9");
Button button0 = new Button("0");

Button buttonMinus = new Button("-");
Button buttonMultiply = new Button("x");
Button buttonPlus = new Button("+");
Button buttonEquals = new Button("=");
Button buttonDivide = new Button("�");
Button buttonClear = new Button("C");
Button buttonDecimal = new Button(".");
Button buttonNegative = new Button("�");
Button buttonMPlus = new Button("M+");
Button buttonMClear = new Button("MC");
Button buttonMR = new Button("MR");
Button buttonPercent = new Button("%");
Button buttonOneOverX = new Button("1/X");
Button buttonSqr = new Button("x�");
Button buttonSqrRoot = new Button("sqrt");

public void init()
{
//Allows for configuring a layout with the restraints of a grid or
//something similar
setLayout(null);

//This will resize the applet to the width and height provided
resize(420,368);

//This sets the default font to Helvetica, plain, size 12
setFont(new Font("Helvetica", Font.PLAIN, 12));

lcdDisplay.setBounds(42,15,308,30);
lcdDisplay.setFont(new Font("Helvetica", Font.PLAIN, 20));
lcdDisplay.setForeground(new Color(65280));
lcdDisplay.setBackground(new Color(0));
add(lcdDisplay);


LabelMem.setBounds(350,15,20,30);
LabelMem.setFont(new Font("Helvetica", Font.PLAIN, 16));
LabelMem.setForeground(new Color(65280));
LabelMem.setBackground(new Color(0));
add(LabelMem);

button1.addActionListener(this);
button1.setBounds(42,65,60,34);
button1.setFont(new Font("Dialog", Font.BOLD, 18));
add(button1);
button2.addActionListener(this);
button2.setBounds(106,65,60,34);
button2.setFont(new Font("Dialog", Font.BOLD, 18));
add(button2);
button3.addActionListener(this);
button3.setBounds(170,65,60,34);
button3.setFont(new Font("Dialog", Font.BOLD, 18));
add(button3);
button4.addActionListener(this);
button4.setBounds(42,104,60,34);
button4.setFont(new Font("Dialog", Font.BOLD, 18));
add(button4);
button5.addActionListener(this);
button5.setBounds(106,104,60,34);
button5.setFont(new Font("Dialog", Font.BOLD, 18));
add(button5);
button6.addActionListener(this);
button6.setBounds(170,104,60,34);
button6.setFont(new Font("Dialog", Font.BOLD, 18));
add(button6);
button7.addActionListener(this);
button7.setBounds(42,142,60,34);
button7.setFont(new Font("Dialog", Font.BOLD, 18));
add(button7);
button8.addActionListener(this);
button8.setBounds(106,142,60,34);
button8.setFont(new Font("Dialog", Font.BOLD, 18));
add(button8);
button9.addActionListener(this);
button9.setBounds(170,142,60,34);
button9.setFont(new Font("Dialog", Font.BOLD, 18));
add(button9);
button0.addActionListener(this);
button0.setBounds(42,180,60,34);
button0.setFont(new Font("Dialog", Font.BOLD, 18));
add(button0);

buttonDecimal.addActionListener(this);
buttonDecimal.setBounds(106,180,60,34);
buttonDecimal.setFont(new Font("Dialog", Font.BOLD, 18));
add(buttonDecimal);
buttonNegative.addActionListener(this);
buttonNegative.setBounds(170,180,60,34);
buttonNegative.setFont(new Font("Dialog", Font.BOLD, 18));
add(buttonNegative);
buttonMinus.addActionListener(this);
buttonMinus.setBounds(234,104,60,34);
buttonMinus.setFont(new Font("Dialog", Font.BOLD, 18));
add(buttonMinus);
buttonMultiply.addActionListener(this);
buttonMultiply.setBounds(234,142,60,34);
buttonMultiply.setFont(new Font("Dialog", Font.BOLD, 18));
add(buttonMultiply);
buttonPlus.addActionListener(this);
buttonPlus.setBounds(234,65,60,34);
buttonPlus.setFont(new Font("Dialog", Font.BOLD, 18));
add(buttonPlus);
buttonPercent.addActionListener(this);
buttonPercent.setBounds(42,230,60,34);
buttonPercent.setFont(new Font("Dialog", Font.BOLD, 18));
add(buttonPercent);
buttonOneOverX.addActionListener(this);
buttonOneOverX.setBounds(106,230,60,34);
buttonOneOverX.setFont(new Font("Dialog", Font.BOLD, 18));
add(buttonOneOverX);
buttonSqr.addActionListener(this);
buttonSqr.setBounds(170,230,60,34);
buttonSqr.setFont(new Font("Dialog", Font.BOLD, 18));
add(buttonSqr);
buttonSqrRoot.addActionListener(this);
buttonSqrRoot.setBounds(234,230,60,34);
buttonSqrRoot.setFont(new Font("Dialog", Font.BOLD, 18));
add(buttonSqrRoot);

buttonEquals.addActionListener(this);
buttonEquals.setBounds(309,230,60,34);
buttonEquals.setFont(new Font("Dialog", Font.BOLD, 18));
add(buttonEquals);
buttonDivide.addActionListener(this);
buttonDivide.setBounds(234,180,60,34);
buttonDivide.setFont(new Font("Dialog", Font.BOLD, 18));
add(buttonDivide);
buttonClear.addActionListener(this);
buttonClear.setBounds(309,65,60,34);
buttonClear.setFont(new Font("Dialog", Font.BOLD, 18));
buttonClear.setForeground(new Color(16711680));
buttonClear.setBackground(new Color(12632256));
add(buttonClear);

buttonMPlus.addActionListener(this);
buttonMPlus.setBounds(309,104,60,34);
buttonMPlus.setFont(new Font("Dialog", Font.BOLD, 18));
buttonMPlus.setForeground(Color.blue);
add(buttonMPlus);
buttonMClear.addActionListener(this);
buttonMClear.setBounds(309,142,60,34);
buttonMClear.setFont(new Font("Dialog", Font.BOLD, 18));
buttonMClear.setForeground(Color.blue);
add(buttonMClear);
buttonMR.addActionListener(this);
buttonMR.setBounds(309,180,60,34);
buttonMR.setFont(new Font("Dialog", Font.BOLD, 18));
buttonMR.setForeground(Color.blue);
add(buttonMR);

DisplError.setBounds(42,278,329,15);
DisplError.setFont(new Font("Dialog", Font.BOLD, 12));
DisplError.setForeground(new Color(16711680));
DisplError.setBackground(new Color(0));
add(DisplError);


CountTimer.setBounds(42,309,164,25);
CountTimer.setFont(new Font("Dialog", Font.BOLD, 15));
CountTimer.setForeground(Color.cyan);
CountTimer.setBackground(Color.gray);
CountTimer.setText(currentCount);
add(CountTimer);


currTime = new Canvas();
currTime.setBounds(206,309,165,25);
currTime.setFont(new Font("Dialog", Font.BOLD, 15));
currTime.setForeground(Color.orange);
currTime.setBackground(Color.gray);
add(currTime);

Clicked_Clear();//calls the Clicked_Clear method (C button)

}//end of calc init method


public final static int OpMinus=11,
OpMultiply=12,
OpPlus=13,
OpDivide=15,
OpMPlus=19,
OpMClear=20,
OpMR=21;

void DisplayError(String err_msg)
{

DisplError.setText(err_msg);
}

public void NumericButton(int i)
{
DisplayError(" ");//Clears the error message field


String Display = lcdDisplay.getText();

if (OperatorKey == true)
{
Counter = 0;
}

Counter = Counter + 1;//increments the counter

if ((Display == "0") || (Status == "FIRST"))
{
Display= "";//Do not display any new info
}
if (Counter < 21)//if more than 20 numbers are entered
{
//The number just entered is appended to the string currently displayed
Display = Display + String.valueOf(i);
}
else
{
//call the DisplayError method and send it an error message string
DisplayError("Digit Limit of 20 Digits Reached");
}
lcdDisplay.setText(Display);//sets the text of the lcdDisplay
//Label
Status = "VALID";//sets the Status string to valid
OperatorKey = false;//no operator key was pressed
FunctionKey = false;//no function key was pressed
}

public void OperatorButton(int i)
{
DisplayError(" ");//Clears the error message field


Result = (new Double(lcdDisplay.getText())).doubleValue();

//If no operator key has been pressed OR a function has been pressed
if ((OperatorKey == false) || (FunctionKey = true))
{
switch (Operator)//depending on the operation performed
{

case OpPlus : Result = Operand + Result;
break;


case OpMinus : Result = Operand - Result;
break;


case OpMultiply : Result = Result * Operand;
break;


case OpDivide : if (Result == 0)
{
//set the Status string to indicate an
//an error
Status = "ERROR";

//display the word "ERROR" on the
//lcdDisplay label
lcdDisplay.setText("ERROR");


DisplayError("ERROR: Division by Zero");
}
else
{
//divide the two numbers and put the
//answer in double Result
Result = Operand / Result;
}
}

//if after breaking from the switch the Status string is not set
//to "ERROR"
if (Status != "ERROR")
{
Status = "FIRST";

Operand = Result;//Operand holds the value of Result

Operator = i;

//The lcdDisplay label has the value of double Result
//displayed
lcdDisplay.setText(String.valueOf(Result));

//The boolean decimal flag is set false, indicating that the
//decimal button has not been pressed
DecimalFlag = false;

//The boolean sign flag is set false, indicating that the sign
//button has not been pressed
SignFlag = false;

//The boolean OperatorKey is set true, indicating that a simple
//operation has been performed
OperatorKey = true;

//The boolean FunctionKey is set false, indicating that a
//function key has not been pressed
FunctionKey = false;

DisplayError(" ");//Clears the error message field
}
}

}//end of OperatorButton method

public void DecimalButton()
{
DisplayError(" ");//Clears the error message field


String Display = lcdDisplay.getText();

//if a simple operation was performed successfully
if (Status == "FIRST")
{
Display = "0";//set Display string to character 0
}
//If the decimal button has not already been pressed
if (!DecimalFlag)
{
//appends a decimal to the string Display
Display = Display + ".";
}
else
{

DisplayError("Number already has a Decimal Point");
}


lcdDisplay.setText(Display);
DecimalFlag = true;//the decimal key has been pressed
Status = "VALID";
OperatorKey = false; //no operator key has been pressed

}//end of the DecimalButton method

void PercentButton()
{
DisplayError(" ");//clears the error message field


String Display = lcdDisplay.getText();

if ((Status != "FIRST") || (Display != "0"))
{
Result = (new Double(lcdDisplay.getText())).doubleValue();

//divide the double Result by 100, getting the percentage
Result = Result / 100;


lcdDisplay.setText(String.valueOf(Result));
Status = "FIRST";//
OperatorKey = true;//an operator key has been pressed
FunctionKey = true;//a function key has been pressed
}
}//end of the PercentButton method

void Clicked_Clear()
{
Counter = 0;//sets the counter to zero
Status = "FIRST";//sets Status to FIRST
Operand = 0;//sets Operand to zero
Result = 0;//sets Result to zero
Operator = 0;//sets Operator integer to zero

DecimalFlag = false;//decimal button has not been
//pressed

SignFlag = false;//sign button has not been pressed

OperatorKey = false;//no operator button has been
//pressed

FunctionKey = false;//no function button has been
//pressed


lcdDisplay.setText("0");
DisplayError(" ");//clears the error message field
}

void PlusMinusButton()
{
DisplayError(" ");//clears the error message field


String Display = lcdDisplay.getText();

if ((Status != "FIRST") || (Display != "0"))
{

Result = (new Double(lcdDisplay.getText())).doubleValue();

//sets the double Result to it's negative value
Result = -Result;


lcdDisplay.setText(String.valueOf(Result));
Status = "VALID";//sets Status string to VALID
SignFlag = true;//the sign button has been pressed
DecimalFlag = true;//a decimal has appeared
}
}//end of the PlusMinusButton method

void SqrButton()
{
DisplayError(" ");//clears the error message field


String Display = lcdDisplay.getText();

if ((Status != "FIRST") || (Display != "0"))
{

Result = (new Double(lcdDisplay.getText())).doubleValue();


Result = Result * Result;


lcdDisplay.setText(String.valueOf(Result));

Status = "FIRST";//indicates this is the first time
//this button has been pressed

OperatorKey = true;//an operator button has been pressed
FunctionKey = true;//a function button has been pressed
}
}//end of the SqrButton method


void SqrRootButton()
{
DisplayError(" ");//clears the error message field


String Display = lcdDisplay.getText();

if ((Status != "FIRST") || (Display != "0"))
{

Result = (new Double(lcdDisplay.getText())).doubleValue();


Result = Math.sqrt(Result);


lcdDisplay.setText(String.valueOf(Result));

Status = "FIRST";//indicates this is the first time
//this button has been pressed

OperatorKey = true;//an operator button has been pressed
FunctionKey = true;//a function button has been pressed
}
}//end of the SqrRootButton method
void OneOverXButton()
{
DisplayError(" ");//clears the error message field


String Display = lcdDisplay.getText();

if ((Status != "FIRST") || (Display != "0"))
{

Result = (new Double(lcdDisplay.getText())).doubleValue();

//divides one by the double Result
Result = 1 / Result;


lcdDisplay.setText(String.valueOf(Result));

Status = "FIRST";//indicates that this is the first time
//this button has been pressed

OperatorKey = true;//an operator key has been pressed
FunctionKey = true;//a function key has been pressed
}
}//end of the OneOverXButton method

void MemoryButton(int i)
{
DisplayError(" ");//clears the error message field


String Display = lcdDisplay.getText();

//depending on the value sent representing the buttons
switch (i)
{

case OpMPlus : if (((Display == "0.") || (Display == "0")) && (Mem == 0))
{
//clears the LabelMem label
LabelMem.setText(" ");
}
else
{

double temp = (new Double(lcdDisplay.getText())).doubleValue();

//set the Mem variable with that the sum of what's currently in
//Mem and the temp variable
Mem = Mem + temp;


LabelMem.setText("M");
}
break;


case OpMR : lcdDisplay.setText(String.valueOf(Mem));
break;


case OpMClear : Mem = 0;

//clears the LableMem field
LabelMem.setText(" ");
break;
}
Status = "FIRST";//indicates that this is first time
//button has been pressed

OperatorKey = true;//an operator button has been pressed

//if the Mem variable has the value zero
if (Mem == 0)
{
LabelMem.setText(" ");//clear the LabelMem field
}
}//end of the MemoryButton method


public void update(Graphics g)
{


//Sets the color to white and draw a rectangle around the applet
g.setColor(Color.white);
g.drawRect(0,0,420,368);

//sets the color to black and draws lines down the east and south sides
//of the applet to make it appear three-dimensional
g.setColor(Color.black);
g.drawLine(419,0,419,367);
g.drawLine(0,367,419,367);

//sets the color to gray and draws lines right next to the black lines
//to enhance the three-dimensional effect
g.setColor(Color.gray);
g.drawLine(418,1,418,366);
g.drawLine(1,366,418,366);

//sets the color to gray and draws a rectangle around the lcdDisplay
//label to give it some depth
g.setColor(Color.gray);
g.drawRect(41,14,329,31);

//sets the color to yellow and draws a rectangle around the DisplError
//label to give it some importance and help attract the eye to errors
//displayed there
g.setColor(Color.yellow);
g.drawRect(41,277,330,16);

if (GrStatus == "Timer")//checks for the timer indicator GrStatus
{
++secs;//increment seconds
if(secs == 60)//when they equal 60
{
mins++;//increment minutes
secs = 0;//set seconds to zero
}

if(mins == 60)//when minutes are equal to 60
{
hrs++;//increment hours
secs = 0;//set seconds to zero
mins = 0;//set minutes to zero
}

//if hours are less than ten, put a zero in front of the value,
//otherwise display as is and assign it to string currentCount
if(hrs < 10) { currentCount = "0" + hrs + ":"; }
else { currentCount = hrs + ":"; }

//if minutes are less than ten, put a zero in front of the value,
//otherwise display as is and append it to string currentCount
if(mins < 10) { currentCount = currentCount + "0" + mins + ":"; }
else { currentCount = currentCount + mins + ":"; }

//if seconds are less than ten, put a zero in front of the value,
//otherwise display as is and append it to string currentCount
if(secs < 10) {currentCount = currentCount + "0" + secs; }
else { currentCount = currentCount + secs; }

//sets the Text on CountTimer label to a "Time Used - " portion and
//appends the string currentCount
CountTimer.setText("Time Used - " + currentCount);
}
if (GrStatus == "Error")//when GrStatus indicates an error
{
CountTimer.setText("Error!");//set the text of label CountTimer
//to "Error!"
}
}

public void actionPerformed(ActionEvent event)
{

Object src = event.getSource();


if (src instanceof Button)
{

if ((Status != "ERROR") || (src == buttonClear))
{

if (src == button1)
{
NumericButton(1);
}
if (src == button2)
{
NumericButton(2);
}
if (src == button3)
{
NumericButton(3);
}
if (src == button4)
{
NumericButton(4);
}
if (src == button5)
{
NumericButton(5);
}
if (src == button6)
{
NumericButton(6);
}
if (src == button7)
{
NumericButton(7);
}
if (src == button8)
{
NumericButton(8);
}
if (src == button9)
{
NumericButton(9);
}
if (src == button0)
{
NumericButton(0);
}
if (src == buttonMinus)
{
OperatorButton(11);
}
if (src == buttonMultiply)
{
OperatorButton(12);
}
if (src == buttonPlus)
{
OperatorButton(13);
}
if (src == buttonEquals)
{
OperatorButton(14);
}
if (src == buttonDivide)
{
OperatorButton(15);
}
if (src == buttonDecimal)
{
DecimalButton();
}
if (src == buttonPercent)
{
PercentButton();
}
if (src == buttonClear)
{
Clicked_Clear();
}
if (src == buttonNegative)
{
PlusMinusButton();
}
if (src == buttonSqr)
{
SqrButton();
}
if (src == buttonSqrRoot)
{
SqrRootButton();
}
if (src == buttonOneOverX)
{
OneOverXButton();
}
if (src == buttonMPlus)
{
MemoryButton(19);
}
if (src == buttonMClear)
{
MemoryButton(20);
}
if (src == buttonMR)
{
MemoryButton(21);
}
}
}
}//end of actionPerformed method
public boolean keyDown(Event evt, int key)
{
//assigns key value to currchar through typecasting key to a character
currchar = (char)key;
if (currchar == '0') { NumericButton(0); }
if (currchar == '1') { NumericButton(1); }
if (currchar == '2') { NumericButton(2); }
if (currchar == '3') { NumericButton(3); }
if (currchar == '4') { NumericButton(4); }
if (currchar == '5') { NumericButton(5); }
if (currchar == '6') { NumericButton(6); }
if (currchar == '7') { NumericButton(7); }
if (currchar == '8') { NumericButton(8); }
if (currchar == '9') { NumericButton(9); }

if (currchar == '/') { OperatorButton(15); }
if (currchar == '*') { OperatorButton(12); }
if (currchar == '-') { OperatorButton(11); }
if (currchar == '+') { OperatorButton(13); }

if (currchar == '=') { OperatorButton(14); }

//This condition is different from the others because it tests for the
//Enter key being pressed, and this is pre-built into the Event evt
//object
if (currchar == evt.ENTER) { OperatorButton(14); }


if (currchar == '.') { DecimalButton(); }

return true;//indicate successful operation
}

//overridden start method
public void start()
{
try//try this code
{
if (timer == null)//if the timer doesn't exist
{
timer = new Thread(this);//creates a new Thread, passing the
//applet as the argument

timer.start();//starts the timer Thread
}

//creates a new Clock object, passing it the Canvas currTime
Clock clock1 = new Clock(currTime);
}
//catches a NullPointerException and stops the thread if one occurs
catch (NullPointerException e) { stop(); }
}

//overridden stop method
public void stop()
{
try//try this code
{
if (timer != null)//if the timer Thread exists
{
timer.stop();//stop the timer thread
}
}
//catches a NullPointerException
catch (NullPointerException e) {}
}

//overridden run method
public void run()
{
while (true)//while the thread exists
{
try//try executing this code
{
GrStatus = "Timer";//sets GrStatus

timer.sleep(1000);//puts the timer thread to "sleep" for
//a thousand milliseconds, or one second
}
//catches an InteruptedException if one occurs
catch(InterruptedException e)
{
GrStatus = "Error";//indicates an error has occured
timer.stop();//stops the thread
}
//catches a NullPointerException if one occurs
catch(java.lang.NullPointerException e)
{
GrStatus = "Error";//indicates an error has occured
timer.stop();//stops the thread
}
repaint();//calls the repaint method
}
}

}//end of calc class

class Clock extends Thread
{
//A Canvas that will display the current time on the calculator
Canvas Time;

//A Date object that will access the current time
private Date now;

//A string to hold the current time
private String currentTime;

//The constructor for Clock, accepting a Label as an argument
public Clock(Canvas _Time)
{
Time = _Time;//_Time is passed by reference, so Time
//now refers to the same Canvas

start();//start this thread
}

//The overriden run method of this thread
public void run()
{
//while this thread exists
while (true)
{
try
{
draw_clock();//calls the draw_clock method

sleep(1000);//puts this thread to sleep for one
//second
}
//catches an InterruptedException that the sleep() method might throw
catch (InterruptedException e) { suspend(); }

//catches a NullPointerException and suspends the thread if one occurs
catch (NullPointerException e) { suspend(); }
}
}

//A method to draw the current time onto the Time Canvas on the applet
public void draw_clock()
{
try
{
//Obtains the Graphics object from the Canvas Time so that it can
//be manipulated directly
Graphics g = Time.getGraphics();

g.setColor(Color.gray);//sets the color of the Graphics object
//to gray for the rectangle background

g.fillRect(0,0,165,25);//fills the Canvas area with a rectangle
//starting at 0,0 coordinates of the Canvas
//and extending to the length and width

g.setColor(Color.orange);//sets the color of the Graphics object
//to orange for the text color

get_the_time();//calls the get_the_time() method

//calls the drawString method of the Graphics object g, which will
//draw a string to the screen
//
//Accepts a string and two integers to represent the coordinates
g.drawString("Current Time - " + currentTime, 0, 17);
}
//catches a NullPointerException and suspends the thread if one occurs
catch (NullPointerException e) { suspend(); }
}

//A method to obtain the current time, accurate to the second
public void get_the_time()
{
//creates a new Date object for "now" every time this is called
now = new Date( );

//integers to hold the hours, minutes and seconds of the current time
int a = now.getHours();
int b = now.getMinutes();
int c = now.getSeconds();

if (a == 0) a = 12;//if hours are zero, set them to twelve

if (a > 12) a = a -12;//if hours are greater than twelve, make a
//conversion to civilian time, as opposed to
//24-hour time

if ( a < 10)//if hours are less than 10
//sets the currentTime string to 0, appends a's value and a
//colon
currentTime = "0" + a + ":" ;
else
//otherwise set currentTime string to "a", append a colon
currentTime = a +":";

if (b < 10)//if minutes are less than ten

//append a zero to string currentTime, then append "b" and a colon
currentTime = currentTime + "0" + b + ":" ;
else
//otherwise append "b" and a colon to currentTime string
currentTime = currentTime + b + ":" ;

if (c < 10)//if seconds are less than ten

//append a zero to string currentTime, then append "c" and a colon
currentTime = currentTime + "0" + c ;
else
//otherwise append "c" to currentTime string
currentTime = currentTime + c;
}
}//end of the Clock class
 
Sheriff
Posts: 7023
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
firewolfe32,
Please change your display name as requested in a previous post.
Did you mean to ask, "What does it mean that something is deprecated and how do I compile with the suggested switch? And what about my program is deprecated?"
 
Sheriff
Posts: 9109
12
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
1077 lines of code ....
Did you recompile using
javac -deprecation CalcApplet.java
??
 
It runs on an internal combustion engine. This ad does not:
a bit of art, as a gift, the permaculture playing cards
https://gardener-gift.com
reply
    Bookmark Topic Watch Topic
  • New Topic