Developing User Interfaces DUI Chris North cs 3724
- Slides: 17
Developing User Interfaces (DUI) Chris North cs 3724: HCI
GUI Development: Goals 1. Learn general GUI programming concepts • • • GUI components Layout Event-based programming Graphics Animation 2. Learn Java • • • Swing Layout managers Listerners 2 D graphics Threads Then: can learn other languages quickly • VB, C#, Xwin, Java 49
Intro to Java
Why Java?
Java materials • Java 2 = sdk 1. 2 or better • http: //java. sun. com/j 2 se/ • Documentation: • http: //java. sun. com/docs/ • Tutorials, reference, API • Borland JBuilder 6 • http: //www. borland. com/jbuilder/personal/ • Free! Cross between VB and VC++
Java differences • • • Basic statements identical to C++ Object-oriented only! No. h files main() is inside a class No global variables No pointers (object references only) No delete: automatic garbage collection Single inheritance only, “interfaces” Applet/application GUI: AWT, Swing Packaging Error Handling, exceptions (try, catch) • E. g. Array bounds checking • Security • Components: beans
Java compiling • Code: • hello. java (text file) • Compile: • javac hello. java • Creates: hello. class (byte code) • Run: • java hello • Java virtual machine, interpets/compiles (machine code) • Packaging: jar • Or use JBuilder, like VC++
Java Applications • Run from command line • hello. java: class hello { public static void main(String[] args){ System. out. println(“Hello World!”); } } • javac hello. java • java hello Hello World!
Typically create objects • hello. java: class hello { public static void main(String[] args){ // Create and use objects hello h = new hello(); … } public hello(){ // Constructor … }
Many Classes • Compile each separately • Can be main( ) in any/all classes • hello. java: class hello { goodbye g; public static void main(String[] args){ … } • goodbye. java: class goodbye { public static void main(String[] args){ … }
Hmmm… • dir hello. class goodbye. class blah. class foo. class bar. class areyouawakein. class • Java ? ? ? • Run. Me. bat: java hello
JBuilder
Java Applets • Run in a web browser • hello. java: import javax. swing. *; class hello extends JApplet { public void init(){ get. Content. Pane(). add( new JLabel(“Hello World!”) ); } } • javac hello. java • appletviewer hello Hello World!
Java Applets in HTML • hello. html: <html><body> <applet code=“hello. class” height=100 width=200> Need java. </applet> </body></html> hello. html • Put hello. html and hello. class on website • Java plug-in Hello World!
Applet Methods • • • init( ) - initialization start( ) - resume processing (e. g. animations) stop( ) - pause destroy( ) - cleanup paint( ) - redraw stuff (‘expose’ event)
Applet Security • • No read/write on client machine Can’t execute programs on client machine Communicate only with server “Java applet window” Warning • Certificates
Upcoming Java Topics • • • GUIs: Swing, AWT, MVC Event handling, listeners Graphics Animation, threads Components, Java. Beans Databases, JDBC
- Chris yano dui
- Dr chris north
- Gulf of execution and evaluation
- Programming graphical user interfaces in r
- Web user interface
- User interfaces design dc
- Why are user interfaces hard to implement
- Cs 3724 vt
- Cs 3724
- Cs 3724
- Cs 3724
- Mỏ cứng như dùi
- Clay abbott
- điện giật dùi đâm dao cắt
- Alabama dui statute
- Bitacoras dui
- Chris north properties
- Single user and multi user operating system