java applets pertemuan 7

Post on 19-Jan-2016

81 Views

Category:

Documents

4 Downloads

Preview:

Click to see full reader

DESCRIPTION

Java Applets Pertemuan 7. Matakuliah: M0864/Programming I Tahun: 2009. Learning Outcomes. Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu: menerapkan penggunaan event-driven dan handling event pada pemograman Java. Bina Nusantara. Learning Outcomes. - PowerPoint PPT Presentation

TRANSCRIPT

Java AppletsPertemuan 7

Matakuliah : M0864/Programming ITahun : 2009

Bina Nusantara

Learning Outcomes

Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu:

– menerapkan penggunaan event-driven dan handling event pada pemograman Java.

Bina Nusantara

Learning Outcomes

Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu:

– mendemonstrasikan penggunaan Java Applet dalam sebuah aplikasi pemograman GUI di Java .

Bina Nusantara

Outline Materi

• Introduction• Java Applets• Applets as Application

Introduction

• Graphic User Interface di Web.

• Animasi dan multimedia (gambar dan suara) dari Java di web.

• Contoh yang paling bisa dijumpai game sudoku.

Applet Class

• Java applet menggunakan kelas Applet.

• Sebagai framework yang memungkinkan untuk menjalankan applet dari sebuah web.

• Tidak memiliki fungsi main.

• Semua kelas yang menggunakan Applet wajib menurunkan kelasnya dari java.applet.Applet

Applet Class

• Ketika Applet dijalankan, web browser membuat sebuah instant dari Applet dengan memanggil konstruktor applet yang tidak mengandung argumen atau parameter.

• Untuk mengontrol applet, browser menggunakan fungsi :– init,– start,– stop, dan – destroy

Applet Class

• Fungsi init :– Dipanggil setelah applet dibuat.– Kelas turunannya wajib meng-override fungsi ini.– Biasanya digunakan untuk inisialisasi termasuk setting komponen user

interface.

• Fungsi start :– Dipanggil setelah fungsi init atau setiap kali halaman web dikunjungi.– Menjalankan fungsi-fungsi yang akan dijalankan di applet seperti

animasi.– Kelas turunannya wajib meng-override fungsi ini.

Applet Class

• Fungsi stop :– Dipanggil ketika user meninggalkan halaman web yang

mengandung applet.– Applet menjadi tidak aktif.– Kelas turunannya wajib meng-override fungsi ini.

• Fungsi destroy :– Dipanggil ketika user menutup browser yang mengandung applet.– Semua sumber dan objek objek dihapus.– Dipanggil setelah fungsi stop dijalankan terlebih dahulu.– Kelas turunannya wajib meng-override fungsi ini.

Applet Class• Kerangka kelas turunan yang menggunakan Applet :

Wajib di-override di kelas turunannya

Applet Class

• Kelas Applet tidak dirancang untuk bekerja dengan komponen Swing.

• Untuk menggunakannya pada komponen Swing maka Applet (java.applet.Applet) menurunkan kelasnya pada JApplet (javax.swing.JApplet)

• Layout default dari JApplet : BorderLayout.

Applet Class• Contoh penggunaan JApplet :

– Kelas diatas tidak dapat dijalankan begitu saja karena tidak memiliki fungsi main.

– Harus membuat file HTML dengan menggunakan tag applet <applet> yang mereferensi ke applet tersebut.

– Browser akan secara otomatis akan membuat frame yang menghandel component GUI tersebut, memberi juga ukuran frame tersebut dan membuat frame tersebut tampil (visible).

Applet Class• Contoh ketika Applet dipanggil oleh Web.

Komponen JLabel yang dibuatoleh kelas SampelApplet

Applets as Application

• JApplet merupakan subclass dari kelas Container dan memiliki kesamaan fungsi dengan JFrame, seperti komponen user interfaces, layout managers, dan event-handling yang digunakan.

• Hal-hal yang tidak boleh dilakukan ketika menjalankan Applet:– Tidak diperbolehkan membaca dari, menulis ke sistem file

komputer, karena akan merusak file-file dan menyebarkan virus– Tidak diperbolehkan untuk menjalankan program dari browser,

karena akan merusak sistem lokal komputer.– Tidak diperbolehkan melakukan hubungan antar komputer,

kecuali untuk server dimana applet disimpan.

Applets as Application

• Untuk memanggil Applet sebagai applikasi maka kelas yang menggunakan Applet harus dibuatkan dahulu objeknya pada kelas yang memiliki fungsi main.

• Ada 2 cara menjalankan Applet sebagai applikasi :– Menggunakan kelas yang ada fungsi main.– Melempar String ke Applet dari halaman HTML.

Applets as Application• Contoh penggunaan Applet sebagai aplikasi :

Draw lineimport java.applet.*; import java.awt.*; public class DrawingLines extends Applet { int width, height; public void init() { width = getSize().width; height = getSize().height; setBackground( Color.black ); } public void paint( Graphics g ) { g.setColor( Color.green ); for ( int i = 0; i < 10; ++i ) {

g.drawLine( width, height, i * width / 10, 0 ); } } }

Bina Nusantara University 18

3D graphicsclass Point3D { public int x, y, z; public Point3D( int X, int Y, int Z ) { x = X; y = Y; z = Z; } } class Edge { public int a, b; public Edge( int A, int B ) { a = A; b = B; } }

Bina Nusantara University 19

http://www.dgp.toronto.edu/~mjmcguff/learn/java/11-3d/

Color

Bina Nusantara University 20

public void paint( Graphics g ) { int radius = width / 3; for ( int i = 0; i < N; ++i ) { // Compute (x,y) positions along a circle, // using the sine and cosine of an appropriately computed angle. double angle = 2*Math.PI*i/(double)N; int x = (int)( radius*Math.cos(angle) ); int y = (int)( radius*Math.sin(angle) ); g.setColor( spectrum[ i ] ); g.drawString( "Color", width/2+x, height/2+y ); } }

http://www.dgp.toronto.edu/~mjmcguff/learn/java/03-color/

Keyboard Inputimport java.applet.*; import java.awt.*; import java.awt.event.*; publicclass Keyboard1 extends Applet implements KeyListener,MouseListener { int width, height; int x, y; String s = ""; public void init() { width = getSize().width; height = getSize().height; setBackground( Color.black ); x = width/2; y = height/2; addKeyListener( this ); addMouseListener( this ); }

Bina Nusantara University 21

Keyboard Inputpublic void keyTyped( KeyEvent e ) { char c = e.getKeyChar(); s = s + c; repaint(); e.consume(); } }public void mouseReleased( MouseEvent e ) { } public void mouseClicked( MouseEvent e ) {

x = e.getX(); y = e.getY(); s = ""; repaint(); e.consume(); } public void paint( Graphics g ) { g.setColor( Color.gray ); g.drawLine( x, y, x, y-10 ); g.drawLine( x, y, x+10, y ); g.setColor( Color.green ); g.drawString( s, x, y ); } }

Bina Nusantara University 22

Comboboxpublic class ComboBoxes extends JApplet {private String[] description = { "Ebullient", "Obtuse", "Recalcitrant", "Brilliant", "Somnescent", "Timorous", "Florid", 

"Putrescent" };

  private JTextField t = new JTextField(15);  private JComboBox c = new JComboBox();  private JButton b = new JButton("Add items");  private int count = 0;

  

Bina Nusantara University 23

http://www.java2s.com/Code/Java/Swing-JFC/Usingdropdownlists.htm

Comboboxpublic void init() {

    for (int i = 0; i < 4; i++)      c.addItem(description[count++]);    t.setEditable(false);    b.addActionListener(new ActionListener() {      public void actionPerformed(ActionEvent e) {        if (count < description.length)          c.addItem(description[count++]);} });    c.addActionListener(new ActionListener() {      public void actionPerformed(ActionEvent e) {        t.setText("index: " + c.getSelectedIndex() + "   "            + ((JComboBox) e.getSource()).getSelectedItem());      }  });

Bina Nusantara University 24

comboboxpublic static void main(String[] args) {

    run(new ComboBoxes(), 200, 125);  }

  public static void run(JApplet applet, int width, int height) {    JFrame frame = new JFrame();    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);    frame.getContentPane().add(applet);    frame.setSize(width, height);    applet.init();    applet.start();    frame.setVisible(true);  }} 

Bina Nusantara Universit 25

Tugas PR• Buat Java application sederhana untuk membuka browser

menggunakan Japplet

public void actionPerformed(ActionEvent ae){    Button source = (Button)ae.getSource();    String link = "http://www."+source.getLabel()+".com";    try    {      AppletContext a = getAppletContext();      URL url = new URL(link);      a.showDocument(url,"_blank");    }    catch (MalformedURLException e){      System.out.println(e.getMessage());    }

26http://www.roseindia.net/java/example/java/applet/Opening-new-browser-window-from-Applet.shtml

Bina Nusantara

Referensi

• Introduction to Java. 7ed. 2009. Liang. Chapter 17.• Java Applet

http://en.wikipedia.org/wiki/Java_applet• Applet

http://java.sun.com/applets/

top related