28 Nisan 2013 Pazar

Java Gui--7(Color)



 

Using Color

    Java ' da renkleri uygulamalarımızda kullanarak daha etkili veya ilgi çekici hale getirebiliriz.Renkler Color sınıfı altında toplanmıştır.Color sınıfı ile “setBackground( )” ve “setForeground( )” gibi metotlarla uygulamanızdaki pencere veya ögelere renk verebilirsiniz.
Bu sınıfı kullanmak için öncelikle import etmeliyiz ardından bir nesne oluşturarak kullanıma başlayabiliriz.

import java.awt.*;

Color renk = new Color( r , g , b );

   Yukarıdaki “Color( r , g , b)” r red , g green ve b de blue’yu temsil eder.Biz sırası ile “r , g ,b” yerlerine “int” olarak değer vererek istediğimiz rengi elde edebiliriz. Verebileceğimiz “int” aralığı ise “0 – 255” olmalıdır.

     Örneğin bir buton oluşturduk ve renklendirmek istiyoruz.O zaman direk “setBackground(Color.RED)” şeklinde de renk verebiliriz.

JButton buton = new Jbutton(“Basma”);

buton.setBackground(Color.CYAN);

Örnek Uygulama


    Oluşturacağımız pencere ve bu pencereye ekleyeceğimiz butonun rengini değiştireceğiz.


import java.awt.*;

import javax.swing.JButton;

import javax.swing.JFrame;



public class ColorDemo extends JFrame{

    Color renk = new Color(100, 1, 100);

    Container con = getContentPane( );

    JButton buton = new JButton("Basma");

   

    public ColorDemo(){

        super("Renk Deneme");

        setLayout(new FlowLayout( ));

        setLocationRelativeTo(null);

        setSize(250, 200);

        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        setVisible(true);

        con.setBackground(renk);

        con.add(buton);

        buton.setBackground(Color.CYAN);

        buton.setForeground(Color.RED);

    }

    public static void main(String[] args) {

        ColorDemo demo = new ColorDemo();

    }

}

Ekran Görüntüsü:


Java Gui--6(getContentPane)




Content Pane


     Bir JFrame ile oluşturulmuş pencere aslında birçok katmandan oluşur. Bunlar İngilizcesi ile aşağıdaki gibidir:


  •         JFrame
  •          Root Pane 
  •          Menu Bar and Content Pane
  •         Glass Pane
     
     Öncelikle bir JFrame pencere oluşturduğumuzda yukarıdakilerin hepsini fark etmeden kullanmış oluyoruz.Burada JFrame ‘ e buton,label.. gibi componentler eklediğimizde aslında bunlar Content Pane ‘ e yerleştirilir.JFrame sınıfını kullanarak “add( ),setLayout( )” gibi metodlarla Content Pane ‘ e direk erişim sağlayabiliriz.Ancak bu şekilde JFrame sınıfını kullanarak bütün metodların Content Pane üzerinde etkili olması beklenemez.Örneğin Content Pane ‘in arka plan rengini “setBackground( )” metodu ile değiştirdiğimizde açılan pencerede hiçbir renk değişikliğinin olmayacağını görürüz. İşte bu gibi durumlarda "getContentPane( )" metodunu kullanabiliriz.Ayrıca bir component eklemek istediğimizde aşağıdaki gibi de ekleyebiliriz.


add(buton1);


Yerine


getContentPane.add(buton1);


Veya


Container con = getContentPane( );

con.add(buton1);

con.add(buton2);

con.add(buton3);


şeklinde kullanabilirsiniz.


Örnek Uygulama



     Bu uygulama ile Content Pane ‘ nin arka plan rengini değiştirmeyi deneyeceğiz.


1.Durumda  “setBackground(Color.yellow)” metodunu kullanarak pencerede herhangi bir değişikliğin olmadığını görüyoruz.


2.Durumda ise arka plan renginin kırmızı olduğunu görüyoruz.

import java.awt.Color;

import java.awt.Container;

import java.awt.FlowLayout;

import javax.swing.JButton;

import javax.swing.JFrame;



public class GetContentPaneDemo extends Jframe{



    Container con = getContentPane( );

    JButton buton = new JButton("Buton");



    public GetContentPaneDemo( ){

        super("Content Pane Demo");

        con.add(buton);

        con.setLayout(new FlowLayout( ));

        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        setSize(200, 200);

        setVisible(true);

        //setBackground(Color.yellow);//1.Durum

        //con.setBackground(Color.red);//2.Durum

    }



    public static void main(String[ ] args) {



        GetContentPaneDemo demo = new GetContentPaneDemo( );



    }

}


Ekran Görüntüleri (Sırası ile 1. Ve 2.Durum)





26 Nisan 2013 Cuma

Java Gui--5(JComboBox)




JComboBox

      JComboBox ' i kullanmak icin önce JComboBox sınıfına ait bir nesne oluşturuyoruz.Daha sonra “addItem( )” metodunu kullanarak JComboBox ' ın içerisine alternatif seçimlerimizi ekliyoruz

JComboBox comboBox = new JComboBox( );

comboBox.addItem("deneme1");




comboBox.addItem("deneme2");




         Ayrıca bir String dizisini de direk olarak JComboBox ' a ekleyebiliriz

String[ ] dersler = {"Matematik","Fizik","Kimya"};

JComboBox comboBox = new JComboBox(dersler);
 





METOD
AMAC
void addItem(Object)
 Listeye yeni öge ekler
void removeItem(Object)
 Listedeki ögeyi siler
void removeAllItems( )
 Listedeki bütün ögeleri siler
int getItemCount( )
 Listedeki ögelerin sayısını dönderir
int getMaximumRowCount( )
Scrool bar(kaydırma çubuğu) kullanmadan en fazla ne kadar satır penceremizde görebilcegimizi
bize "int" olarak dönderir
int getSelectedIndex( )
Secili ögenin kaçıncı sırada olduğunu geri dönderir
Object getSelectedItem( )
Secili ögeyi “object” olarak geri dönderir
void setEnabled(boolean)
Eğer “false” yaparsak JComboBox penceremizde görürüz ancak değiştiremeyiz
void setMaximumRowCount(int)
Bu metot ile JComboBox ' a tıkladığınızda alttaki seçenekleri girdiğiniz “int” değeri adetince gruplayarak görünmesini sağlar
void setSelectedIndex(int)
JComboBox ilk açıldığında hangisinin seçili olacağını ayarlamamızı sağlar


  

Örnek Uygulama

Ekran görüntüsü verilen uygulamanın kodu aşağıdaki gibidir:


import java.awt.FlowLayout;
import javax.swing.JComboBox;
import javax.swing.JFrame;

public class JComboBoxDemo extends JFrame{
   
   
    String[] dersler = {"C#","C","C++","Java"};
    JComboBox comboBox = new JComboBox(dersler);
    public JComboBoxDemo( ){
       
        comboBox.addItem("Php");
        comboBox.setSelectedIndex(3); /*Burada dizinin 3. ogesi secilmistir.Ilk
        program calistiginda "Java" secili olacaktir*/
        //Object x = comboBox.getSelectedItem( );
        add(comboBox);
        //int x = comboBox.getMaximumRowCount( );
        //System.out.println(x);
        setLayout(new FlowLayout( ));
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setSize(200, 200);
        setLocationRelativeTo(null);
        setVisible(true);
    }
    public static void main(String[] args) {
        JComboBoxDemo demo = new JcomboBoxDemo( );
    }
}