EDUTIME Java Day 6 Serdar TÜRKEL.

Slides:



Advertisements
Benzer bir sunumlar
Programlama-II (Java ile Bilgisayar Programlama)
Advertisements

Java Programlama Giriş/Çıkış
Activity Ekleme İşlemi
SCANNER SINIFI ve KLAVYEDEN VERİ OKUNMASI
Sık Kullanılan Kontroller
Translated from Sawitch Chapter 13 by Dr. Galip AYDIN
Yığın ve Kuyruk.
Ders İçeriği Bağlantılı Liste İki Yönlü Bağlantılı Liste
Programlama-II (Java ile Bilgisayar Programlama)
OOP UYGULAMA 5.
EDUTIME Java Day 4 Serdar TÜRKEL.
P p 8. Ünitede yinelemeli programlamanın teknikleri anlatılmaktadır. p p Gördüğünüz gibi, yinelemeli programlama bir problemin içinde problemin küçük parçalarını.
BPR152 ALGORİTMA VE PROGRAMLAMA - II
2. VISUAL BASIC PROGRAM YAPISI
P AKET E RIŞIMLERI SıNıFLARıN YENIDEN KULLANıMı. P AKET ( P ACKAGE ) Paketler kütüphaneleri oluşturan elemanlardır. import java.io.BufferedReader; BufferedReader.
Java Programlama Diline Giriş
Java Programlama Koleksiyon(Collection) Sınıfları
Nesneye Yönelik Programlama Dr. Pelin GÖRGEL
EDUTIME applet Day 7 Serdar TÜRKEL.
EDUTIME Java Day 9 Serdar TÜRKEL.
DİZİLER.
P 2. Ünitede Nesneye Dayalı Programlama anlatılıyor. p Nesneye dayalı programlama yeni veri tiplerinin ve bu tipleri işletmek için gereken işlemleri oluşturmayı.
DELEGATE OOP-UYG.
 HTML nin en önemli araçlarından biri de bilgi girişinde kullanılan form kontrolleridir.  Formlar, web sayfası tasarlayan kişi veya şirketlerle internet.
C# Metot Overloading (Aşırı yükleme)
Sorular? Öneriler?. Referanslar Referanslar (Tekrar) Eğer aşağıdaki gibi yazarsak ne olur: int x; double y; char c; ???
Java Sınıf ve Nesne Kavramı UML Gösterimi
SOSYAL BİLGİLER ÖĞRETMENLİĞİ BİLGİSAYAR 2 NOT 2
ÇOK BİÇİMLİLİK POLYMORPHISM
Ajanda Yol Haritamız Grafiksel Kullanıcı Arayüzü -- Genel bakış
APPLET KAVRAMI ve GRAFİK UYGULAMALARI
Görsel Programlama II Ders 4 Öğr.Gör. Mustafa KARABULUT.
Çoklu dallanma seçimi: switch
Kalıtım.
EDUTIME Java Day 8 Serdar TÜRKEL.
Numaralandırmalar(Enumaration)
ETKİLEŞİMLİ TÜRKİYE APPLETİ
Class KahveFincani { public KahveFincani() { System.out.println("KahveFincani..."); } } public class YapilandirciBasitOrnek { public static void main(String[]
JAVA’DA DİZİLER Dr.Galip AYDIN.
Trees, Vectors, Iterators. ADT Abstract Data Type (ADT) vs implementation -Soyut Veri Türleri - Uygulamaları.
Menu ve Toolbar oluşturma
Algoritma ve Programlama BMÜ 112
Ders İçeriği Liste Soyut veri yapısı (ADT)
Sesli Canlandırmalar Hazırlamak Flash çok farklı formatlarda sesleri çalabilme özelliğine sahiptir. Windows işletim sisteminin ses formatı olan.wav, Macintosh.
2.4. Dönüşümlü Resimler (Rollover) Oluşturma
© Copyright by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved. 1 Anahat 4.1 Inventory uygulamasını çalıştırmak 4.2.
İNTERNET PROGRAMCILIĞI I
Visual Basic Windows Programlama.
Bölüm 5 Nesneler ve Metotlar
Bil 102 Bölüm 6 Diziler.
Bil 102 Bölüm 3 Java’da Program Akış Denetimi Bil 1021.
Ders 2- Veri türleri, Karar ve Döngü Yapıları, Görsel Kontröller
JAVA PROGRAMLAMA ORNEKLER
ODTU-SEM Copyright (c) 2011 Kalıtım(Inheritance) Subclass lar tüm method ve attributes larının superclass ından alırlar. Bu işlem için extends keyword.
SINIFLAR ve NESNELER. İlk sınıfımızı ekleyelim class KrediHesap { public ulong HesapNo; public double Limit; public string KartSahibi; }
Mobil Uygulama Geliştirme
Modül 1: Giriş. Genel Bakış Temel.NET kavramları Geliştirme ortamında gezinti Bir C# projesi oluştur Use Visual Studio.NET Veriye eriş Hata ayıkla ve.
Modül 2: Formlar ve Kontroller ile Çalışmak. Programlama Kavramları Formlar ile Çalışmak Kontroller ile Çalışmak Kodu Biçemlemek Genel Bakış Visual Studio.NET.
BSM447 – MOBİL UYGULAMA GELİŞTİRME Öğr. Gör. Nevzat TAŞBAŞI 3. Hafta.
BSM447 – MOBİL UYGULAMA GELİŞTİRME Öğr. Gör. Nevzat TAŞBAŞI 7. Hafta.
BSM447 – MOBİL UYGULAMA GELİŞTİRME Öğr. Gör. Nevzat TAŞBAŞI 6. Hafta.
HTML. Tablo Etiketleri 5 Tablolar sayesinde sayfamızdaki nesnelerin yerleşimini, hizalamasını ve sayfa yapısını istediğimiz şekilde ayarlayabiliriz.
PROGRAMLAMA DİLLERİNE GİRİŞ Ders 9: Genel Kontroller (1)
Formlar, Button, Label, Textbox, Radiobutton, Checkbox
2. VISUAL BASIC PROGRAM YAPISI
ANDROİD STUDİO SAYFA NESNELERİ SAVAŞ TUNÇER
JAVA’DA DİZİLER. Özet  Dizi: belirli sayıda ve aynı veri türünden de ğ işkenlere aynı adla erişilmesini sa ğ layan bir yapıdır.  Dizilerde döngü işlemleri.
Kurucular(Yapıcılar), Yıkıcılar
BLP 4210 PLATFORM BAĞIMSIZ PROGRAMLAMA
Sunum transkripti:

EDUTIME Java Day 6 Serdar TÜRKEL

Konular AWT araçlarının kullanımı Yerleşim Yöneticisi Olayların yönetimi

AWT AWT Abstract Windowing Toolkit (Soyut Pencereleme Araçtakımı) AWT kullanıcı arabirimi yaratmamıza izin veren sınıflar setidir Çekici ve etkili kullanıcı arabirimleri oluşturmayı sağlayan çeşitli parçalar sağlar Kaplar(Containers) Bileşenler(Components) Yerleşim Yöneticilieri (Layout Managers) Grafik ve çizme yetenekleri Fontlar Olaylar(Events)

AWT AWT, sınıflar, arayüzler ve diğer paketlerden oluşur.

Kaplar(Containers) Bileşenlerimizi koyduğumuz yerlerdir. Bileşenleri tutabilir, üzerine çizilebilir ve boyanabilirler Java.awt paketinin ‘Container’ isimli bir sınıf vardır. Bu sınıf, doğrudan veya dolaylı olarak sık kullanılan iki kaptan türer Çerçeveler(Frames) Panolar(Panels)

Çerçeveler Pencerelerden farklıdırlar Pencerelerin alt sınıflarıdırlar Ayrı bir pencere içinde gösterililer ve sınırları vardır. ‘Frame’, bir apletten veya tarayıcıdan bağımsızdır. Oluşturucuları Frame() Frame(String başlık)

Çerçeveler import java.awt.*; class FrameDemo extends Frame { public FrameDemo(String title){ super(title); } public static void main (String args[]) FrameDemo f=new FrameDemo("Ben bir Frame mim"); f.setSize(300,200); f.setVisible(true);

Panel Pencere içinde bulunur Tarayıcının sağladığı pencerede bulunur ve sınırları yoktur. Bileşenleri bir grup olarak kullanmak için kullanılır Panel doğrudan gözükmez, ‘Frame’ eklememiz gerekir. Oluşturucusu Panel()

Panel import java.awt.*; class PanelTest extends Panel { public PanelTest() } public static void main (String args[]) PanelTest p = new PanelTest(); Frame f = new Frame("Testing a Panel"); f.add(p); f.setSize(300,200); f.setVisible(true);

Diyalog(Dialog) Window sınıfının alt sınıfıdır Oluşturucuları Frame myframe = new Frame(“My frame”); String title = “Title”; boolean modal = true; Dialog dlg = new Dialog( myframe, title, modal);

Bileşenler Bileşenler, kullanıcı arayüzü üzerine yerleştirilebilir ve yeniden boytlandırılabilirler. Örnek Textfield, label, checkbox, textarea Scrollbar, scrollpane, dialog

Label String leri göstermek için kullanılır Oluşturucuları Metotları Label(String labeltext) Label(String labeltext, int alignment) Metotları setFont(Font f) setText(String s) getText( )

Label import java.awt.*; class LabelTest extends Frame { Label label1; public LabelTest(String title){ super(title); label1= new Label("Sadece bir Label"); add(label1); } public static void main(String args[]){ LabelTest f = new LabelTest("Label"); f.setSize(300,200); f.show();

TextField İçinde metin gösterilebilen yada girilebilen tek satırlık alanlardır. Oluşturucuları TextField( ) TextField(int columns) TextField(String s) TextField(String s, int columns) Metotları: setEchoChar(char) setTest(String s) getText( ) setEditable(boolean) isEditable( )

TextField import java.awt.*; public class TextField1{ public static void main(String args[]){ Frame f=new Frame("Pencere"); f.setSize(300,300); TextField tf1=new TextField(); TextField tf2=new TextField("Edutime"); TextField tf3=new TextField("edutime",5); TextField tf4=new TextField(5); TextField tf5=new TextField("serdar"); f.setLayout(new FlowLayout()); f.add(tf1); f.add(tf2); f.add(tf3); f.add(tf4); f.add(tf5); f.setVisible(true); }

TextField import java.awt.*; public class TextField1{ public static void main(String args[]){ Frame f=new Frame("Pencere"); f.setSize(300,300); TextField tf=new TextField("Edutime"); tf.setEchoCharacter('a'); //tf.setText("Edutime Bilgi akademisi"); //System.out.println (tf.getText()); /* *if(tf.isEditable()){ System.out.println ("duzenlenebilir"); }else{ System.out.println ("duzenlenemez"); } */ f.add(tf); f.setVisible(true);

TextArea Metinin iki veya daha fazla satır olarak alınacağı durumlarda kullanılır Çok satırlı özelliğe sahip, düzenlenebilen bir alandır. TextArea oluşturmak için gerekli adımlar: Bir eleman oluşturun Sahip olacağı satır ve kolon sayısını belirtin Ekranda yer alacağı yeri belirtin

TextArea (Contd…) Oluşturucuları: TextArea( ) TextArea(int rows, int cols ) TextArea(String text) TextArea(String text, int rows, int cols)

TextArea (Contd…) import java.awt.*; public class textArea1{ public static void main(String args[]){ String metin="edutime bilgi akademisi"; Frame f=new Frame("pencere"); f.setSize(200,300); TextArea alan=new TextArea(metin,10,20); f.add(alan); f.setVisible(true); }

TextArea metotları setText(String) getText( ) setEditable(boolean) isEditable( ) insertText(String, int) replaceText(String, int, int)

TextArea import java.awt.*; public class TextArea2{ public static void main(String args[]){ String metin="edutime bilgi akademisi"; Frame f=new Frame("pencere"); f.setSize(200,300); TextArea alan=new TextArea(metin,10,20); alan.insertText("uuu",3); alan.replaceText("TIME",6,11); f.add(alan); f.setVisible(true); }

Düğme (Button ) Basma yada komut düğmeleri, grafik arayüzlerin önemli parçasıdır Düğme oluşturmak için gerekli adımlar Düğme bileşenini tercihen amacını belirten bir etiket ile oluşturun Ekranda nereye koyacağımıza karar verin Ekranda gösterin Oluştrurucuları: Button( ) Button(String text)

Button import java.awt.*; class ButtonTest extends Frame { Button b1 = new Button("red"); Button b2 = new Button("Green"); Button b3 = new Button("Blue"); public ButtonTest(String title){ super(title); setLayout(new FlowLayout()); add(b1); add(b2); add(b3); } public static void main(String args[]){ ButtonTest f = new ButtonTest("ButtonTest"); f.setSize(300,200); f.show();

Checkbox ve RadioButton Checkbox lar çok seçenekli kullanıcı girdileri için kullanılırlar Radiobutton lar tercihleri belirtmek için kullanılır Checkbox yada radiobutton yaratma için adımlar: Bir eleman yaratın Başlangıç durumunu (seçili veya seçili değil) olarak belirtin Ekrandaki yerini belirtin Ekranda gösterin

Checkbox ve RadioButton Checkbox oluşturmak için oluşturucular:   Checkbox( ) Checkbox(String text) RadioButton oluşturmak için, önce ‘CheckboxGroup’ nesnesini aşağıdaki gibi oluşturmalıyız. CheckboxGroup cg = new CheckboxGroup(); Checkbox erkek= new Checkbox(“erkek”,cg,true); Checkbox kadin= new Checkbox(“kadin”,cg,false)

Checkbox and RadioButton import java.awt.*; class CheckboxTest extends Frame { Label l1 = new Label("CheckBoxes"); Checkbox b1 = new Checkbox("red",true); Checkbox b2 = new Checkbox("Green",true); Checkbox b3 = new Checkbox("Blue",false); Label l2 = new Label("RadioButtons"); CheckboxGroup cg = new CheckboxGroup(); Checkbox erkek= new Checkbox("erkek",cg,false); Checkbox kadin= new Checkbox("kadin",cg,false); public CheckboxTest(String title){ super(title); setLayout(new FlowLayout()); add(l1); add(b1); add(b2); add(b3); add(l2); add(erkek); add(kadin); } public static void main(String args[]){ CheckboxTest f = new CheckboxTest("CheckboxTest"); f.setSize(300,200); f.show();

Tercih(Choice) Listeleri ‘Choice’ sınıfı çoklu öğe listeleri oluşturmamızı sağlar Liste ilk yaratıldığında boştur Tercih listeleri oluşturmak için gereken adımlar: Bir eleman yaratın Öğeleri(String) tek tek ekleyin Ekranda nerede yerleştireceğinize karar verin Ekranda gösterin

Tercih(Choice) Listeleri Örnekler Choice colors=new Choice( ); colors.addItem(“Red”); colors.addItem(“Green”);

Tercih(Choice) Listeleri import java.awt.*; class ChoiceTest extends Frame { Label l1 = new Label("What is your favorite color"); Choice colors = new Choice(); public ChoiceTest(String title){ super(title); setLayout(new FlowLayout()); add(l1); colors.add("White"); colors.add("Red"); colors.add("Orange"); colors.add("Green"); colors.add("Yellow"); colors.add("Blue"); add(colors); } public static void main(String args[]){ ChoiceTest f = new ChoiceTest("ChoiceTest"); f.setSize(300,200); f.show();

Yerleşim Yöneticisi (Layout Manager) Farklı yerleşim türleri vardır: Flow Layout Border Layout Card Layout Grid Layout GridBag Layout Yerleşim yöneticisi ‘setLayout( )’ metodu kullanılarak ayarlanır

FlowLayout Yöneticisi Apletlerin ve panoların varsayılan yerleşim yöneticisdir. Bileşenler, sol üst köşeden sağ alt köşeye kadar yerleştirilir. Oluşturucuları: FlowLayout mylayout = new FlowLayout(); FlowLayout exLayout = new flowLayout(FlowLayout.RIGHT);

BorderLayout Yöneticisi ‘BorderLayout’ yöneticisi, ‘Window’,’Frame’ ve ‘Dialog’ için varsayılan yerleşim yöneticisidir. Bu yerleşim biçimine göre, bir kap içinde en fazla beş parça yerleştirir. Bu parçalar, kuzeye(North), güneye(South), batıya(West), doğuya(East), veya merkeze(Center) yerleştirilebilir

BorderLayout Yöneticisi Example: To add component to North region Button b1= new Button(“North Button”); setLayout(new BorderLayout( )); add(b1, BorderLayout.NORTH);

BorderLayout Yöneticisi import java.awt.*; class BorderLayoutTest extends Frame { Label l1 = new Label("What is your favorite color"); private Button buttons[]; private String names[]={"Hide North","Hide South","Hide east","Hide West", "Hide Center"}; private BorderLayout layout; public BorderLayoutTest(String title){ super(title); layout= new BorderLayout(5,5); setLayout(layout); buttons = new Button[names.length]; int count; for(count = 0; count < names.length;count++){ buttons[count] = new Button(names[count]); } add(buttons[0],BorderLayout.NORTH); add(buttons[1],BorderLayout.SOUTH); add(buttons[2],BorderLayout.EAST); add(buttons[3],BorderLayout.WEST); add(buttons[4],BorderLayout.CENTER); public static void main(String args[]){ BorderLayoutTest f = new BorderLayoutTest("BorderLayoutTest"); f.setSize(300,200); f.show();

CardLayout Yöneticisi Farklı yerşelimlerden oluşan yığın tutabilir Her yerleşim, destedeki bir kart gibidir. Kart, çoğunlukla ‘Panel’ nesnesidir. Düğme gibi ayrı bir bileşen, en üstte gösterilecek kartı kontrol eder.

CardLayout Yöneticisi CardLayout oluşturmak için adımlar: Ana panonun yerleşimini ‘CardLayout’ olarak ayarlıyoruz CardLayout card = new CardLayout(); panelMain.setLayout(card); Diğer panoları ana panoya ekliyoruz panelMain.add(“Kirmizi Pano”, panelOne); panelMain.add(“Mavi Pano”, panelTwo);

CardLayout Yöneticisi

GridLayout Yöneticisi Kabı ızgaralara bölmemizi sağlar. Bileşenler satırlara ve kolonlara yerleştirilir. Her hücre, en az bir bileşen içermelidir. Tüm bileşenler aynı boyutta ise kullanılır Bileşenlerin yerleştirilme sıraları soldan sağa, yukarıdan aşağıyadır Oluşturucusu GridLayout gl = new GridLayout(no. of rows, no. of columns);

GridBagLayout Yöneticisi Bu yerleşimi kullanmak için, her bileşenin boyutunun ve yerleşiminin ne olacağını belirtmelisiniz. ‘GridBagLayoutConstraints’ sınıfı, ‘GridLayout’ sınıfının her bileşeni yerleştirmek ve boyutunu ayarlamak için ihtiyaç duyduğu tüm ilgileri tutar.

Olayların yönetimi Olaylar aşağıdakiler tarafından yönetilirler: Abstract Windowing Toolkit Trayıcı Direkt olarak programcı tarafından yazılan olay yöneticileri(Event Handler) Uygulama, bir olay yöneticisini bir nesneye kaydetmelidir Bu yönetici, ilgili olay nesnede meydana geldiği zaman çağrılacaktır

Olayların yönetimi Olay dinleyici, bir nesnenin oluşturduğu belirli bir olayı dinler Her olay dinleyici, bu olayları yöneten metodları sağlar. Dinleyiciyi gerçekleştiren sınıf, bu metodları tanımlamalıdır.

Olaylar & Karşılık gelen dinleyiciler ActionEvent AdjustmentEvent ComponentEvent FocusEvent ItemEvent WindowEvent TextEvent MouseEvent KeyEvent ActionListener AdjustmentListener ComponentListener FocusListener ItemListener WindowListener TextListener MouseListener MouseMotionListener KeyListener

Event paketi sınıf hiyerarşisi

Dinleyici Arayüz Hiyerarşisi

ActionListener

ItemListener

WindowListener

Component Sınıfının Dinleyicileri

Menuüler Menü çeşitleri : Frame de sadece bir menü bar olabilir Pull-down Pop-up menü Frame de sadece bir menü bar olabilir Menünün bileşenleri: Menubar MenuItems