Nesneye Yönelik Programlama-JAVA (Sflar), Ders sorumlusu Yrd.Doç.Dr.Hilmi KUÇU APPLET APPLET, bir web taray aracyla çalan JAVA programr. Applet s Java.applet paketinde bulunur.
APPLET Bir applet, yap çalmas srasnda gerçekleen 4 olayla olutururur. init() start() stop() Metot Özellik Balangçta oluturulur, balangç sürecinde appletin ihtiyaç duyduu nesneler yaratr. Bu metot grafii yüklemek, dekenlerin balangç deerlerini atamak ve nesneleri oluturmak için kullanr. Applet baladnda çar. Balangç süreci bittii zaman applet çalr. Bu metot, applet durduktan sonra yeniden balatmak için kullanr. Appletin çalmas geçici olarak durdurulacaksa, çar. destroy() Appleti yok etmek için kullanr. Applet yok edildii zaman bellek ilemci zaman ve diske tama alan sisteme geri verilir.
APPLET paint() Bu metot ekran üzerinde satr, metin veya resim gösterir. Türü graphics s olan bir argüman alr. repaint() Bir pencere güncellenecei zaman kullanr. Kullanlan parametre graphics sn bir örneklemesidir. showstatus() Appletler bu metodu kullanarak durum çubuunda bilgi gösterir. Bu metodun gizli parametresi vardr. Applet hakknda herhangi bir bilgi döndürmek için kullan applet n getappletinfo() metodunun üzerine yazabilir.
APPLET
Yazdz java dosyas derleyin, derlediiniz dosyaya ait.class dosyas bir HTML dosyasna gömmeniz gerekir. Bunun için bir HTML dosyas oluturun.
APPLET HTML dosyasna applet gömmek. <applet> tak kullanarak bir Appleti web sayfasna gömmeniz gerekir. Bu takya ait temel 4 parametre vardr. width : appletin sayfa içerisinde görünmesini istediiniz ksmn geniliini ayarlamak için kullanr. Height : appletin sayfa içerisinde görünmesini istediiniz ksmn yüksekliini ayarlamak için kullanr.
APPLET code : eklemek istediiniz appletin(. (.class uzant dosya) ismi uzant ile birlikte yazr. codebase : Appletin bulunduu klasörün tam yolu yazr. <html> <head> <title>ornek1</title> <meta http-equiv="content-type" content="text/html; charset=iso-8859-9"> 9"> </head> <body> <applet code="applet1.class" codebase = "file://c:/beykent_dersleri" width="344" height="266"> </applet> </body> </html>
APPLET JAVA destekleyen herhangi bir web taray ile hazladz HTML dosyas kontrol edebilirsiniz, veya JDK ile birlikte gelen appletviewer arac kullanarak HTML dosyan test edebilirsiniz. Appletviewer n kullan : aplletviewer applet1.html
APPLET Güvenlik ktlamalar : Bir appletin neler yapabilecei ile ilgili youn bir ktlama vardr. Bir java dosyas kullann sistemine zarar veren kodlar içerebilir. Bu nedenle adaki ktlamalar gerçekletirilir. Kullann bilgisayarndaki dosyalar okuyamaz, deteremez ve silemez. Web sayfas(applet dahil) salayan dnda hiçbir internet sitesi ile iletiim kuramaz. Kullann sisteminde hiçbir program çalramaz. Kullann sisteminde tutulan hiçbir program yükleyemez.
APPLET Bir Appletin Yaam döngüsü. creation init start destroy stop
APPLET
APPLET Dizgi-Karakter ve Byte çizme drawstring() drawchars() drawbytes()
APPLET drawstring(string str,int xcoor,int ycoor); Str, yazlacak dizgidir, xcoor, dizginin yazlaca çerçece üzerindeki x koordinatr. ycoor, dizginin yazlaca çerçeve üzerindeki y koordinatr. drawchars(char array[],int offset, int length,int xcoor, int ycoor); Array[], karakter dizisi, Offset, yazlacak karakterlerin balangç pozisyonu, Length, diziden yazlacak karakterlerin say. drawbytes(byte array[], int offset, int length, int xcoor, int ycoor); Array[], byte dizisi.
APPLET
Çizimler Drawline drawoval filloval drawrect fillrect drawraundrect fillraundrect drawpolyline APPLET
APPLET drawline DrawLine(int x,int y,int w,int h) drawoval drawoval(int x,int y,int w, int h) filloval filloval(int x,int y, int w, int h) drawrect drawrect(int x,int y,int w, int h) fillrect fillrect(int x, int y, int w, int h) drawraundrect drawraundrect(int x,int y,int w, int h, int arcw, int arch) fillraundrect fillraundrect(int x,int y, int w, int h, int arcw,int arch) drawpolyline drawpolyline(int xpoints[],int ypoints[],int length)
APPLET
Renkler Eleman Aralk rm 0-255 Yeil 0-255 Mavi 0-255
RGB Deerleri Renk rm Yeil Mavi Beyaz 255 255 255 Açk Gri 192 192 192 Gri 128 128 128 Koyu Gri 64 64 64 Siyah 0 0 0 Pembe 255 175 175 Turuncu 255 200 0 Sar 255 255 0 Mürdüm 255 0 255
Color sn sabitleri color.white color.orange color.lightgray color.red color.blue color.cyan color.black color.gray color.darkgray color.green color.pink color.magenta color.yellow
Font Kontrolü Font, metni farkl formatlarda gösterir. Java.awt awt paketinin salad Font s, çeitli fontlarn kullan salar Bir fontu kullanmadan önce, sistemin onu destekleyip desteklemeini kontrol etmemiz gerekir. getallfont() metodu, sistemin destekledii tüm fontlar döndürür.
Font Kontrolü
Font Kontrolü
Font Kontrolü FontMetric s Height Baseline Ascent Descent Leading
Font Kontrolü Height En uzun font karakterinin büyüklüüdür. Baseline Karakterlerinin tabanlarn (alt çntlar hariç) üzerine yerletirildii çizgi. Ascent Taban çizgisinden karakterin üst üst ksmna kadar olan uzaklk. Descent Taban ksmndan karakterin alt ksmna olan uzaklk Leading Bir sonraki karakteri yerletirmek için gerekli ek boluklar.
Font Kontrolü import java.awt.*; import java.applet.*; public class applet7 extends Applet{ public void paint(graphics g){ Font f=new Font("Verdana",Font.BOLD,10); String s="academy Of Information Technologies"; FontMetrics fm=g.getfontmetrics(f); g.setfont(f); g.drawstring(s,20,10); g.drawstring(string.valueof(fm.getheight()),20,30); g.drawstring(string.valueof(fm.getascent()),20,50); g.drawstring(string.valueof(fm.getdescent()),20,70); g.drawstring(string.valueof(fm.getleading()),20,90); } }
Font Kontrolü Boyama Modu Nesneler boyama modu kümesi kullanlarak çizilir, yeni bir nesne çizildii zaman çizim nesneden önceki içeriin üzerine yazr. Benzer ekilde nesneler tekrar tekrar çizildii zaman, çizim nesnesinin önceki içerii silinir. Sadece yeni içerik gönderilir. Eski ve yeni içerii görünür yapmak için graphics s setxormode(color c) metodunu sunar.
Font Kontrolü import java.awt.*; import java.applet.*; public class applet8 extends Applet{ public void paint(graphics g){ g.setpaintmode(); g.setcolor(color.black); g.fillrect(10,10,100,50); g.setcolor(color.blue); g.fillrect(60,35,100,50); g.setxormode(color.magenta); g.fillrect(10,150,100,50); g.setxormode(color.yellow); g.fillrect(60,175,100,50); } }