gui graphical user interface each onscreen component and window is an object object interaction...

Post on 17-Jan-2016

221 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

GUI

• Graphical User Interface• Each onscreen component and window is an

object• Object interaction makes communication and

scoping challenging• Event-driven - program’s execution is driven

by the series of events that occur

• Option pane – simple message box• Includes a message or request for input• JOptionPane

Parsing Number Strings

• Integer.parseInt(strExpression)• Float.parseFloat(strExpression)• Double.parseDouble(strExpression)• Examples:• Integer.parseInt(“-542”) = -542• Float.parseFloat(“34.63”) = 34.63• Double.parseDouble(“-758.873”) = -758.873

• Integer, Float, Double• Classes• Convert string to a number• Wrapper classes• parseInt is a method of class Integer• parseFloat…

Using Dialog boxes

• GUI• Class JOptionPane• Contained in package javax.swing• In earlier versions of java, Swing was an extension to Java’s

feature set• Two methods:

– To present a list of choices to the user • showInputDialog

– Display a message • showMessageDialog (parent window, display string)

• import javax.swing.*;

Gui1

import javax.swing.*; // for GUI componentspublic class Gui1{ public static void main(String [] args) { JOptionPane.showMessageDialog(null, "Hello world!"); }}

JOptionPane

1. Display a message (showMessageDialog)2. To present a list of choices to the user

(showInputDialog)3. To ask the user to type input

(showConfirmDialog)

GUI2import javax.swing.*; // for GUI componentspublic class Gui2{ public static void main(String [] args) { String name = JOptionPane.showInputDialog(null, "What is your name"); int choice = JOptionPane.showConfirmDialog(null, "Do you like chocolate, " + name + "?"); if (choice == JOptionPane.YES_OPTION) { JOptionPane.showMessageDialog(null, "Of course! Who doesn't?"); } else JOptionPane.showMessageDialog(null, "Seriously?"); }}

showMessageDialog• JOptionPane.showMessageDialog(parentComponent, messageStrExp,

boxTitleStr, messageType); parentComponent – null causes dialog box to appear in middle of stringmessageStrExp – appears in dialog boxboxTitleString – title of dialog boxmessageType –

ERROR_MESSAGE – error iconINFORMATION_MESSAGE – information icon PLAIN_MESSAGE – no iconQUESTION_MESSAGE – question iconWARNING_MESSAGE – warning icon

import javax.swing.*;

public class AreaAndCircumferenceProgram { public static final double PI = 3.14; public static void main(String[] args) { double radius, area, circumference; String radiusString,outputStr;

radiusString = JOptionPane.showInputDialog(“Enter radius:"); radius = Double.parseDouble(radiusString); area = PI * radius * radius; circumference = 2 * PI * radius; outputStr = "Radius: " + radius + "\nArea: " + area + " square units\n" + "Circumference: " + circumference + " units"; JOptionPane.showMessageDialog(null, outputStr, "Circle", JOptionPane.INFORMATION_MESSAGE); System.exit(0); }}

String method format

• String.format(formatString,argumentList)• Works like printf• Can be used as argument to println• Double x = 15.674;• Double y = 235.73;• Double z = 9525.9864;• System.out.println(String.format(“%.2f”,x);• System.out.println(String.format(“%.3f”,y);• System.out.println(String.format(%.2f”,z);

import javax.swing.*;

public class AreaAndCircumferenceProgram { public static final double PI = 3.14; public static void main(String[] args) { double radius, area, circumference; String radiusString,outputStr;

radiusString = JOptionPane.showInputDialog(“Enter radius"); radius = Double.parseDouble(radiusString); area = PI * radius * radius; circumference = 2 * PI * radius; outputStr = String.format("Radius: %.2f %n Area: %.2f square units %nCircumference: %.2f units", radius, area, circumference); JOptionPane.showMessageDialog(null, outputStr, "Circle", JOptionPane.INFORMATION_MESSAGE); }}

str = JOptionPane.showInputDialog(stringExpr);

radiusStr = JOptionPane.showInputDialog(“Enter the radius:”)

top related