52
Topic 5 : More Complex User Interfaces DDOOCP

Topic 05: More Complex User Interfaces

Embed Size (px)

DESCRIPTION

Slides

Citation preview

Page 1: Topic 05: More Complex User Interfaces

Topic 5 : More Complex User InterfacesDDOOCP

Page 2: Topic 05: More Complex User Interfaces

Swing Components (Classes)

› javax.swing

1. JOptionPane

2. JFrame

3. JButton

4. JTextField

5. Jlabel

6. JPasswordField

7. JTextArea

8. JRadioButton

9. JCheckBox

10.JComboBox

11.JPanel

12.JScrollBar

13.JScrollPane

14.JSlider

Page 3: Topic 05: More Complex User Interfaces

JOptionPane.showMessageDialog

Page 4: Topic 05: More Complex User Interfaces

JOptionPane.showMessageDialog

› Possible values for messageType are -1, 0, 1, 2, 3

Page 5: Topic 05: More Complex User Interfaces

Message Type arguments of showMessageDialog

1. JOptionPane.PLAIN_MESSAGE (no icon will be used) => -1

2. JOptionPane.ERROR_MESSAGE => 0

3. JOptionPane.INFORMATION_MESSAGE => 1

4. JOptionPane.WARNING_MESSAGE => 2

5. JOptionPane.QUESTION_MESSAGE => 3

Page 6: Topic 05: More Complex User Interfaces

JOptionPane.showMessageDialog

Page 7: Topic 05: More Complex User Interfaces

JOptionPane.showInputDialog

Page 8: Topic 05: More Complex User Interfaces

JOptionPane.showInputDialog

› WAP to take 2 inputs from user and display the sum.

Page 9: Topic 05: More Complex User Interfaces

JOptionPane.showConfirmDialog

Page 10: Topic 05: More Complex User Interfaces

JFrame› Constructors

– JFrame( )

– JFrame(String str)

› Methods

– Container getContentPane( )

– void setDefaultCloseOperation(int value)

– void remove(Component cm)

– void setLayout(LayoutManager manager)

› Other inherited Methods– setSize( )

– setVisible( )

– setTitle( )

– setBackground( )

– add( )

Page 11: Topic 05: More Complex User Interfaces

JFrame

Page 12: Topic 05: More Complex User Interfaces

JButton

› Constructors– JButton( )

– JButton(String str)

› Methods

– void setText(String str)

– void setEnabled(boolean b)

– String getText( )

– void addActionListener(ActionListener al)

Page 13: Topic 05: More Complex User Interfaces

JButton

Page 14: Topic 05: More Complex User Interfaces

Click event in JButton

Page 15: Topic 05: More Complex User Interfaces

JTextField

› Constructors JTextField( )

JTextField(String str)

› Methods void addActionListener(ActionListener al)

void removeActionListener(ActionListener al)

void setFont( )

• Inherited Methods

void setText(String t)

String getText( )

void setBackground(Color bg)

void setForeground(Color fg)

void setEditable(boolean b)

void copy( )

void cut( )

void paste( )

Page 16: Topic 05: More Complex User Interfaces

JLabel

› Constructors JLabel( )

JLabel(str)

› Methods String getText( )

void setText(String str)

• Inherited Methods

void setVisible(boolean visible)

void setEnabled(boolean enabled)

void setBounds(int x, int y, int width, int height)

Page 17: Topic 05: More Complex User Interfaces

Develop the following application.

Page 18: Topic 05: More Complex User Interfaces

JTextArea

› Constructors JTextArea( )

JTextArea(String str)

› Methods void append(String text)

void insert(String text, int position)

void setFont(Font f)

• Inherited Methods

String getText( )

void setText(String text)

void setVisible(boolean visible)

void setEnabled(boolean enabled)

Page 19: Topic 05: More Complex User Interfaces

TextAreaDemo

Page 20: Topic 05: More Complex User Interfaces

JPasswordField

› Constructors JPasswordField( )

JPasswordField(String str)

› Methods void copy( )

void cut( )

String getText( )

char[ ] getPassword( )

String getText( ) method is Deprecated.

• Inerited Methods

void setVisible(boolean visible)

void setEnabled(boolean enabled)

Page 21: Topic 05: More Complex User Interfaces

Login Logic

Page 22: Topic 05: More Complex User Interfaces

Login Form

Page 23: Topic 05: More Complex User Interfaces

Login Form

Page 24: Topic 05: More Complex User Interfaces

Login Form

Page 25: Topic 05: More Complex User Interfaces

JPanel

› Constructors JPanel( )

JPanel (LayoutManager layout)

› Inherited Methods

void setVisible(boolean visible)

void setEnabled(boolean enabled)

void setBackground(Color bg)

Page 26: Topic 05: More Complex User Interfaces

JCheckBox

› Constructors JCheckBox( )

JCheckBox(String text)

JCheckBox(String text, boolean selected)

› Inherited Methods

void addActionListener(ActionListener l)

void setText(String text)

void setVisible(boolean visible)

boolean isSelected()

void setSelected(boolean b)

Page 27: Topic 05: More Complex User Interfaces

JRadioButton

› Constructors JRadioButton( )

JRadioButton(String text)

JRadioButton(String text, boolean selected)

› Inherited Methods

void addActionListener(ActionListener l)

void setText(String text)

void setVisible(boolean visible)

boolean isSelected()

void setSelected(boolean b)

Page 28: Topic 05: More Complex User Interfaces

JRadioButtonDemo

Page 29: Topic 05: More Complex User Interfaces

JComboBox

› Constructors JComboBox( )

JComboBox(Object [ ] items)

› Methods void addActionListener(ActionListener l)

void addItem(Object item)

void removeAllItems()

void removeItem(Object item)

void removeItemAt(int index)

void setSelectedItem(Object anObject)

void setSelectedIndex(int anIndex)

Object getSelectedItem()

int getSelectedIndex()

Page 30: Topic 05: More Complex User Interfaces

JComboBoxDemo

Page 31: Topic 05: More Complex User Interfaces

JComboBoxDemo

Page 32: Topic 05: More Complex User Interfaces

JComboBoxDemo

Page 33: Topic 05: More Complex User Interfaces
Page 34: Topic 05: More Complex User Interfaces
Page 35: Topic 05: More Complex User Interfaces
Page 36: Topic 05: More Complex User Interfaces

JSlider› Constructors

JSlider( )

JSlider(int orientation)

JSlider.HORIZONTAL => 0

JSlider.VERTICAL => 1

JSlider(int min, int max)

JSlider(int min, int max, int value)

JSlider(int orientation, int min, int max, intvalue)

› Methods

void addChangeListener (ChangeListener l)

int getValue( )

void setValue(int n)

void setPaintLabels(boolean b)

void setMajorTickSpacing(int n)

Slider Demo

Page 37: Topic 05: More Complex User Interfaces

JSlider Important Code

Page 38: Topic 05: More Complex User Interfaces

Color Chooser

Page 39: Topic 05: More Complex User Interfaces

MeroSlider.java

Page 40: Topic 05: More Complex User Interfaces

ColorChooser.java

Page 41: Topic 05: More Complex User Interfaces

ColorChooser.java

Page 42: Topic 05: More Complex User Interfaces

JScrollPane

› ConstructorJScrollPane( )

JScrollPane(Component view)

JScrollPane(Component view, int vertical, int horizontal)

› Methodsvoid setLayout(LayoutManager layout)

Demo First

Page 43: Topic 05: More Complex User Interfaces

JScrollPane Example

Page 44: Topic 05: More Complex User Interfaces

Multiplication Table of 5

Page 45: Topic 05: More Complex User Interfaces

Layout Managers

1. GridLayout

2. NullLayout or Absolute Layout

3. FlowLayout

4. GridBagLayout

5. BorderLayout

6. BoxLayout

Page 46: Topic 05: More Complex User Interfaces

GridLayout

› Constructors GridLayout()

GridLayout(int rows, int columns)

GridLayout(int rows, int columns, int hgap, int vgap)

› Methods– void setColumns(int cols)

– void setRows(int rows)

– void setHgap(int hgap)

– void setVgap(int vgap)

Page 47: Topic 05: More Complex User Interfaces

GridLayout

Page 48: Topic 05: More Complex User Interfaces

FlowLayout

› Constructors FlowLayout()

FlowLayout(int align)

FlowLayout.LEFT => 0

FlowLayout.CENTER => 1

FlowLayout.RIGHT => 2

FlowLayout(int align, int hgap, int vgap)

› Methods– void setAlignment(int align)

– void setHgap(int hgap)

– void setVgap(int vgap)

Page 49: Topic 05: More Complex User Interfaces

Fonts

› public Font(String name, int style, int size)

S.N. Modifier and Type Field

1 static final int BOLD

2 static final int ITALIC

3 String name

4 Int size

Page 50: Topic 05: More Complex User Interfaces

Events

Event Type Listener Method

ActionEvent ActionListener void actionPerformed(ActionEvent e)

ChangeEvent ChangeListener void stateChanged(ChangeEvent e)

MouseEvent MouseListener void mouseClicked(MouseEvent e)

void mouseEntered(MouseEvent e)

void mouseExited(MouseEvent e)

void mousePressed(MouseEvent e)

void mouseReleased(MouseEvent e)

Page 51: Topic 05: More Complex User Interfaces

Events

Event Type Listener Method

KeyEvent KeyListener void keyPressed(KeyEvent e)

void keyReleased(KeyEvent e)

void keyTyped(KeyEvent e)

FocusEvent FocusListener void focusGained(FocusEvent e)

void focusLost(FocusEvent e)

Page 52: Topic 05: More Complex User Interfaces

References

› http://www.java2s.com/Tutorial/Java/0240__Swing/UsingJOptionPanetoDisplayaMessage.htm

› http://docs.oracle.com/javase/tutorial/uiswing/components/dialog.html

› http://docs.oracle.com/javase/7/docs/api/javax/swing/JFrame.html

› http://docs.oracle.com/javase/tutorial/uiswing/layout/visual.html

› http://docs.oracle.com/javase/7/docs/api/java/awt/Font.html