1 / 17

Konsep Abstract Windowing Toolkit (AWT )

Konsep Abstract Windowing Toolkit (AWT ) . Dalam mengembangkan aplikasi GUI, komponen GUI seperti tombol atau textfield diletakkan di dalam kontainer . Berikut ini adalah daftar dari beberapa class penting pada kontainer yang telah disediakan oleh AWT.

lorna
Download Presentation

Konsep Abstract Windowing Toolkit (AWT )

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. KonsepAbstract Windowing Toolkit (AWT)

  2. Dalammengembangkanaplikasi GUI, komponen GUI sepertitombolatautextfielddiletakkandidalamkontainer. Berikutiniadalahdaftardaribeberapa class pentingpadakontaineryang telahdisediakanoleh AWT.

  3. Untukmengaturukuran window, menggunakan method setSize. void setSize(int width, int height) mengubahukurankomponeninidenganwidth dan height sebagai parameter. Default dari window adalahnot visible atautaktampakhinggaAndamengaturvisibility menjaditrue. Inilah syntax untuk method setVisible. void setVisible(boolean b) Dalammendesainaplikasi GUI, Object Frame selaludigunakan. Dibawahiniadalahcontohbagaimanamembuatsebuahaplikasi. import java.awt.*; public class SampleFrame extends Frame { public static void main(String args[]) { SampleFramesf = new SampleFrame(); sf.setSize(100, 100); //Cobahilangkanbarisini sf.setVisible(true); //Cobahilangkanbarisini } }

  4. Komponen AWT

  5. Berikutadalahaplikasimembuatsebuah frame dengankontrol yang telahdimasukkandidalamnya. import java.awt.*; class FrameWControls extends Frame { public static void main(String args[]) { FrameWControlsfwc = new FrameWControls(); fwc.setLayout(new FlowLayout()); fwc.setSize(600, 600); fwc.add(new Button("Test Me!")); fwc.add(new Label("Labe")); fwc.add(new TextField()); CheckboxGroupcbg = new CheckboxGroup(); fwc.add(new Checkbox("chk1", cbg, true)); fwc.add(new Checkbox("chk2", cbg, false)); fwc.add(new Checkbox("chk3", cbg, false)); List list = new List(3, false); list.add("MTV"); list.add("V"); fwc.add(list); Choice chooser = new Choice(); chooser.add("Avril"); chooser.add("Monica"); chooser.add("Britney"); fwc.add(chooser); fwc.add(new Scrollbar()); fwc.setVisible(true); } }

  6. Layout Manager Posisidanukuransuatukomponenditentukanoleh layout manager. Layout manager mengaturtampilandarikomponendidalamkontainer. Berikutinibeberapa layout manager yang terdapat di dalam Java diantaranya: 1. FlowLayout 2. BorderLayout 3. GridLayout 4. dll.

  7. FlowLayoutManager • FlowLayout Manager adalah default manager untuk class Panel dansubclassnya, termasukclass applet. Cara meletakkankomponendariFlowLayout Manager dimulaidarikirikekanandandariataskebawah, dimulaidaripojokkiriatas. SepertipadasaatAndamengetikmenggunakan editor kata pada umumnya. Berikut adalah bagaimana FlowLayout Manager bekerja, dimanamemilikitiga constructor sepertidaftardibawahini. • FLOWLAYOUT CONSTRUCTORS • FlowLayout() • Membuat object baruFlowLayoutdenganposisiditengahdan lima unit horizontal danvertikal gap dimasukkanpadakomponensebagai default. • FlowLayout(int align) • Membuat object baruFlowLayoutdenganposisispesifikdan lima unit horizontal danvertikal gap dimasukkanpadakomponensebagai default. • FlowLayout(int align, inthgap, intvgap) • Membuat object baruFlowLayoutdenganargumenpertamasebagaiposisipadakomponendanhgapuntuk horizontal danvgapuntukvertikalpadakomponen • Gap dapatdikatakansebagaijarakantarakomponendanbiasanyadiukurdengansatuan pixel. Posisiargumenmengikutipenulisansebagaiberikut : • 1.FlowLayout.LEFT • 2.FlowLayout.CENTER • 3.FlowLayout.RIGHT

  8. BorderLayoutManager BorderLayoutmembagikontainermenjadi lima bagiandiantaranyautara, selatan, timur, barat, dantengah. Setiapkomponendimasukkankedalam region yang spesifik. Region utaradanselatanmembentukjalur horizontal sedangkan region timurdanbaratmembentukjalurvertikal. Dan region tengahberadapadaperpotonganjalur horizontal danvertikal. Tampilaniniadalahbersifat default untuk object Window, termasuk object dari subclass Window yaitutipeFrame dan Dialog. CONSTRUCTOR BORDERLAYOUT BorderLayout() Membuat object BorderLayoutbarutanpaspasi yang diaplikasikandiantarakomponenyang berbeda. BorderLayout(inthgap, intvgap) Membuat object BorderLayoutbarudenganspasi unit hgap horizontal dan unit vgapvertikalyang diaplikasikandiantarakomponen yang berbeda.

  9. Untukmenambahkankomponenkedalam region yang spesifik, gunakanmethod menambahkandanmelewatkanduaargumenyaitu : komponen yang ingindimasukkankedalamregion dan region mana yang ingindipakaiuntukmeletakkankomponen. Perludiperhatikanbahwahanyasatukomponen yang dapatdimasukkandalamsatu region. Menambahkan lebih dari satu komponen pada kontainer yang bersangkutan, maka komponen yang terakhir ditambahkan yang akan ditampilkan. Berikut ini adalah daftar dari kelima region. 1. BorderLayout.NORTH 2. BorderLayout.SOUTH 3. BorderLayout.EAST 4. BorderLayout.WEST 5. BorderLayout.CENTER

  10. Berikutiniadalahcontoh program yang menunjukkanbagaimanaBorderLayoutbekerja. import java.awt.*; class BorderLayoutDemo extends Frame { public static void main(String args[]) { BorderLayoutDemobld = new BorderLayoutDemo(); bld.setLayout(new BorderLayout(10, 10)); bld.add(new Button("NORTH"), BorderLayout.NORTH); bld.add(new Button("SOUTH"), BorderLayout.SOUTH); bld.add(new Button("EAST"), BorderLayout.EAST); bld.add(new Button("WEST"), BorderLayout.WEST); bld.add(new Button("CENTER"), BorderLayout.CENTER); bld.setSize(200, 200); bld.setVisible(true); } }

  11. GridLayoutManager DenganGridLayout manager, komponenjugadiposisikandarikirikekanandandariataskebawahsepertipadaFlowLayout manager. GridLayout manager membagikontainermenjadibarisdankolom. Semua region memilikiukuran yang sama. Hal tersebuttidakmempedulikanukuransebenarnyadarikomponen. Berikutiniadalahdaftardari constructor untuk class GridLayout. CONSTRUCTOR GRIDLAYOUT GridLayout() Membuat object GridLayout baru dengan satu baris dan satu kolom sebagai default GridLayout(int rows, int cols) Membuat object GridLayoutbarudenganjumlahbarisdankolomsesuaidengankeinginan GridLayout(int rows, int cols, inthgap, intvgap) Membuat object GridLayoutbarudenganjumlahbarisdankolom yang ditentukan. Unit spasihgaphorizontal danvgapvertikaldiaplikasikankedalamkomponen.

  12. Contoh program : import java.awt.*; class GridLayoutDemo extends Frame { public static void main(String args[]) { GridLayoutDemogld = new GridLayoutDemo(); gld.setLayout(new GridLayout(2, 3, 4, 4)); gld.add(new Button("ONE")); gld.add(new Button("TWO")); gld.add(new Button("THREE")); gld.add(new Button("FOUR")); gld.add(new Button("FIVE")); gld.setSize(200, 200); gld.setVisible(true); } }

  13. Untukmembuattampilan yang lebihlengkap, Andadapatmenggabungkan layout manager yang berbedadenganmenggunakan panel. Ingatlahbahwa panel adalahkontainerdankomponenpadasaat yang sama. Andadapatmemasukkankomponenkedalam panel dankemudianmenambahkan panel kedalam region yang Andainginkandidalamkontainer. Perhatikanteknik yang digunakanpadacontohberikut. import java.awt.*; class ComplexLayout extends Frame { public static void main(String args[]) { ComplexLayoutcl = new ComplexLayout(); Panel panelNorth = new Panel(); Panel panelCenter = new Panel(); Panel panelSouth = new Panel(); /* Panel utara */ //Panel menggunakanFlowLayoutsebagai default panelNorth.add(new Button("ONE")); panelNorth.add(new Button("TWO")); panelNorth.add(new Button("THREE")); /* Panel tengah */ panelCenter.setLayout(new GridLayout(4,4)); panelCenter.add(new TextField("1st")); panelCenter.add(new TextField("2nd")); panelCenter.add(new TextField("3rd")); panelCenter.add(new TextField("4th"));

  14. /* Panel selatan */ panelSouth.setLayout(new BorderLayout()); panelSouth.add(new Checkbox("Choose me!"), BorderLayout.CENTER); panelSouth.add(new Checkbox("I'm here!"), BorderLayout.EAST); panelSouth.add(new Checkbox("Pick me!"), BorderLayout.WEST); /* Menambahkan panel pada container Frame*/ //Frame menggunakanBorderLayoutsebagai default cl.add(panelNorth, BorderLayout.NORTH); cl.add(panelCenter, BorderLayout.CENTER); cl.add(panelSouth, BorderLayout.SOUTH); cl.setSize(300,300); cl.setVisible(true); } }

  15. Berikutiniadalah output dari program.

More Related