JFrame Componentleri

Bu yazıda bir Java ile bir frame’de nasıl buton ve combobox oluşturacağımıza işleyeceğim.Buton oluşturmaya geçmeden önce JFrame sınıfından biraz bahsetmek istiyorum.JFrame javax.swing  paketinde bulunur.Frame programımızda kullanacağımız buton,combobox gibi componentlerin birarada gösterileceği penceredir.

JFrame ile yapılan işlemler GUI(Graphical User Interface) işlemleridir.GUI işlemleri ayrıca JApplet ile de yapılabilir.Temelde aynı işlevleri gerçekleştirebilen bu iki class arasında önemli fark uygulamalarda farklılık göstermesidir.JFrame desktop uygulamaları için tercih edilirken;JApplet browserda çalışacak uygulamalarda kullanılır.Buton,label,combobox,checkbox gibi componentleri kullanabilmek için oluşturacağımız java sınıfını bu iki sınıftan birinden extend etmemiz gerekiyor.

Bu yazıda penceremize label,buton nasıl ekleyebileceğimizi kodlayacağım.

Öncelikle import etmemiz gereken kütüphaneler

[php]

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

[/php]

Burada java.awt.* paketini componentleri kullanabilmek için import ettik.Bu şekilde paketi import ettikten sonra ayrıca 2.satırdaki event classını belirtmemize gerek yok.Benim özellikle kullanmamdaki amacım event sınıfından bahsetmek.event sınıfı componentlerde yapılan değişikliklere göre işlem yapılmasını sağlayan sınıftır.Örneğin butona tıkladığında ne yapılacağı yada checkboxa tıklandığında hangi işlemlerin gerçekleştirileceğini bu sınıf sayesinde gösterebiliriz.

[php]

class awtexamples extends JFrame{
private JLabel lbl;
private JButton btn;

public awtexamples(){
super("CheckBox");
setLayout(new FlowLayout());
lbl=new JLabel("Renk");
lbl.setBackground(Color.red);
add(lbl);
btn=new JButton("Click me!");
btn.setSize(50,50);
add(btn);

buttonHandler bh=new buttonHandler();
btn.addActionListener(bh);

}

[/php]

Burada Jframe sınıfını extend edip birer tane label ve buton oluşturduk.Sonrasında sınıfımızın constructorını oluşturup super sınıfıyla penceremizin ismini yazdırıyoruz.add(lbl) ile labeli Frame’e eklemiş oluyoruz.Butona tıklandığında yapılacak işlemleri buttonHandler sınıfı ile belirleyeceğiz.buttonHandler sınıfı aşağıdaki gibi olacaktır.

[php]

private class buttonHandler implements ActionListener{
public void actionPerformed(ActionEvent event){
btn.setBackground(Color.red);
lbl.setText("clicked button");
}
}

[/php]

Yukarıda da görüldüğü gibi buttonHandler classımıza ActionListener sınıfını implements ediyoruz.Bunun sebebi sonraki satırda actionPerformed metodunu kullanmamız gerektiğidir. actionPerformed metodu butona tıklandığında neler yapılacağını gösteren metodtur.

Leave a Reply