Part 3: Graphical User Interface (GUI) & Java Applets
|
|
- Lindsay Brooks
- 6 years ago
- Views:
Transcription
1 1,QWURGXFWLRQWR-DYD3URJUDPPLQJ (( Part 3: Graphical User Interface (GUI) & Java Applets EE905-GUI 7RSLFV Creating a Window Panels Event Handling Swing GUI Components ƒ Layout Management ƒ Text Field ƒ Check Box ƒ Combo Box ƒ Menu ƒ Dialog Java Applets (in comparison with Java Applications) EE905-GUI-2
2 2 7KH*UDSKLFV3DFNDJHV Originally, you would program graphics in Java using the AWT (Abstract Window Toolkit) - java.awt. The AWT provided (and still provides) cross-platform graphics support using the window and graphics functions provided by the various platforms, but for reasons you ll find in the textbooks, it s not the ideal way to do it. The later toolkit, and the one we ll be using, is called Swing - javax.swing. It does not rely on the platform s own libraries except for the most basic functions, but it still allows applications to be given a platform s look and feel. Swing does not replace the whole of the AWT functionality, so we ll generally be using classes from both in our programs. EE905-GUI-3 Creating a Window EE905-GUI-4
3 3 &UHDWLQJD:LQGRZ To use graphics, the first thing we need is a window to draw in. Here s a simple program that will create a window on the display: SimpleFrame.java Compile and Execution javac SimpleFrame.java java SimpleFrame Live Demo EE905-GUI-5 7KHSimpleFrame &ODVV class SimpleFrame extends JFrame { public SimpleFrame() { settitle("simpleframe"); setsize(300, 200); } This code defines a class called SimpleFrame, which is an extension of (i.e., inherits from) the JFrame class provided by Swing. The JFrame class is the standard class that provides a window. The method publicsimpleframe() is the constructor for the new class. It sets the title (displayed in the title bar of the window) and it sets the initial size of the window. You don t have to set the title, but you must set the size. Otherwise you get the JFrame s default size, which is zero by zero pixels and therefore not very useful. EE905-GUI-6
4 4 7KHmain 0HWKRG public static void main(string[] args) { SimpleFrame frame = new SimpleFrame(); frame.show(); } The main() method let us run SimpleFrame as a console application. It creates a new SimpleFrame object, and calls the object s show() method to display the window. New windows are not displayed until the show() method is called. This is so that you can create them and then draw in them before the user sees them. Then the main() method exits. You might expect this to terminate the program, but it doesn t. The window is left in control. EE905-GUI-7 &ORVLQJWKH:LQGRZ To make the program terminate, the obvious thing to do is to click the window s close box. But this doesn t work! The window does go away, but the program is still running - as you ll see from the absence of a Linux prompt in the console window. To make the program stop, you have to kill it by typing Control-C. Let s fix that... EE905-GUI-8
5 5 4XLWWLQJWKH3URJUDP The reason that the program doesn t quit when you close the window is that you don t always want it to. Your program might have several windows, for example, and it s unlikely that you d want the program to stop if you closed just one of them. Therefore, by default, windows can be closed and will go away, but the program will not stop. To make the window closure terminate the program, add this line in main() before the call to frame.show(). frame.setdefaultcloseoperation(jframe.exit_on_close); EE905-GUI-9 *LYLQJmain() LWV2ZQ&ODVV In the previous example, we put the main() method into the frame class. This works, but it s not the most natural way to do it because the frame class is not main() s natural home. (If there were many frames, which one would you put main() in?) Here s the program so far, but rearranged so that there s a top class to represent the program as well as the SimpleFrame class to represent the frame. See Graphics01.java in supplement. EE905-GUI-10
6 6 Panels EE905-GUI-11 $GG7ZR%XWWRQVLQWR:LQGRZ JPanel pane = new JPanel(); JButton button1 = new JButton("Click Me!"); pane.add(button1); JButton button2 = new JButton("Click Me Too!"); pane.add(button2); frame.getcontentpane().add(pane); (refer to Graphics02.java ) Create a new JPanel object A JPanel is a rectangular container for other graphics objects (widgets) Widgets added to a JPanel will be packed left to right and then top to bottom, like words in a paragraph Create two buttons, adding them to the JPanel. Add the JPanel to the frame object. EE905-GUI-12
7 7 )UDPHDQG3DQHO3DFNGLIIHUHQWO\ If we had added the buttons directly to the frame, the two buttons are still both there, but each has been made to be the full size of the window and the second one has been placed on top of the first. Demonstrate the difference. (refer to: Graphics03.java) That s why we use the JPanel to contain the buttons, and then pack just the JPanel into the frame. The JPanel s (default) layout method is called flow layout. EE905-GUI-13 )UDPHV8VH%RUGHU/D\RXW Actually, frames do some layout: by default, they use border layout. There are five areas: NORTH, SOUTH, EAST, WEST and CENTER. If you don t specify which area to put a widget in, it goes into the CENTER area (which is what has happened in the examples so far). If you put more than one widget into the same area, only the last one is visible (as we have seen). The following code adds a text label in the SOUTH area, with our twobutton JPanel still being placed in the CENTER area. (refer to Graphics04.java) JLabel label = new JLabel("Hi there!"); frame.getcontentpane().add(label,borderlayout.south); EE905-GUI-14
8 8 Event Handling EE905-GUI-15 (YHQWV An Event is an object in Java - a chunk of data stored in memory. One is created every time a button is clicked (or anything else happens, for that matter). To make your program respond to an event, you have to declare a listener object, which will contain a method that gets executed in response to the creation of the Event. EE905-GUI-16
9 9 /LVWHQHU Any object can be a listener object, provided you give its class two specific features: ƒ You must declare the class as one that implements ActionListener. ƒ You must declare a method within the class, of this form: public void actionperformed(actionevent event){... } The method name must be actionperformed; you can t just have any name of your choice. The following code adds some very minimal code to respond to a button click on the first button. (Refer to Graphics5.java) import java.awt.event.*; button1.addactionlistener(new Action()); class Action implements ActionListener { public void actionperformed(actionevent event) { Graphics05.label.setText("Thanks!"); } } EE905-GUI-17 $QRWKHUZD\WRJHW$SSOLFDWLRQWRHQG Refer to CloseableFrame.java in the supplement addwindowlistener(new WindowAdapter() { public void windowclosing(windowevent e) { System.exit(0); } }); EE905-GUI-18
10 10 )RQW Font class Five logical font names: ƒ SansSerif, Serif, Monospaced, Dialog, DialogInput System specific fonts available Font styles: ƒ Font.PLAIN, Font.BOLD, Font.ITALIC, Font.BOLD+Font.ITALIC Font sansb14 = new Font("SansSerif", Font.BOLD, 14); g.setfont(sansb14); EE905-GUI-19 &RORXU Color class Provides 13 standard colours e.g.: ƒ Color.black, Color.white, Color.red, Color.green, etc. Colours can also be defined by (red, green, blue) mix. e.g.: ƒ Color dullbluegreen = new Color(0, 128, 128); System colors can be used for portability, e.g.: ƒ SystemColor.window - background for windows ƒ SystemColor.windowBorder - Colour of window border frame ƒ SystemColor.windowText - Text colour inside windows Can use these colors to set e.g. current drawing colour: ƒ g.setcolor(color.red); or frame background: ƒ f.setbackground(systemcolor.window); EE905-GUI-20
11 1 6KDSH Within the paintcomponent() of a JPanel, use the supplied Graphics object g to draw Vast collection of methods, e.g.: drawstring(string str, int x, int y) drawline(int x1, int y1, int x2, int y2) drawpolygon(polygon p) fillpolygon(polygon p) Possible to draw images, but this is complicated by Java s support for downloading images across the network: see Image, Toolkit and MediaTracker classes EE905-GUI-21 (YHQW+DQGOLQJ([DPSOHV Live demo on ButtonFrame.java Live demo on MouseFrame.java EE905-GUI-22
12 12 Swing GUI Components EE905-GUI-23 9DVW6ZLQJ&RPSRQHQWV Vast array of GUI components: see Swing API (1.4) A visual index to the Swing component: here Including (as early as Swing 1.0.3) : ƒ JButton, JCheckbox, JCheckBoxMenuItem, JComboBox, JDialog, JEditorPane, JFileChooser, JLabel, JList, JMenu, JMenuBar, JMenuItem, JOptionPane, JPanel, JPasswordField, JPopupMenu, JProgressBar, JRadioButton, JRadioButtonMenuItem, JScrollBar, JScrollPane, JSlider, JTextArea, JTextField, JToolBar If these aren t enough, try e.g. Gamelan ( to download additional contributed components Note: there are more components in later versions of Swing EE905-GUI-24
13 13 /D\RXW0DQDJHPHQW Every container has a layout manager. Java provides several ways to layout components automatically ƒ FlowLayout : Arranges components in a left-to-right flow, much like lines of text in a paragraph (default for JPanel ) ƒ BorderLayout : Lays out a container, arranging and resizing its components to fit in five regions: North, South, East, West, and Center (default for JFrame ) ƒ GridLayout : Lays out a container s components in a rectangular grid ƒ GridBagLayout : Flexible layout manager that aligns components vertically and horizontally, without requiring that the components be of the same size: tricky! Several others, plus write your own! C:\j2sdk1.4.0\tutorials\uiswing\mini\layout.html Layout Management Example: Calculator.java EE905-GUI-25 0RUH([DPSOHV See supplement Text Input: TextEditFrame.java Check Box: CheckBoxFrame.java Combo Box: ComboBoxFrame.java Menu: MenuFrame.java Dialog: DialogFrame.java EE905-GUI-26
14 14 Java Applets EE905-GUI-27 %DVLFVRI-DYD$SSOHWV An applet is a special kind of Java program that a Java-enabled browser can download from the internet and then run. Motivation behind applets: users would be freed from the hassles of installing software, and that they could access their software from any Java-enabled computer or device with an internet connection. Applets are embedded inside HTML page. The browser retrieves the class files from the internet (or from a directory on the user s machine) and automatically runs the applet. EE905-GUI-28
15 15 $Q([DPSOH$SSOHW Applications ƒ Main method: main() ƒ Example: Hello.java again Applets ƒ Example: HelloApplet.java ( HelloApplet.html ) ƒ Example: HelloApplet2.java ( HelloApplet2.html) Comparison of two by code analysis EE905-GUI-29 0DLQ0HWKRGVRIApplet &ODVV init(): Initialise applet Used for whatever initialization is needed for the applet. It works much like a constructor It is automatically called by the system when Java launches the applet for the first time. start(): Start or restart applet It is automatically called after Java calls the init method. paint(): Draw applet stop() : Stop applet It is automatically called when the user moves off the page on which the applet sits. destroy() : Release applet resources It is only called when the browser shuts down normally. Please refer to JDK API documentations EE905-GUI-30
16 16 6HFXULW\&RQFHUQVIRU$SSOHWV Applets (unlike applications) are restricted in what they can do. The applet security manager throws a SecurityException whenever an applet attempts to violate one of the access rules. Applets can normally do the following things: Showing images and playing sounds Getting keystrokes and mouse clicks from the user Sending user input back to the host from which they were loaded The restricted execution environment for applets is often called the sandbox. Applets playing in the sandbox cannot alter the user s system or spy on it. Be noted that applets are interpreted by JVM rather than CPU. Signed applets EE905-GUI-31 5XQ\RXU$SSOHWV To execute the applet, the following two steps need to be carried out: ƒ Compile your source files into class files ƒ Create an HTML file that tells the browser which class file to load first and how to size the applet. Before viewing the applet in a browser, you can test it in the applet viewer. ƒ at command line type in appletviewer followed by url) ƒ ƒ However, it shows you only the applet, not the surrounding HTML text And if an HTML file contains multiple applets, the applet viewer pops up multiple windows. To properly view the applet, you need a Java 2 enabled browsers. If the applet doesn t show up, your browser uses its built-in virtual machine, and you need to configure it to use the Java Plug-in instead. EE905-GUI-32
17 17 &RQYHUWLQJ$SSOLFDWLRQVWR$SSOHWV Easy and essentially all of the user interface code can stay the same. Steps: ƒ Make an HTML page with the appropriate tag to load the applet code. ƒ Supply a subclass of the JApplet class. Make this class public. ƒ Eliminate the main method in the application. Do not construct a frame window for the application (because applet is displayed inside browser). ƒ Move any initialization code from the frame window constructor to the init method of the applet. ƒ Remove the call to setsize for applets, sizing is done by HTML file. ƒ Remove the call to setdefaultcloseoperation. Applets terminate when the browser exits. ƒ If the application calls settitle, remove it because applets don t have title bar (but you can title the web page by using the HTML title tag). ƒ Don t call show. Applets are displayed automatically. Example: refer to Calculator.java and CalculatorApplet.java EE905-GUI-33 3DVVLQJ,QIRUPDWLRQWR$SSOHWV Applets can use parameters that are embedded in the HTML file. This is done via the HTML tag called param along with attributes. <applet code= AppletA.class width=200 height=200> <param name= font value= Arial /> <param name= size value= 20 /> </applet> public class AppletA extends JApplet { public void init() { String fontname = getparameter ( font ); int fontsize = Integer.parseInt(getParameter( size )); End of Part 3 EE905-GUI-34
Topic 9: Swing. Swing is a BIG library Goal: cover basics give you concepts & tools for learning more
Swing = Java's GUI library Topic 9: Swing Swing is a BIG library Goal: cover basics give you concepts & tools for learning more Assignment 5: Will be an open-ended Swing project. "Programming Contest"
More informationTopic 9: Swing. Why are we studying Swing? GUIs Up to now: line-by-line programs: computer displays text user types text. Outline. 1. Useful & fun!
Swing = Java's GUI library Topic 9: Swing Swing is a BIG library Goal: cover basics give you concepts & tools for learning more Why are we studying Swing? 1. Useful & fun! 2. Good application of OOP techniques
More informationChapter 12 GUI Basics
Chapter 12 GUI Basics 1 Creating GUI Objects // Create a button with text OK JButton jbtok = new JButton("OK"); // Create a label with text "Enter your name: " JLabel jlblname = new JLabel("Enter your
More informationCSE 143. Event-driven Programming and Graphical User Interfaces (GUIs) with Swing/AWT
CSE 143 Event-driven Programming and Graphical User Interfaces (GUIs) with Swing/AWT slides created by Marty Stepp based on materials by M. Ernst, S. Reges, D. Notkin, R. Mercer, Wikipedia http://www.cs.washington.edu/331/
More informationProgramming graphics
Programming graphics Need a window javax.swing.jframe Several essential steps to use (necessary plumbing ): Set the size width and height in pixels Set a title (optional), and a close operation Make it
More informationOutline. Topic 9: Swing. GUIs Up to now: line-by-line programs: computer displays text user types text AWT. A. Basics
Topic 9: Swing Outline Swing = Java's GUI library Swing is a BIG library Goal: cover basics give you concepts & tools for learning more Assignment 7: Expand moving shapes from Assignment 4 into game. "Programming
More informationIntroduction to the JAVA UI classes Advanced HCI IAT351
Introduction to the JAVA UI classes Advanced HCI IAT351 Week 3 Lecture 1 17.09.2012 Lyn Bartram lyn@sfu.ca About JFC and Swing JFC Java TM Foundation Classes Encompass a group of features for constructing
More informationGraphics programming. COM6516 Object Oriented Programming and Design Adam Funk (originally Kirill Bogdanov & Mark Stevenson)
Graphics programming COM6516 Object Oriented Programming and Design Adam Funk (originally Kirill Bogdanov & Mark Stevenson) Overview Aims To provide an overview of Swing and the AWT To show how to build
More informationHandout 14 Graphical User Interface (GUI) with Swing, Event Handling
Handout 12 CS603 Object-Oriented Programming Fall 15 Page 1 of 12 Handout 14 Graphical User Interface (GUI) with Swing, Event Handling The Swing library (javax.swing.*) Contains classes that implement
More informationGraphic User Interfaces. - GUI concepts - Swing - AWT
Graphic User Interfaces - GUI concepts - Swing - AWT 1 What is GUI Graphic User Interfaces are used in programs to communicate more efficiently with computer users MacOS MS Windows X Windows etc 2 Considerations
More informationChapter 12 Advanced GUIs and Graphics
Chapter 12 Advanced GUIs and Graphics Chapter Objectives Learn about applets Explore the class Graphics Learn about the classfont Explore the classcolor Java Programming: From Problem Analysis to Program
More informationJava Programming Lecture 6
Java Programming Lecture 6 Alice E. Fischer Feb 15, 2013 Java Programming - L6... 1/32 Dialog Boxes Class Derivation The First Swing Programs: Snow and Moving The Second Swing Program: Smile Swing Components
More informationSwing UI. Powered by Pentalog. by Vlad Costel Ungureanu for Learn Stuff
Swing UI by Vlad Costel Ungureanu for Learn Stuff User Interface Command Line Graphical User Interface (GUI) Tactile User Interface (TUI) Multimedia (voice) Intelligent (gesture recognition) 2 Making the
More informationGraphical User Interface (GUI) components in Java Applets. With Abstract Window Toolkit (AWT) we can build an applet that has the basic GUI
CBOP3203 Graphical User Interface (GUI) components in Java Applets. With Abstract Window Toolkit (AWT) we can build an applet that has the basic GUI components like button, text input, scroll bar and others.
More informationCommand-Line Applications. GUI Libraries GUI-related classes are defined primarily in the java.awt and the javax.swing packages.
1 CS257 Computer Science I Kevin Sahr, PhD Lecture 14: Graphical User Interfaces Command-Line Applications 2 The programs we've explored thus far have been text-based applications A Java application is
More informationIntroduction to Graphical User Interfaces (GUIs) Lecture 10 CS2110 Fall 2008
Introduction to Graphical User Interfaces (GUIs) Lecture 10 CS2110 Fall 2008 Announcements A3 is up, due Friday, Oct 10 Prelim 1 scheduled for Oct 16 if you have a conflict, let us know now 2 Interactive
More informationGraphical User Interface (GUI)
Graphical User Interface (GUI) An example of Inheritance and Sub-Typing 1 Java GUI Portability Problem Java loves the idea that your code produces the same results on any machine The underlying hardware
More informationCS 251 Intermediate Programming GUIs: Components and Layout
CS 251 Intermediate Programming GUIs: Components and Layout Brooke Chenoweth University of New Mexico Fall 2017 import javax. swing.*; Hello GUI public class HelloGUI extends JFrame { public HelloGUI ()
More informationCSE 331. Event-driven Programming and Graphical User Interfaces (GUIs) with Swing/AWT
CSE 331 Event-driven Programming and Graphical User Interfaces (GUIs) with Swing/AWT slides created by Marty Stepp based on materials by M. Ernst, S. Reges, D. Notkin, R. Mercer, Wikipedia http://www.cs.washington.edu/331/
More informationGraphical User Interfaces. Comp 152
Graphical User Interfaces Comp 152 Procedural programming Execute line of code at a time Allowing for selection and repetition Call one function and then another. Can trace program execution on paper from
More informationWindow Interfaces Using Swing Objects
Chapter 12 Window Interfaces Using Swing Objects Event-Driven Programming and GUIs Swing Basics and a Simple Demo Program Layout Managers Buttons and Action Listeners Container Classes Text I/O for GUIs
More informationSwing. By Iqtidar Ali
Swing By Iqtidar Ali Background of Swing We have been looking at AWT (Abstract Window ToolKit) components up till now. Programmers were not comfortable when doing programming with AWT. Bcoz AWT is limited
More informationChapter 13 GUI Basics. Liang, Introduction to Java Programming, Seventh Edition, (c) 2009 Pearson Education, Inc. All rights reserved.
Chapter 13 GUI Basics 1 Motivations The design of the API for Java GUI programming is an excellent example of how the object-oriented principle is applied. In the chapters that follow, you will learn the
More informationGraphics. Lecture 18 COP 3252 Summer June 6, 2017
Graphics Lecture 18 COP 3252 Summer 2017 June 6, 2017 Graphics classes In the original version of Java, graphics components were in the AWT library (Abstract Windows Toolkit) Was okay for developing simple
More informationWindow Interfaces Using Swing Objects
Chapter 12 Window Interfaces Using Swing Objects Event-Driven Programming and GUIs Swing Basics and a Simple Demo Program Layout Managers Buttons and Action Listeners Container Classes Text I/O for GUIs
More informationJava Swing. based on slides by: Walter Milner. Java Swing Walter Milner 2005: Slide 1
Java Swing based on slides by: Walter Milner Java Swing Walter Milner 2005: Slide 1 What is Swing? A group of 14 packages to do with the UI 451 classes as at 1.4 (!) Part of JFC Java Foundation Classes
More informationCSE 331. Event- driven Programming and Graphical User Interfaces (GUIs) with Swing/AWT
CSE 331 Event- driven Programming and Graphical User Interfaces (GUIs) with Swing/AWT Lecturer: Michael Hotan slides created by Marty Stepp based on materials by M. Ernst, S. Reges, D. Notkin, R. Mercer,
More information1.00 Lecture 14. Lecture Preview
1.00 Lecture 14 Introduction to the Swing Toolkit Lecture Preview Over the next 5 lectures, we will introduce you to the techniques necessary to build graphic user interfaces for your applications. Lecture
More informationStarting Out with Java: From Control Structures Through Objects Sixth Edition
Starting Out with Java: From Control Structures Through Objects Sixth Edition Chapter 12 A First Look at GUI Applications Chapter Topics 12.1 Introduction 12.2 Creating Windows 12.3 Equipping GUI Classes
More informationPROGRAMMING DESIGN USING JAVA (ITT 303) Unit 7
PROGRAMMING DESIGN USING JAVA (ITT 303) Graphical User Interface Unit 7 Learning Objectives At the end of this unit students should be able to: Build graphical user interfaces Create and manipulate buttons,
More informationLearn Java Programming, Dr.Hashamdar. Getting Started with GUI Programming
Learn Java Programming, Dr.Hashamdar Getting Started with GUI Programming 1 Creating GUI Objects // Create a button with text OK JButton jbtok = new JButton("OK"); // Create a label with text "Enter your
More informationJava IDE Programming-I
Java IDE Programming-I Graphical User Interface : is an interface that uses pictures and other graphic entities along with text, to interact with user. User can interact with GUI using mouse click/ or
More informationLecture 18 Java Graphics and GUIs
CSE 331 Software Design and Implementation The plan Today: introduction to Java graphics and Swing/AWT libraries Then: event-driven programming and user interaction Lecture 18 Java Graphics and GUIs None
More informationDM550 / DM857 Introduction to Programming. Peter Schneider-Kamp
DM550 / DM857 Introduction to Programming Peter Schneider-Kamp petersk@imada.sdu.dk http://imada.sdu.dk/~petersk/dm550/ http://imada.sdu.dk/~petersk/dm857/ GRAPHICAL USER INTERFACES 2 HelloWorld Reloaded
More informationClass 14: Introduction to the Swing Toolkit
Introduction to Computation and Problem Solving Class 14: Introduction to the Swing Toolkit Prof. Steven R. Lerman and Dr. V. Judson Harward 1 Class Preview Over the next 5 lectures, we will introduce
More informationTool Kits, Swing. Overview. SMD158 Interactive Systems Spring Tool Kits in the Abstract. An overview of Swing/AWT
INSTITUTIONEN FÖR Tool Kits, Swing SMD158 Interactive Systems Spring 2005 Jan-28-05 2002-2005 by David A. Carr 1 L Overview Tool kits in the abstract An overview of Swing/AWT Jan-28-05 2002-2005 by David
More informationLab 4. D0010E Object-Oriented Programming and Design. Today s lecture. GUI programming in
Lab 4 D0010E Object-Oriented Programming and Design Lecture 9 Lab 4: You will implement a game that can be played over the Internet. The networking part has already been written. Among other things, the
More informationJAVA NOTES GRAPHICAL USER INTERFACES
1 JAVA NOTES GRAPHICAL USER INTERFACES Terry Marris July 2001 8 DROP-DOWN LISTS 8.1 LEARNING OUTCOMES By the end of this lesson the student should be able to understand and use JLists understand and use
More informationChapter 13. Applets and HTML. HTML Applets. Chapter 13 Java: an Introduction to Computer Science & Programming - Walter Savitch 1
Chapter 13 Applets and HTML HTML Applets Chapter 13 Java: an Introduction to Computer Science & Programming - Walter Savitch 1 Overview Applets: Java programs designed to run from a document on the Internet
More informationPackages: Putting Classes Together
Packages: Putting Classes Together 1 Introduction 2 The main feature of OOP is its ability to support the reuse of code: Extending the classes (via inheritance) Extending interfaces The features in basic
More informationChapter 12 GUI Basics. Motivations. The design of the API for Java GUI programming
Chapter 12 GUI Basics 1 Motivations The design of the API for Java GUI programming is an excellent example of how the object-orientedoriented principle is applied. In the chapters that follow, you will
More informationG51PRG: Introduction to Programming Second semester Applets and graphics
G51PRG: Introduction to Programming Second semester Applets and graphics Natasha Alechina School of Computer Science & IT nza@cs.nott.ac.uk Previous two lectures AWT and Swing Creating components and putting
More informationPart I: Learn Common Graphics Components
OOP GUI Components and Event Handling Page 1 Objectives 1. Practice creating and using graphical components. 2. Practice adding Event Listeners to handle the events and do something. 3. Learn how to connect
More informationCPS122 Lecture: Graphical User Interfaces and Event-Driven Programming
CPS122 Lecture: Graphical User Interfaces and Event-Driven Programming Objectives: Last revised 1/15/10 1. To introduce the notion of a component and some basic Swing components (JLabel, JTextField, JTextArea,
More informationGraphical User Interfaces (GUIs)
CMSC 132: Object-Oriented Programming II Graphical User Interfaces (GUIs) Department of Computer Science University of Maryland, College Park Model-View-Controller (MVC) Model for GUI programming (Xerox
More informationSummary Chapter 25 GUI Components: Part 2
1040 Chapter 25 GUI Components: Part 2 ponent on the line. TheJTextField is added to the content pane with a call to our utility method addcomponent (declared at lines 79 83). MethodaddComponent takes
More informationCSE 331 Software Design & Implementation
CSE 331 Software Design & Implementation Hal Perkins Winter 2018 Java Graphics and GUIs 1 The plan Today: introduction to Java graphics and Swing/AWT libraries Then: event-driven programming and user interaction
More informationASSIGNMENT NO 14. Objectives: To learn and demonstrated use of applet and swing components
Create an applet with three text Fields and four buttons add, subtract, multiply and divide. User will enter two values in the Text Fields. When any button is pressed, the corresponding operation is performed
More informationGraphics User Defined Forms, Part I
Graphics User Defined Forms, Part I Quick Start Compile step once always mkdir labs javac PropertyTax5.java cd labs mkdir 5 Execute step cd 5 java PropertyTax5 cp /samples/csc/156/labs/5/*. cp PropertyTax1.java
More informationThe JFrame Class Frame Windows GRAPHICAL USER INTERFACES. Five steps to displaying a frame: 1) Construct an object of the JFrame class
CHAPTER GRAPHICAL USER INTERFACES 10 Slides by Donald W. Smith TechNeTrain.com Final Draft 10/30/11 10.1 Frame Windows Java provides classes to create graphical applications that can run on any major graphical
More informationUnit 6: Graphical User Interface
Faculty of Computer Science Programming Language 2 Object oriented design using JAVA Dr. Ayman Ezzat Email: ayman@fcih.net Web: www.fcih.net/ayman Unit 6: Graphical User Interface 1 1. Overview of the
More informationAP CS Unit 11: Graphics and Events
AP CS Unit 11: Graphics and Events This packet shows how to create programs with a graphical interface in a way that is consistent with the approach used in the Elevens program. Copy the following two
More informationIntroduction to Graphical Interface Programming in Java. Introduction to AWT and Swing
Introduction to Graphical Interface Programming in Java Introduction to AWT and Swing GUI versus Graphics Programming Graphical User Interface (GUI) Graphics Programming Purpose is to display info and
More informationControl Flow: Overview CSE3461. An Example of Sequential Control. Control Flow: Revisited. Control Flow Paradigms: Reacting to the User
CSE3461 Control Flow Paradigms: Reacting to the User Control Flow: Overview Definition of control flow: The sequence of execution of instructions in a program. Control flow is determined at run time by
More informationGraphical User Interfaces
Graphical User Interfaces CSCI 136: Fundamentals CSCI 136: Fundamentals of Computer of Science Computer II Science Keith II Vertanen Keith Vertanen Copyright 2011 Overview Command line versus GUI apps
More informationCSEN401 Computer Programming Lab. Topics: Graphical User Interface Window Interfaces using Swing
CSEN401 Computer Programming Lab Topics: Graphical User Interface Window Interfaces using Swing Prof. Dr. Slim Abdennadher 22.3.2015 c S. Abdennadher 1 Swing c S. Abdennadher 2 AWT versus Swing Two basic
More informationEvent Driven Programming
Event Driven Programming Part 1 Introduction Chapter 12 CS 2334 University of Oklahoma Brian F. Veale 1 Graphical User Interfaces So far, we have only dealt with console-based programs Run from the console
More informationGUI Forms and Events, Part II
GUI Forms and Events, Part II Quick Start Compile step once always mkdir labs javac PropertyTax6.java cd labs Execute step mkdir 6 java PropertyTax6 cd 6 cp../5/propertytax5.java PropertyTax6.java Submit
More informationJava. GUI building with the AWT
Java GUI building with the AWT AWT (Abstract Window Toolkit) Present in all Java implementations Described in most Java textbooks Adequate for many applications Uses the controls defined by your OS therefore
More informationClass 16: The Swing Event Model
Introduction to Computation and Problem Solving Class 16: The Swing Event Model Prof. Steven R. Lerman and Dr. V. Judson Harward 1 The Java Event Model Up until now, we have focused on GUI's to present
More informationGraphical User Interfaces. Swing. Jose Jesus García Rueda
Graphical User Interfaces. Swing Jose Jesus García Rueda Introduction What are the GUIs? Well known examples Basic concepts Graphical application. Containers. Actions. Events. Graphical elements: Menu
More informationGraphical User Interface (GUI)
Graphical User Interface (GUI) Layout Managment 1 Hello World Often have a static method: createandshowgui() Invoked by main calling invokelater private static void createandshowgui() { } JFrame frame
More informationINTRODUCTION TO (GUIS)
INTRODUCTION TO GRAPHICAL USER INTERFACES (GUIS) Lecture 10 CS2110 Fall 2009 Announcements 2 A3 will be posted shortly, please start early Prelim 1: Thursday October 14, Uris Hall G01 We do NOT have any
More informationChina Jiliang University Java. Programming in Java. Java Swing Programming. Java Web Applications, Helmut Dispert
Java Programming in Java Java Swing Programming Java Swing Design Goals The overall goal for the Swing project was: To build a set of extensible GUI components to enable developers to more rapidly develop
More informationIntroduction. Introduction
Introduction Many Java application use a graphical user interface or GUI (pronounced gooey ). A GUI is a graphical window or windows that provide interaction with the user. GUI s accept input from: the
More informationExample 3-1. Password Validation
Java Swing Controls 3-33 Example 3-1 Password Validation Start a new empty project in JCreator. Name the project PasswordProject. Add a blank Java file named Password. The idea of this project is to ask
More informationLecture 5: Java Graphics
Lecture 5: Java Graphics CS 62 Spring 2019 William Devanny & Alexandra Papoutsaki 1 New Unit Overview Graphical User Interfaces (GUI) Components, e.g., JButton, JTextField, JSlider, JChooser, Containers,
More informationToday. cisc3120-fall2012-parsons-lectiii.3 2
MORE GUI COMPONENTS Today Last time we looked at some of the components that the: AWT Swing libraries provide for building GUIs in Java. This time we will look at several more GUI component topics. We
More informationGraphical User Interface (GUI)
Graphical User Interface (GUI) An example of Inheritance and Sub-Typing 1 Java GUI Portability Problem Java loves the idea that your code produces the same results on any machine The underlying hardware
More informationDM503 Programming B. Peter Schneider-Kamp.
DM503 Programming B Peter Schneider-Kamp petersk@imada.sdu.dk! http://imada.sdu.dk/~petersk/dm503/! ADVANCED OBJECT-ORIENTATION 2 Object-Oriented Design classes often do not exist in isolation from each
More informationGraphical User Interface (GUI) and Object- Oriented Design (OOD)
Chapter 6,13 Graphical User Interface (GUI) and Object- Oriented Design (OOD) Objectives To distinguish simple GUI components. To describe the Java GUI API hierarchy. To create user interfaces using frames,
More informationSri Vidya College of Engineering & Technology
UNIT-V TWO MARKS QUESTION & ANSWER 1. What is the difference between the Font and FontMetrics class? Font class is used to set or retrieve the screen fonts.the Font class maps the characters of the language
More informationBasicsof. JavaGUI and SWING
Basicsof programming3 JavaGUI and SWING GUI basics Basics of programming 3 BME IIT, Goldschmidt Balázs 2 GUI basics Mostly window-based applications Typically based on widgets small parts (buttons, scrollbars,
More informationObject-Oriented Programming: Revision. Revision / Graphics / Subversion. Ewan Klein. Inf1 :: 2008/09
Object-Oriented Programming: Revision / Graphics / Subversion Inf1 :: 2008/09 Breaking out of loops, 1 Task: Implement the method public void contains2(int[] nums). Given an array of ints and a boolean
More informationCPS122 Lecture: Graphical User Interfaces and Event-Driven Programming
CPS122 Lecture: Graphical User Interfaces and Event-Driven Programming Objectives: Last revised March 2, 2017 1. To introduce the notion of a component and some basic Swing components (JLabel, JTextField,
More informationThe Abstract Windowing Toolkit. Java Foundation Classes. Swing. In April 1997, JavaSoft announced the Java Foundation Classes (JFC).
The Abstract Windowing Toolkit Since Java was first released, its user interface facilities have been a significant weakness The Abstract Windowing Toolkit (AWT) was part of the JDK form the beginning,
More informationJAVA NOTES GRAPHICAL USER INTERFACES
1 JAVA NOTES GRAPHICAL USER INTERFACES Terry Marris 24 June 2001 5 TEXT AREAS 5.1 LEARNING OUTCOMES By the end of this lesson the student should be able to understand how to get multi-line input from the
More information2110: GUIS: Graphical User Interfaces
2110: GUIS: Graphical User Interfaces Their mouse had a mean time between failure of a week it would jam up irreparably, or... jam up on the table--... It had a flimsy cord whose wires would break. Steve
More informationDr. Hikmat A. M. AbdelJaber
Dr. Hikmat A. M. AbdelJaber JWindow: is a window without a title bar or move controls. The program can move and resize it, but the user cannot. It has no border at all. It optionally has a parent JFrame.
More informationUser interfaces and Swing
User interfaces and Swing Overview, applets, drawing, action listening, layout managers. APIs: java.awt.*, javax.swing.*, classes names start with a J. Java Lectures 1 2 Applets public class Simple extends
More informationCourse Status Networking GUI Wrap-up. CS Java. Introduction to Java. Andy Mroczkowski
CS 190 - Java Introduction to Java Andy Mroczkowski uamroczk@cs.drexel.edu Department of Computer Science Drexel University March 10, 2008 / Lecture 8 Outline Course Status Course Information & Schedule
More informationAll the Swing components start with J. The hierarchy diagram is shown below. JComponent is the base class.
Q1. If you add a component to the CENTER of a border layout, which directions will the component stretch? A1. The component will stretch both horizontally and vertically. It will occupy the whole space
More informationUnit 7: Event driven programming
Faculty of Computer Science Programming Language 2 Object oriented design using JAVA Dr. Ayman Ezzat Email: ayman@fcih.net Web: www.fcih.net/ayman Unit 7: Event driven programming 1 1. Introduction 2.
More informationEclipsing Your IDE. Figure 1 The first Eclipse screen.
Eclipsing Your IDE James W. Cooper I have been hearing about the Eclipse project for some months, and decided I had to take some time to play around with it. Eclipse is a development project (www.eclipse.org)
More informationFrames, GUI and events. Introduction to Swing Structure of Frame based applications Graphical User Interface (GUI) Events and event handling
Frames, GUI and events Introduction to Swing Structure of Frame based applications Graphical User Interface (GUI) Events and event handling Introduction to Swing The Java AWT (Abstract Window Toolkit)
More informationIntroduction This assignment will ask that you write a simple graphical user interface (GUI).
Computing and Information Systems/Creative Computing University of London International Programmes 2910220: Graphical Object-Oriented and Internet programming in Java Coursework one 2011-12 Introduction
More informationBASICS OF GRAPHICAL APPS
CSC 2014 Java Bootcamp Lecture 7 GUI Design BASICS OF GRAPHICAL APPS 2 Graphical Applications So far we ve focused on command-line applications, which interact with the user using simple text prompts In
More informationBuilding a GUI in Java with Swing. CITS1001 extension notes Rachel Cardell-Oliver
Building a GUI in Java with Swing CITS1001 extension notes Rachel Cardell-Oliver Lecture Outline 1. Swing components 2. Building a GUI 3. Animating the GUI 2 Swing A collection of classes of GUI components
More informationChapter 6: Graphical User Interfaces
Chapter 6: Graphical User Interfaces CS 121 Department of Computer Science College of Engineering Boise State University April 21, 2015 Chapter 6: Graphical User Interfaces CS 121 1 / 36 Chapter 6 Topics
More informationJava: Graphical User Interfaces (GUI)
Chair of Software Engineering Carlo A. Furia, Marco Piccioni, and Bertrand Meyer Java: Graphical User Interfaces (GUI) With material from Christoph Angerer The essence of the Java Graphics API Application
More information11/6/15. Objec&ves. RouleQe. Assign 8: Understanding Code. Assign 8: Bug. Assignment 8 Ques&ons? PROGRAMMING PARADIGMS
Objec&ves RouleQe Assign 8: Refactoring for Extensibility Programming Paradigms Introduc&on to GUIs in Java Ø Event handling Nov 6, 2015 Sprenkle - CSCI209 1 Nov 6, 2015 Sprenkle - CSCI209 2 Assign 8:
More informationSystems Programming Graphical User Interfaces
Systems Programming Graphical User Interfaces Julio Villena Román (LECTURER) CONTENTS ARE MOSTLY BASED ON THE WORK BY: José Jesús García Rueda Systems Programming GUIs based on Java
More informationWhat is Widget Layout? Laying Out Components. Resizing a Window. Hierarchical Widget Layout. Interior Design for GUIs
What is Widget Layout? Laying Out Components Positioning widgets in their container (typically a JPanel or a JFrame s content pane) Basic idea: each widget has a size and position Main problem: what if
More informationAnnouncements. Introduction. Lecture 18 Java Graphics and GUIs. Announcements. CSE 331 Software Design and Implementation
CSE 331 Software Design and Implementation Lecture 18 Java Graphics and GUIs Announcements Leah Perlmutter / Summer 2018 Announcements Quiz 6 due Thursday 8/2 Homework 7 due Thursday 8/2 Regression testing
More informationIntroduction p. 1 JFC Architecture p. 5 Introduction to JFC p. 7 The JFC 1.2 Extension p. 8 Swing p. 9 Drag and Drop p. 16 Accessibility p.
Introduction p. 1 JFC Architecture p. 5 Introduction to JFC p. 7 The JFC 1.2 Extension p. 8 Swing p. 9 Drag and Drop p. 16 Accessibility p. 17 MVC Architecture p. 19 The MVC Architecture p. 20 Combined
More informationCSC 1214: Object-Oriented Programming
CSC 1214: Object-Oriented Programming J. Kizito Makerere University e-mail: jkizito@cis.mak.ac.ug www: http://serval.ug/~jona materials: http://serval.ug/~jona/materials/csc1214 e-learning environment:
More informationJava - Applets. public class Buttons extends Applet implements ActionListener
Java - Applets Java code here will not use swing but will support the 1.1 event model. Legacy code from the 1.0 event model will not be used. This code sets up a button to be pushed: import java.applet.*;
More informationJava Swing. Lists Trees Tables Styled Text Components Progress Indicators Component Organizers
Course Name: Advanced Java Lecture 19 Topics to be covered Java Swing Lists Trees Tables Styled Text Components Progress Indicators Component Organizers AWT to Swing AWT: Abstract Windowing Toolkit import
More informationGraphical interfaces & event-driven programming
Graphical interfaces & event-driven programming Lecture 12 of TDA 540 (Objektorienterad Programmering) Carlo A. Furia Alex Gerdes Chalmers University of Technology Gothenburg University Fall 2017 Pop quiz!
More informationJRadioButton account_type_radio_button2 = new JRadioButton("Current"); ButtonGroup account_type_button_group = new ButtonGroup();
Q)Write a program to design an interface containing fields User ID, Password and Account type, and buttons login, cancel, edit by mixing border layout and flow layout. Add events handling to the button
More information