PROGRAMMIERPRAKTIKUM GRAPHICAL USER INTERFACES. Tobias Witt
|
|
- Stephen Quinn
- 6 years ago
- Views:
Transcription
1 PROGRAMMIERPRAKTIKUM GRAPHICAL USER INTERFACES Tobias Witt
2 K.O.-SYSTEM Korrekt Oida! Jeder Student für jeden Meilenstein 1, ½ oder 0 K.O. Erstes K.O. für den Eingangstest ab 15 Punkten (ohne Aufgabe 3) Zum Bestehen: Max. 2 fehlende K.O.
3 GRUNDLAGEN
4 TOOLKITS/FRAMEWORKS Bibliotheken/Sammlungen von Funktionen und Klassen Swing, AWT, SWT JavaFX!!!
5 FENSTER import javafx.application.application; import javafx.stage.stage; public class Fenster extends Application { public static void main(string[] args) { launch(args); } public void start(stage primarystage) { primarystage.settitle("ein Fenster"); primarystage.show(); }
6 Titel Stage Scene
7 FENSTER (UND EIN EVENT) Button button = new Button(); button.settext("hallo Welt!"); button.setonaction((actionevent event) -> { Alert alert = new Alert(Alert.AlertType.INFORMATION); alert.settitle("hallo Welt"); alert.setcontenttext("ich habe 'Hallo Welt' gesagt!"); alert.showandwait(); }); StackPane root = new StackPane(); root.getchildren().add(button); Scene scene = new Scene(root, 500, 500); primarystage.setscene(scene); primarystage.settitle("mein Fenster"); primarystage.show();
8
9 SCENE GRAPH Stage Scene Root-Node Parent-Node Parent-Node Leaf-Node Leaf-Node Leaf-Node Leaf-Node
10 Stage primarystage new Scene( ) StackPane root Button button
11 BUTTON Button button = new Button("Ein Button");
12 SLIDER/SPINNER Minimum Aktueller Wert Maximum Slider slider = new Slider(50, 100, 50); Spinner<Integer> spinner = new Spinner<>(50, 100, 50);
13 CHOICEBOX ChoiceBox box = new ChoiceBox(); box.getitems().addall("eins", "Zwei", "Drei", "Vier");
14 PROGRESSBAR ProgressIndicator progress = new ProgressIndicator(); progress.setprogress(.25);
15 CHECKBOX/RADIOBUTTON ToggleGroup group = new ToggleGroup(); RadioButton b1 = new RadioButton("Eins"); b1.settogglegroup(group); b1.setselected(true); RadioButton b2 = new RadioButton("Zwei"); b2.settogglegroup(group); CheckBox b3 = new CheckBox("Eins - Checkbox ); b1.setselected(true); CheckBox b4 = new CheckBox("Zwei - Checkbox");
16 FLOWPANE FlowPane root = new FlowPane(); root.getchildren().addall(button, textfield, textarea, slider, spinner, box, progress, b1, b2, b3, b4); Scene scene = new Scene(root, 500, 500);
17 TextField Button Spinner TextArea TextArea ChoiceBox ProgressIndicator RadioButton CheckBox
18 EVENTS Spinner<Integer> spinner = new Spinner<>(50, 100, 50); Slider slider = new Slider(50, 100, 50); Label label = new Label(String.format("Wert: %d", (int) slider.getvalue()));
19 EVENTS slider.valueproperty().addlistener((observablevalue<? extends Number> ov, Number oldvalue, Number newvalue) -> { int value = newvalue.intvalue(); spinner.getvaluefactory().setvalue(value); label.settext(string.format("wert: %d", value)); }); spinner.valueproperty().addlistener((observablevalue<? extends Number> ov, Number oldvalue, Number newvalue) -> { int value = newvalue.intvalue(); slider.setvalue(value); label.settext(string.format("wert: %d", value)); });
20 EVENTS GridPane root = new GridPane(); root.add(slider, 1, 1); root.add(spinner, 1, 2); root.add(label, 1, 3); Scene scene = new Scene(root, 500, 500);
21
22 LAYOUT
23 GridPane root = new GridPane(); root.setalignment(pos.center); root.sethgap(10); root.setvgap(10); root.setpadding(new Insets(25, 25, 25, 25));
24 Text title = new Text("Willkommen bei Meinkraft"); title.setfont( Font.font("Verdana", FontWeight.NORMAL, 20)); root.add(title, 0, 0, 2, 1);
25 Label volume = new Label("Lautstärke:"); root.add(volume, 0, 1); Label teamcolor = new Label("Teamfarbe:"); root.add(teamcolor, 0, 2);
26 ToggleGroup teamcolorgroup = new ToggleGroup(); RadioButton redcontrol = new RadioButton("Rot"); redcontrol.settogglegroup(teamcolorgroup); RadioButton greencontrol = new RadioButton("Grün"); greencontrol.settogglegroup(teamcolorgroup); RadioButton bluecontrol = new RadioButton("Blau"); bluecontrol.settogglegroup(teamcolorgroup); HBox teamcolorcontrols = new HBox(); teamcolorcontrols.getchildren().addall(redcontrol, greencontrol, bluecontrol); root.add(teamcolorcontrols, 1, 2);
27 Button button = new Button("Speichern"); HBox hbbutton = new HBox(10); hbbutton.setalignment(pos.bottom_right); hbbutton.getchildren().add(button); root.add(hbbutton, 1, 4); Text message = new Text(); message.setfill(color.firebrick); root.add(message, 1, 6);
28
29
30 Text message = new Text(); message.setfill(color.firebrick); root.add(message, 1, 6); Scene scene = new Scene(root, 500, 500);
31 Text message = new Text(); message.setfill(color.firebrick); root.add(message, 1, 6); root.setgridlinesvisible(true); Scene scene = new Scene(root, 500, 500);
32
33
34 CSS Text title = new Text("Willkommen bei Meinkraft"); title.setfont(font.font("verdana", )); root.add(title, 0, 0, 2, 1); Text message = new Text(); message.setfill(color.firebrick); root.add(message, 1, 6);
35 CSS Text title = new Text("Willkommen bei Meinkraft"); title.setid("title"); root.add(title, 0, 0, 2, 1); Text message = new Text(); message.setid("message"); root.add(message, 1, 6); URL stylesheet = getclass().getresource("/login.css"); scene.getstylesheets().add( stylesheet.toexternalform());
36 CSS.root { -fx-background-color: pink; }
37 CSS.label { -fx-font-size: 12px; -fx-font-weight: bold; -fx-text-fill: #333333; -fx-effect: dropshadow(gaussian, rgba(155, 155, 255, 0.5), 0, 0, 0, 1); } #title { -fx-font-size: 32px; -fx-font-family: "Verdana"; -fx-fill: #818101; -fx-effect: innershadow(three-pass-box, rgba(0, 0, 0, 0.7), 6, 0.0, 0, 2); } #message { -fx-fill: FIREBRICK; -fx-font-weight: bold; -fx-effect: dropshadow(gaussian, rgba(255, 255, 255, 0.5), 0, 0, 0, 1 ); }
38 CSS.button { -fx-text-fill: white; -fx-font-family: "Arial Narrow"; -fx-font-weight: bold; -fx-background-color: linear-gradient(#61a2b1, #2A5058); -fx-effect: dropshadow( three-pass-box, rgba(0,0,0,0.6), 5, 0.0, 0, 1); }.button:hover { -fx-background-color: linear-gradient(#2a5058, #61a2b1); }
39
40
41 FXML public void start(stage primarystage) throws Exception { Parent root = FXMLLoader.load( getclass().getresource("/fenster.fxml")); Scene scene = new Scene(root, 500, 500); String stylesheet = getclass().getresource("/login.css").toexternalform(); scene.getstylesheets().add(stylesheet); primarystage.setscene(scene); } primarystage.settitle("meinkraft"); primarystage.show();
42 FXML <?xml version="1.0" encoding="utf-8"?> <?import javafx.scene.layout.gridpane?>
43 FXML Root-Node <GridPane fx:controller="de.hhu.propra.javafxexample.fenstercontroller" xmlns:fx=" alignment="center" hgap="10" vgap="10"> <padding> <Insets top="25" right="25" bottom="10" left="25" /> </padding> </GridPane>
44 FXML <Text fx:id="title" text="willkommen bei Meinkraft" GridPane.columnIndex="0" GridPane.rowIndex="0" GridPane.columnSpan="2"/> <Label text="lautstärke:" GridPane.columnIndex="0" GridPane.rowIndex="1"/> <Label text="teamfarbe:" GridPane.columnIndex="0" GridPane.rowIndex="2"/>
45 FXML <Slider min="0" max="100" GridPane.columnIndex="1" GridPane.rowIndex= 1"/> <HBox GridPane.columnIndex="1" GridPane.rowIndex="2"> <fx:define> <ToggleGroup fx:id="teamcolorgroup"/> </fx:define> <RadioButton text="rot" togglegroup="$teamcolorgroup"/> <RadioButton text="grün" togglegroup="$teamcolorgroup"/> <RadioButton text="blau" togglegroup="$teamcolorgroup"/> </HBox>
46 FXML <HBox alignment="bottom_right" GridPane.columnIndex="1" GridPane.rowIndex="4"> <Button text="speichern" onaction="#handlesavebutton" /> </HBox> <Text fx:id="message" GridPane.columnIndex="1" GridPane.rowIndex="6"/>
47 CONTROLLER public class FensterController private Text message; fx:id= private ToggleGroup teamcolorgroup; fx:id= teamcolorgroup } onaction= protected void handlesavebutton(actionevent event) { if (teamcolorgroup.getselectedtoggle() == null) { message.settext("bitte Teamfarbe auswählen!"); } }
48 HAPPY LITTLE CANVAS
49 PIXELGRAFIK
50 FORMEN <StackPane xmlns:fx=" fx:controller=" xample.fenstercontroller"> <Canvas fx:id="mycanvas" width="500" height="500"/> </StackPane>
51 FORMEN public class FensterController implements Initializable private Canvas public void initialize( URL location, ResourceBundle resources) { GraphicsContext g2d = mycanvas.getgraphicscontext2d(); g2d.setfill(color.white); g2d.fillrect(0, 0, mycanvas.getwidth(), mycanvas.getheight()); } drawshapes(g2d);
52 FORMEN I private void drawshapes(graphicscontext g2d) { g2d.setfill(color.green); g2d.setstroke(color.blue); g2d.setlinewidth(5); g2d.strokeline(40, 10, 10, 40); g2d.filloval(10, 60, 30, 30); g2d.strokeoval(60, 60, 30, 30); } g2d.fillroundrect(110, 60, 30, 30, 10, 10); g2d.strokeroundrect(160, 60, 30, 30, 10, 10);
53
54 FORMEN II private void drawshapes(graphicscontext g2d) { g2d.setlinewidth(20); g2d.setlinecap(strokelinecap.butt); g2d.strokeline(30, 130, 100, 130); g2d.setlinecap(strokelinecap.round); g2d.strokeline(30, 160, 100, 160); g2d.setlinecap(strokelinecap.square); g2d.strokeline(30, 190, 100, 190);
55 double[] xpoints = {30, 60, 90}; double[] ypoints = {290, 230, 290}; g2d.setlinejoin(strokelinejoin.bevel); g2d.strokepolygon(xpoints, ypoints, 3); g2d.setlinejoin(strokelinejoin.miter); xpoints[0] += 120; xpoints[1] += 120; xpoints[2] += 120; g2d.strokepolygon(xpoints, ypoints, 3); } g2d.setlinejoin(strokelinejoin.round); xpoints[0] += 120; xpoints[1] += 120; xpoints[2] += 120; g2d.strokepolygon(xpoints, ypoints, 3);
56 Einfach abschließen Rund abschließen Quadratisch abschließen Rund verbinden Schräg verbinden Spitz verbinden
57 EVENTS <BorderPane xmlns:fx=" fx:controller="de.hhu.propra.javafxexample.fenstercontroller" onkeypressed="#keypressed" onkeyreleased="#keyreleased"> <center> <Canvas fx:id="mycanvas" focustraversable="true" width="500" height="400"/> </center> <bottom> <ScrollPane fx:id="scrollpane" prefheight="100"> <Text fx:id="log" GridPane.columnIndex="0" GridPane.rowIndex="1"/> </ScrollPane> </bottom> </BorderPane>
58 public class FensterController implements Initializable public ScrollPane private Canvas private Text log; private GraphicsContext public void initialize( URL location, ResourceBundle resources) { mycanvas.requestfocus(); g2d = mycanvas.getgraphicscontext2d(); } g2d.setfill(color.white); g2d.fillrect(0, 0, mycanvas.getwidth(), mycanvas.getheight()); }
59 public void keypressed(keyevent event) { log.settext(log.gettext() + event.gettext() + "-Taste gedrückt\n"); } scrolltobottom(); public void keyreleased(keyevent event) { log.settext(log.gettext() + event.gettext() + "-Taste losgelassen\n"); } scrolltobottom(); private void scrolltobottom() { scrollpane.setvvalue(scrollpane.getvmax()); }
60 Text in ScrollPane Canvas
61 <center> <Canvas fx:id="mycanvas" focustraversable="true" width="500" height="400"/> </center>
62 <center> <Canvas fx:id="mycanvas" focustraversable="true" onmouseclicked="#canvasclicked" width="500" height="400"/> </center>
63 public void canvasclicked(mouseevent event) { double radius = 10, x = event.getx(), y = event.gety(); log.settext(log.gettext() + String.format( "Maus bei (%d, %d) geklickt\n", (int) x, (int) y)); scrolltobottom(); } g2d.setfill(color.black); g2d.filloval(x - radius, y - radius, radius * 2, radius * 2);
64
65 SZENENWECHSEL
66 SZENEN public void start(stage primarystage) throws Exception { FXMLLoader startloader = new FXMLLoader( getclass().getresource("/start.fxml")); Parent start = startloader.load(); Parent gamearea = FXMLLoader.load( getclass().getresource("/fenster.fxml")); Scene startscene = new Scene(start, 200, 100); Scene gamescene = new Scene(gameArea, 500, 500);
67 SZENENWECHSEL public void start(stage primarystage) throws Exception { ((StartController) startloader.getcontroller()).setonstart(() -> { }); primarystage.setscene(gamescene);
68 SZENEN String stylesheet = getclass().getresource("/fenster.css").toexternalform(); startscene.getstylesheets().add(stylesheet); primarystage.setscene(startscene); } primarystage.settitle("meinkraft"); primarystage.show();
69 START-CONTROLLER <StackPane xmlns:fx=" fx:controller="de.hhu.propra.javafxexample.startcontroller"> <Button fx:id="startbutton" text="start" onaction="#startgame"/> </StackPane>
70 START-CONTROLLER public class StartController { private Runnable r; public void setonstart(runnable r) { this.r = r; } public void startgame(actionevent actionevent) { r.run(); }
71 SZENENWECHSEL public void start(stage primarystage) throws Exception { ((StartController) startloader.getcontroller()).setonstart(() -> { }); primarystage.setscene(gamescene);
72
73 BILDQUELLEN Bild Quelle Gui / / /000000/20000/1000/100/21130/21130.strip.gif Layout Happy Little Canvas Szenenwechsel
PROGRAMMIERPRAKTIKUM BENUTZERINTERAKTION. Tobias Witt
PROGRAMMIERPRAKTIKUM BENUTZERINTERAKTION Tobias Witt BENUTZERINTERAKTION PIXELGRAFIK 0 1 2 3 0 1 2 3 PIXEL AUS VEKTOREN Strichstärke, Strichfarbe Mittelpunkt Füllfarbe Radius M(x,y) r PIXEL AUS VEKTOREN
More informationc 2017 All rights reserved. This work may be distributed or shared at no cost, but may not be modified.
Introduction to JavaFX for Beginner Programmers Robert Ball, Ph.D. August 16, 2017 Version 0.1.4 c 2017 All rights reserved. This work may be distributed or shared at no cost, but may not be modified.
More informationinteractive systems graphical interfaces Week 2 : a. Intro to JavaFX Programming of Interactive Systems
Programming of Interactive Systems Anastasia.Bezerianos@lri.fr Week 2 : a. Intro to JavaFX Anastasia.Bezerianos@lri.fr (part of this class is based on previous classes from Anastasia, and of T. Tsandilas,
More informationMultimedia-Programmierung Übung 3
Multimedia-Programmierung Übung 3 Ludwig-Maximilians-Universität München Sommersemester 2015 JavaFX Version 8 What is JavaFX? Recommended UI-Toolkit for Java 8 Applications (like e.g.: Swing, AWT) Current
More informationAdvanced Programming Methods. Lecture 11 - JavaFx(Continuation)
Advanced Programming Methods Lecture 11 - JavaFx(Continuation) Content Event Driven Programming Event Handling A Simple Application without SceneBuilder Same Application with FXML (generated by SceneBuilder)
More informationJavaFX a Crash Course. Tecniche di Programmazione A.A. 2016/2017
JavaFX a Crash Course Tecniche di Programmazione Key concepts in JavaFX Stage: where the application will be displayed (e.g., a Windows window) Scene: one container of Nodes that compose one page of your
More informationJavaFX a Crash Course. Tecniche di Programmazione A.A. 2015/2016
JavaFX a Crash Course Tecniche di Programmazione Key concepts in JavaFX Stage: where the application will be displayed (e.g., a Windows window) Scene: one container of Nodes that compose one page of your
More informationProctors are unable to respond to queries about the interpretation of exam questions. Do your best to answer exam questions as written.
QUEEN'S UNIVERSITY SCHOOL OF COMPUTING HAND IN Answers Are Recorded on Question Paper CISC124, FALL TERM, 2015 FINAL EXAMINATION 7pm to 10pm, 15 DECEMBER 2015 Instructor: Alan McLeod If the instructor
More informationCOMP6700/2140 Scene Graph, Layout and Styles
COMP6700/2140 Scene Graph, Layout and Styles Alexei B Khorev and Josh Milthorpe Research School of Computer Science, ANU May 2017 Alexei B Khorev and Josh Milthorpe (RSCS, ANU) COMP6700/2140 Scene Graph,
More information46 Advanced Java for Bioinformatics, WS 17/18, D. Huson, December 21, 2017
46 Advanced Java for Bioinformatics, WS 17/18, D. Huson, December 21, 2017 11 FXML and CSS A program intended for interactive use may provide a large number of user interface (UI) components, as shown
More informationJavaFX a Crash Course. Tecniche di Programmazione A.A. 2017/2018
JavaFX a Crash Course Tecniche di Programmazione JavaFX applications 2 Application structure Stage: where the application will be displayed (e.g., a Windows window) Scene: one container of Nodes that compose
More informationComputational Expression
Computational Expression Graphics Janyl Jumadinova 6 February, 2019 Janyl Jumadinova Computational Expression 6 February, 2019 1 / 11 Java Graphics Graphics can be simple or complex, but they are just
More informationJavaFX:Using Built-in Layout Panes
CS244 Advanced programming Applications JavaFX:Using Built-in Layout Panes Dr Walid M. Aly Lecture 7 Example of JavaFX nodes http://docs.oracle.com/javafx/2/ui_controls/overview.htm# 2 Shapes JavaFX provides
More informationEssential JavaFX. Using layouts. Panes in JavaFX. Layouts. Tobias Andersson Gidlund LAYOUTS
Essential JavaFX Tobias Andersson Gidlund tobias.andersson.gidlund@lnu.se November 15, 2012 Essential JavaFX 1(36) LAYOUTS Essential JavaFX 2(36) Using layouts Since JavaFX still is Java, the use of layout
More informationJava Overview Java, Summer semester
Java Overview Java, Summer semester 2016 29.2.2016 Java object oriented (almost) all is object interpreted source code (.java) compiled to the bytecode bytecode (.class) interpreted by the virtual machine
More informationEvent-Driven Programming
Lecture 10 1 Recall: JavaFX Basics So far we ve learned about some of the basic GUI classes (e.g. shapes, buttons) and how to arrange them in window(s) A big missing piece: interaction To have a GUI interact
More informationJavaFX fundamentals. Tecniche di Programmazione A.A. 2012/2013
JavaFX fundamentals Tecniche di Programmazione Summary 1. Application structure 2. The Scene Graph 3. Events 4. Properties and Bindings 2 Application structure Introduction to JavaFX 4 Separation of concerns
More informationBuilding Graphical user interface using JavaFX
CS244 Advanced programming Applications Building Graphical user interface using JavaFX Dr Walid M. Aly Lecture 6 JavaFX vs Swing and AWT When Java was introduced, the GUI classes were bundled in a library
More informationJava Foundations. 9-1 Introduction to JavaFX. Copyright 2014, Oracle and/or its affiliates. All rights reserved.
Java Foundations 9-1 Copyright 2014, Oracle and/or its affiliates. All rights reserved. Objectives This lesson covers the following objectives: Create a JavaFX project Explain the components of the default
More informationAbout 1. Chapter 1: Getting started with javafx 2. Remarks 2. Versions 2. Examples 2. Installation or Setup 2. Hello World program 3
javafx #javafx Table of Contents About 1 Chapter 1: Getting started with javafx 2 Remarks 2 Versions 2 Examples 2 Installation or Setup 2 Hello World program 3 Chapter 2: Animation 5 Examples 5 Animating
More informationGUI Output. Adapted from slides by Michelle Strout with some slides from Rick Mercer. CSc 210
GUI Output Adapted from slides by Michelle Strout with some slides from Rick Mercer CSc 210 GUI (Graphical User Interface) We all use GUI s every day Text interfaces great for testing and debugging Infants
More informationC16a: Model-View-Controller and JavaFX Styling
CISC 3120 C16a: Model-View-Controller and JavaFX Styling Hui Chen Department of Computer & Information Science CUNY Brooklyn College 3/28/2018 CUNY Brooklyn College 1 Outline Recap and issues Model-View-Controller
More informationfile:///home/manu/formesfxml.html
FormesFXML.java file:///home/manu/formesfxml.html /home/manu/cloudstation/projetsjava/formesfxmlhiérarchie/src/fx/formesfxml.java import javafx.application.application; import javafx.fxml.fxmlloader; import
More informationfile:///home/manu/html.html
HTML.java file:///home/manu/html.html /home/manu/cloudstation/projetsjava/html/src/fx/html.java import javafx.application.application; import javafx.fxml.fxmlloader; import javafx.scene.*; import javafx.stage.stage;
More informationC15: JavaFX: Styling, FXML, and MVC
CISC 3120 C15: JavaFX: Styling, FXML, and MVC Hui Chen Department of Computer & Information Science CUNY Brooklyn College 10/19/2017 CUNY Brooklyn College 1 Outline Recap and issues Styling user interface
More informationProctors are unable to respond to queries about the interpretation of exam questions. Do your best to answer exam questions as written.
QUEEN'S UNIVERSIY SCHOOL O COMPUING CISC124, ALL ERM, 2015 INAL EXAMINAION 7pm to 10pm, 15 DECEMBER 2015 Instructor: Alan McLeod HAND IN Answers Are Recorded on Question Paper SOLUION If the instructor
More informationCON Visualising GC with JavaFX Ben Evans James Gough
CON6265 - Visualising GC with JavaFX Ben Evans (@kittylyst) James Gough (@javajimlondon) Who are these guys anyway? Beginnings This story, as with so many others, starts with beer... Beginnings It was
More informationCopyright 2012, Oracle and/or its affiliates. All rights reserved.
1 Custom Controls Paru Somashekar parvathi.somashekar@oracle.com Jonathan Giles Tech Lead, JavaFX UI Controls jonathan.giles@oracle.com 2 The following is intended to outline our general product direction.
More informationCome organizzare gli ascoltatori/osservatori
Come organizzare gli ascoltatori/osservatori Listener Esterno public class AppWithEvents extends Application { Text text=null; Button btn = new Button(); Listener a=new Listener(this); btn.addeventhandler(actionevent.action,
More information1 sur 1 30/10/ :43
ServiceChat.java file:///home/manu/servicechat.html /home/manu/cloudstation/projetsjava/chatfxml/src/service/servicechat.java package service; import java.io.*; import java.net.*; public class ServiceChat
More informationPosizionamento automa-co: Layouts di base. h5p://docs.oracle.com/javafx/2/ layout/jfxpub- layout.htm
Posizionamento automa-co: Layouts di base h5p://docs.oracle.com/javafx/2/ layout/jfxpub- layout.htm Layout: HBox public class Layout1 extends Application { Pane layout=new HBox(); layout.getchildren().add(new
More informationGrafica e non solo: Java FX
Grafica e non solo: Java FX Creazione di una Applicazione JavaFX public class JavaFXApplica/onTEST extends Applica/on { @Override public void start(stage primarystage) { BuCon btn = new BuCon(); btn.settext("say
More informationHands on Java8 and RaspberryPi Hacking the RaspberryPi with Java8, JavaFX8 and addon hardware modules
Hands on Java8 and RaspberryPi Hacking the RaspberryPi with Java8, JavaFX8 and addon hardware modules 25 June 2014, jug.ch Pance Cavkovski & Aleksandar Nikov About the speakers Pance Cavkovski pance.cavkovski@netcetera.com
More informationWeek 5: Images & Graphics. Programming of Interactive Systems. JavaFX Images. images. Anastasia Bezerianos. Anastasia Bezerianos
Programming of Interactive Systems Week 5: Images & Graphics Anastasia Bezerianos introduction.prog.is@gmail.com Anastasia Bezerianos introduction.prog.is@gmail.com!2 1 2 JavaFX Images images In JavaFX
More information1 sur 1 27/10/ :12
ServiceMonétaire.java file:///home/manu/servicemonétaire.html /home/manu/cloudstation/projetsjava/monnaiefxml/src/service/servicemonétaire.java package service; import java.io.*; import java.net.*; import
More informationCST141 JavaFX Basics Page 1
CST141 JavaFX Basics Page 1 1 2 5 6 7 8 9 10 JavaFX Basics CST141 Console vs. Window Programs In Java there is no distinction between console programs and window programs Java applications can mix (combine)
More informationEvent-Driven Programming with GUIs. Slides derived (or copied) from slides created by Rick Mercer for CSc 335
Event-Driven Programming with GUIs Slides derived (or copied) from slides created by Rick Mercer for CSc 335 Event Driven GUIs A Graphical User Interface (GUI) presents a graphical view of an application
More informationJavaFX. Using Image Ops Release 2.2 E
JavaFX Using Image Ops Release 2.2 E38237-02 June 2013 JavaFX/Using Image Ops, Release 2.2 E38237-02 Copyright 2012, 2013 Oracle and/or its affiliates. All rights reserved. Primary Author: Scott Hommel
More informationComposite Pattern Diagram. Explanation. JavaFX Subclass Hierarchy, cont. JavaFX: Node. JavaFX Layout Classes. Top-Level Containers 10/12/2018
Explanation Component has Operation( ), which is a method that applies to all components, whether composite or leaf. There are generally many operations. Component also has composite methods: Add( ), Remove(
More informationCOMP1406 Tutorial 5. Objectives: Getting Started: Tutorial Problems:
COMP1406 Tutorial 5 Objectives: Learn how to create a window with various components on it. Learn how to create a Pane and use it in more than one GUI. To become familiar with the use of Buttons, TextFields
More informationJAVAFX 101 [CON3826]
JAVAFX 101 [CON3826] Alexander Casall sialcasa JavaFX Script 1.0 Script Language Flash Successor 1.3 JavaFX 2.0 Java API OpenJFX JavaFX 8 Classpath 3D API Printing 8.X Accessibility, Controls... F3 Today
More information//Create BorderPane layout manager. layout = new BorderPane(); //This is the "root node".
package ui.layouts.gridpane; import javafx.application.application; import javafx.event.actionevent; import javafx.event.eventhandler; import javafx.geometry.hpos; import javafx.geometry.pos; import javafx.geometry.rectangle2d;
More informationPART ONE CREATING THE BOARD AND MAIN SPRITES
PART ONE CREATING THE BOARD AND MAIN SPRITES SETTING UP THE WINDOW Create a new basic JavaFX application. Use a Group for the main layout. When setting the scene, ensure the basic window is 800 by 600.
More informationChapter 14 JavaFX Basics. Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All rights reserved.
Chapter 14 JavaFX Basics 1 Motivations JavaFX is a new framework for developing Java GUI programs. The JavaFX API is an excellent example of how the object-oriented principle is applied. This chapter serves
More informationcanoo Engineering AG
Gerrit Grunwald canoo Engineering AG Twitter: @hansolo_ blog: harmonic-code.org Agenda history controls scene graph css Java API WebView properties JFXPanel Bindings charts Some History Roadmap What Java
More informationJava FX. Properties and Bindings
Java FX Properties and Bindings Properties : something that holds data data can be simple like an int or complex like a list data structure this data can be used to update other things when it changes
More information1 sur 1 06/12/ :41
ServiceChat.java file:///home/manu/servicechat.html package service; /home/manu/cloudstation/projetsjava/chat/src/java/service/servicechat.java import java.io.*; import java.util.*; import javax.websocket.*;
More informationGraphical User Interfaces
Graphical User Interfaces CSC 1051 Data Structures and Algorithms I Dr. Mary-Angela Papalaskari Department of Computing Sciences Villanova University Course website: http://www.csc.villanova.edu/~map/1051/
More informationJavaFX Basics. Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All rights reserved. 1.
JavaFX Basics rights reserved. 1 Motivations JavaFX is a new framework for developing Java GUI programs. The JavaFX API is an excellent example of how the object-oriented principle is applied. This chapter
More informationGraphical User Interfaces
Graphical User Interfaces CSC 1051 Data Structures and Algorithms I Dr. Mary-Angela Papalaskari Department of Computing Sciences Villanova University Course website: http://www.csc.villanova.edu/~map/1051/
More informationC12: JavaFX Scene Graph, Events, and UI Components
CISC 3120 C12: JavaFX Scene Graph, Events, and UI Components Hui Chen Department of Computer & Information Science CUNY Brooklyn College 3/12/2018 CUNY Brooklyn College 1 Outline Recap and issues JavaFX
More informationThe main method. The program s entry point
The main method The program s entry point A program has to start somewhere You invoke the JVM in order to run a Java application. Typically (at least in our books/courses) from the command line Using the
More informationGrafica e non solo: Java FX
Grafica e non solo: Java FX Creazione di una Applicazione JavaFX public class JavaFXApplica/onTEST extends Applica/on { @Override public void start(stage primarystage) { BuCon btn = new BuCon(); btn.settext("say
More informationJavaFX for oorexx Creating Powerful Portable GUIs for oorexx
JavaFX for oorexx Creating Powerful Portable GUIs for oorexx Rony G. Flatscher (Rony.Flatscher@wu.ac.at), WU Vienna "The 2017 International Rexx Symposium", Amsterdam, The Netherlands April 9 9h 12 th,
More informationC14: JavaFX: Overview and Programming User Interface
CISC 3120 C14: JavaFX: Overview and Programming User Interface Hui Chen Department of Computer & Information Science CUNY Brooklyn College 10/10/2017 CUNY Brooklyn College 1 Outline Recap and issues Architecture
More informationChapter 14 JavaFX Basics. Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All rights reserved.
Chapter 14 JavaFX Basics rights reserved. 1 Motivations JavaFX is a new framework for developing Java GUI programs. The JavaFX API is an excellent example of how the object-oriented principle is applied.
More informationJavaFX Application Structure. Tecniche di Programmazione A.A. 2017/2018
JavaFX Application Structure Tecniche di Programmazione Application structure Introduction to JavaFX Empty JavaFX window public class Main extends Application { @Override public void start(stage stage)
More informationGraphical User Interfaces JavaFX GUI Basics. CSE114, Computer Science I Stony Brook University
Graphical User Interfaces JavaFX GUI Basics CSE114, Computer Science I Stony Brook University http://www.cs.stonybrook.edu/~cse114 GUI Examples 2 GUI Graphical User Interface (GUI) provides user-friendly
More informationAdvanced Java for Bioinformatics Winter 2017/18. Prof. Daniel Huson
Advanced Java for Bioinformatics, WS 17/18, D. Huson, November 8, 2017 1 1 Introduction Advanced Java for Bioinformatics Winter 2017/18 Prof. Daniel Huson Office hours: Thursdays 17-18h (Sand 14, C310a)
More informationIntroduction to JavaFX
3 Introduction to JavaFX Swing has been around for a long time and some very powerful applications and frameworks are written with this library. One of those powerful applications is the NetBeans IDE,
More informationFinal Assignment for CS-0401
Final Assignment for CS-0401 1 Introduction In this assignment you will create a program with an Graphical User Interface that will help customers to decide what car and car features that they want. In
More informationJavaFX. Working with Layouts in JavaFX Release 8 E
JavaFX Working with Layouts in JavaFX Release 8 E50476-01 March 2014 Learn how to use the Layout API and built-in layout panes to lay out the interface for your JavaFX application. JavaFX Working with
More informationBeautiful User Interfaces with JavaFX
Beautiful User Interfaces with JavaFX Systémes d acquisition 3EIB S. Reynal September 20, 2017 The current document is dedicated to giving you a small and quick insight into the JavaFX API, an extra Java
More informationJavaFX for oorexx (Creating Powerful Portable GUIs) Edited:
Institut für Betriebswirtschaftslehre und Wirtschaftsinformatik JavaFX for oorexx (Creating Powerful Portable GUIs) Edited: 2017-11-09 Business Programming 2 Rony G. Flatscher Wirtschaftsuniversität Wien
More informationProctors are unable to respond to queries about the interpretation of exam questions. Do your best to answer exam questions as written.
QUEEN'S UNIVERSITY SCHOOL OF COMPUTING HAND IN Answers Are Recorded on Exam Paper CMPE212, WINTER TERM, 2016 FINAL EXAMINATION 9am to 12pm, 19 APRIL 2016 Instructor: Alan McLeod If the instructor is unavailable
More informationCSCI-142 Exam 2 Review September 25, 2016 Presented by the RIT Computer Science Community
CSCI-142 Exam 2 Review September 25, 2016 Presented by the RIT Computer Science Community http://csc.cs.rit.edu 1. Suppose we are talking about the depth-first search (DFS) algorithm. Nodes are added to
More informationJavaFX. Working with the JavaFX Scene Graph Release 8 E March 2014 Learn about the concept of a scene graph and how it is used in JavaFX.
JavaFX Working with the JavaFX Scene Graph Release 8 E50683-01 March 2014 Learn about the concept of a scene graph and how it is used in JavaFX. JavaFX Working with the JavaFX Scene Graph Release 8 E50683-01
More informationPro JavaFX 2. Weiqi Gao, Ph.D. Stephen Chin. Apress* James L. Weaver. Dean Iverson with Johan Vos, Ph.D.
Pro JavaFX 2 James L. Weaver Weiqi Gao, Ph.D. Stephen Chin Dean Iverson with Johan Vos, Ph.D. Apress* Contents Foreword About the Authors About the Technical Reviewer Acknowledgments xv xvi xviii xix Chapter
More informationGrafica e non solo: Java FX
Grafica e non solo: Java FX Creazione di una Applicazione JavaFX public class JavaFXApplicationTEST extends Application { @Override public void start(stage primarystage) { Button btn = new Button(); btn.settext("say
More informationAnatomy of a GUI (Graphical User Interface) Rony G. Flatscher, WU 2018 International Rexx Symposium
Anatomy of a GUI (Graphical User Interface) Rony G. Flatscher, WU 2018 International Rexx Symposium Overview Interaction with users Windows dependent interactions Platform independent interactions BSF4ooRexx
More information@Override public void start(stage primarystage) throws Exception { Group root = new Group(); Scene scene = new Scene(root);
Intro to Drawing Graphics To draw some simple graphics, we first need to create a window. The easiest way to do this in the current version of Java is to create a JavaFX application. Previous versions
More informationC30c: Model-View-Controller and Writing Larger JavaFX Apps
CISC 3120 C30c: Model-View-Controller and Writing Larger JavaFX Apps Hui Chen Department of Computer & Information Science CUNY Brooklyn College 12/6/2018 CUNY Brooklyn College 1 Outline Model-View-Controller
More informationOracle JavaFX. JavaFX Scene Builder User Guide Release 1.1 E
Oracle JavaFX JavaFX Scene Builder User Guide Release 1.1 E25449-03 October 2013 Oracle JavaFX/JavaFX Scene Builder 1.0 Developer Release E25449-03 Copyright 2012, 2013 Oracle and/or its affiliates. All
More informationChapter 6, Case Study: BallWorld
Chapter 6, Case Study: BallWorld John M. Morrison December 24, 2016 Contents 0 Introduction 1 1 Making our first big app: BallWorld 2 2 Putting Menus in the Window and Getting Started 4 3 Introducing Canvas
More informationWednesday, November 16, 11
1 JavaFX 2.0 Danny Coward Principal Engineer What is JavaFX 2.0 JavaFX is the evolution of the Java rich client platform, designed to address the needs of today s and tomorrow s customers.
More informationJavaFX. Skinning JavaFX Applications with CSS Release 2.2 E
JavaFX Skinning JavaFX Applications with CSS Release 2.2 E20470-06 June 2013 Learn how to skin your JavaFX applications using cascading style sheets (CSS) to create a custom look. JavaFX/Skinning JavaFX
More informationThreads & Timers. CSE260, Computer Science B: Honors Stony Brook University
Threads & Timers CSE260, Computer Science B: Honors Stony Brook University http://www.cs.stonybrook.edu/~cse260 Multi-tasking When you re working, how many different applications do you have open at one
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 informationMaking Apps With JavaFX COMP110 - Lecture 23
Making Apps With JavaFX COMP110 - Lecture 23 COMP110 UTA Applications Have the TAs helped you this semester? Join us and help continue to improve COMP110 in the Spring! Application now open on COMP110.com
More informationGUI in Java TalentHome Solutions
GUI in Java TalentHome Solutions AWT Stands for Abstract Window Toolkit API to develop GUI in java Has some predefined components Platform Dependent Heavy weight To use AWT, import java.awt.* Calculator
More informationJavaFx. Dnes: základné komponenty knižnice JavaFx spracovanie udalostí spôsoby návrhu jednoduchej (pravouhlej) hry
JavaFx Dnes: základné komponenty knižnice JavaFx spracovanie udalostí spôsoby návrhu jednoduchej (pravouhlej) hry Zdroj a literatúra: What Is JavaFX JavaFX 2.0: Introduction by Example Introduction to
More informationJava FX GUI. Pieter van den Hombergh. May 31, Fontys Hogeschool voor Techniek en Logistiek. Java FX GUI. Pieter van den Homb
ergh Fontys Hogeschool voor Techniek en Logistiek May 31, 2016 ergh/fhtenl May 31, 2016 1/10 JAVA FX Application A java fx gui application uses a different way to start. A javafx application extends javafx.application.application
More informationhttps://www.eclipse.org/efxclipse/install.html#for-the-lazy
CSC40232: SOFTWARE ENGINEERING Professor: Jane Cleland Huang Lecture 4: Getting Started with Java FX Wednesday, January 30 th and February 1 st sarec.nd.edu/courses/se2017 Department of Computer Science
More informationGraphical User Interfaces
Graphical User Interfaces CSC 1051 Data Structures and Algorithms I Dr. Mary-Angela Papalaskari Department of Computing Sciences Villanova University Outline Pixels & bits & colors JavaFX Introduction
More informationOpšte. Bolje razdvojena logika od prezentacije Mogućnost korišćenja tema i CSS-a Ujednačen izgled na različitim platformama i uređajima
Java FX Uvod Opšte Biblioteka za rad sa grafičkim komponentama Naslednik starijih tehnologija Swing-a i AWT-a Bolje razdvojena logika od prezentacije Mogućnost korišćenja tema i CSS-a Ujednačen izgled
More informationMultimedia-Programmierung Übung 4
Multimedia-Programmierung Übung 4 Ludwig-Maximilians-Universität München Sommersemester 2012 Ludwig-Maximilians-Universität München Multimedia-Programmierung 4-1 Today Scene Graph and Layouts Interaction
More informationUI CONTROLS. The New World: JavaFX-Technology based UI Controls
UI CONTROLS The New World: JavaFX-Technology based UI Controls UI CONTROLS The New World: JavaFX-Technology based UI Controls US :: THE CREW Richard Bair Amy Fowler Jasper Potts AGENDA :: THE PLAN Controls
More informationJavaFX. Getting Started with JavaFX Scene Builder Release 1.1 E
JavaFX Getting Started with JavaFX Scene Builder Release 1.1 E25448-03 October 2013 JavaFX Getting Started with JavaFX Scene Builder, Release 1.1 E25448-03 Copyright 2012, 2013 Oracle and/or its affiliates.
More information10 Advanced Java for Bioinformatics, WS 17/18, D. Huson, October 26, 2017
10 Advanced Java for Bioinformatics, WS 17/18, D. Huson, October 26, 2017 4 Controls Controls facilitate user input and in JavaFX they extend the class Control. controls: Here are some basic Button CheckBox
More informationProctors are unable to respond to queries about the interpretation of exam questions. Do your best to answer exam questions as written.
QUEEN'S UNIVERSIY SCHOOL O COMPUING HAND IN Answers Are Recorded on Exam Paper CMPE212, WINER ERM, 2016 INAL EXAMINAION 9am to 12pm, 19 APRIL 2016 Instructor: Alan McLeod If the instructor is unavailable
More informationEntwicklung mit JavaFX
Entwicklung mit JavaFX Wolfgang Weigend Sen. Leitender Systemberater Java Technologie und Architektur 1 Copyright 2012 Oracle and/or its affiliates. All rights reserved. Agenda Aktueller Status von JavaFX
More informationJava Programming Layout
Java Programming Layout Alice E. Fischer Feb 22, 2013 Java Programming - Layout... 1/14 Application-Stage-Scene-Pane Basic GUI Construction Java Programming - Layout... 2/14 Application-Stage-Scene Application
More informationHorse in Mo&on. HorseInMo&on
Anima&on in JavaFX Horse in Mo&on HorseInMo&on Horse in Mo&on Esempio di Anima&on public void start(stage primarystage) { final String content = "Animazioni Java FX"; final Text text = new Text(10, 20,
More informationCSS Cascading Style Sheets
CSS Cascading Style Sheets site root index.html about.html services.html stylesheet.css images boris.jpg Types of CSS External Internal Inline External CSS An external style sheet is a text document with
More informationEINFÜHRUNG IN DIE PROGRAMMIERUNG
EINFÜHRUNG IN DIE PROGRAMMIERUNG GRAFIK- UND NETZWERKPROGRAMMIERUNG Tobias Witt 28.03.2014 SWING FENSTER public class Main extends JFrame { public Main() { add(new Board()); settitle("wurm"); setdefaultcloseoperation(exit_on_close);
More informationJavaFX. Embedding Swing Content in JavaFX Applications Release 8.0 Developer Preview E
JavaFX Embedding Swing Content in JavaFX Applications Release 8.0 Developer Preview E41513-01 September 2013 JavaFX /Embedding Swing Content in JavaFX Applications, Release 8.0 Developer Preview E41513-01
More informationJava FX. Threads, Workers and Tasks
Java FX Threads, Workers and Tasks Threads and related topics Lecture Overview...but first lets take a look at a good example of Model - View - Controler set up This and most of the lecture is taken from
More informationProgrammierpraktikum
Programmierpraktikum Claudius Gros, SS2012 Institut für theoretische Physik Goethe-University Frankfurt a.m. 1 of 25 17/01/13 11:45 Swing Graphical User Interface (GUI) 2 of 25 17/01/13 11:45 Graphical
More informationDefinizione dei costru'ori
Costru'ori Definizione dei costru'ori Se per una classe A non scrivo nessun costru'ore, il sistema automa9camente crea il costru'ore A(); Se invece definisco almeno un costru'ore non void, ad es. A(int
More informationInteraktionsprogrammering TDDD13 + TDDC73
Interaktionsprogrammering TDDD13 + TDDC73 Anders Fröberg Outline Questions Project Threads and GUI JavaFX Project Threads JavaFX is the Evolution of Java as a Rich Client Platform. It is designed to provide
More information