Download presentation
Presentation is loading. Please wait.
1
Datalogi A 6: 13/10
2
Java and swing Graphics programming: Windows with menus Buttons, textfields, scroll panels etc Animations, images, Events from mouse clicks, keyboard etc. Can be quite complicated…
3
EmptyFrame.java import javax.swing.JFrame; public class EmptyFrame{ public static void main(String args[]){ JFrame frame=new JFrame("EmptyFrame"); frame.setSize(600,600); frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE); frame.setVisible(true); }
4
EmptyFrame
5
Add a canvas to the window public static void main(String args[]){ JFrame frame=new JFrame(); frame.setSize(600,600); frame.setTitle("DrawShapes"); frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE); JCanvas canvas = new JCanvas(); frame.add(canvas); frame.setVisible(true);.. }
6
Coordinate system:
7
drawLine(135,230,335,370)
8
drawOval(135,230,200,140)
9
What to draw on a canvas: Line Oval/ellipsis Arcs (parts of an ellipsis Rectangles Curves, quadratic, qubic, bezier Images Text
10
The state when drawing: Current Font Current Stroke (width of lines) Current Paint (color of areas) Current Transform (scaling, rotation, deformation of drawings) Current Composite (new items can be made partially transparent Current clipping area. (limit the area in which you can draw)
11
setFont(new Font("Serif",Font.BOLD,150)); drawString("(GyÑ)",50,200);
12
Paint canvas.setPaint(Color.red); canvas.fillRect(50,50,100,100); canvas.setPaint(Color.blue); canvas.fillOval(250,50,100,100); canvas.setPaint(Color.green); canvas.fillArc(450,50,100,100,45,270); canvas.setPaint(new GradientPaint( 50,350,Color.red,450,350,Color.blue)); canvas.fillRect(50,300,500,100);
13
Paint
14
Java swing components Windows and components
15
Example
16
JLabel A bit of text and/or an icon new JLabel(”Label 1”,new IconImage(..))
17
JButton A button you can press. Text and/or an image (icon)
18
Radiobutton and checkbox Press to select or de-select
19
JTextField TextField: a line where you can enter text using the keyboard.
20
JTextArea TextArea: a multi-line area for entering text
21
JSlider A slider: select a value By dragging a knob
22
JSpinner Select a value by stepping through a bounded range of values
23
JComboBox Select a value from a drop-down list
24
JList Select an a value or an interval of values from a list
25
Horizontal boxes and glue JBox.hbox(…)
26
Vertical box JBox.vbox(..)
27
Split pane, scroll pane
28
Borders Examples:
29
Making borders t1.setBorder(BorderFactory. createBevelBorder(BevelBorder.RAISED)); t2.setBorder(BorderFactory. createEtchedBorder()); t3.setBorder(BorderFactory. createMatteBorder(2,5,2,5,Color.red)); t4.setBorder(BorderFactory. createTitledBorder("My Title")); b1.setBorder(BorderFactory. createLineBorder(Color.blue,4));
30
Next time: events How to get information about user input.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.