Java JOptionPane Kullanımı ve Metodlar

Java’da diyalog penceresi oluşturmak için kullanılan komut JOptionPane komutudur. JOptionPane kullanabilmemiz için package altında JOptionPane kütüphanesini çağırmamız gerekmektedir.

  1. package ornek;
  2. import javax.swing.*; ya da import javax.swing.JOptionPane;

yukarıdaki gibi swing kütüphanesini çağırdıktan sonra JOptionPAne komutunu kullanabiliriz. Aşağıdaki örneklerde kullandığımız iki adet JOptionPane komutu var.

İlk olarak JOptionPane.showMessageDialog komutuna bakalım. Normal bir java programında konsolda mesaj yazdırmak için kullandığımız System.out.print(“Mesaj”); komutuyla aynı işlemi yapar. Tek farkı mesaj konsolde değilde açılan bir pencerede görünür. Kullanımı şöyledir;

  1. JOptionPane.showMessageDialog(null, "Mesaj"); // Açılan pencerede Mesaj yazar.

Diğer kullandığımız komut ise JOptionPane.showInputDialog komutudur. Bu komutta da yine aynı şekilde kullanıcıya bir mesaj gösterilir ve ek olarak kullanıcıdan bir girdi(input) istenir. Basit bir Java programında kullanıcıdan bilgi almak için yapılan 2 adım vardı ve işlemler şöyleydi;
  1. Scanner oku=new Scanner(System.in); // Scanner sınıfı tanıtılmalı..!
  2. String ad;
  3. System.out.println("Adınızı yazınız"); //1. Adım
  4. ad=oku.nextLine(); //2. Adım

JOptionPane.showInputDialog komutunu kullanırsak yukarıdaki kod yerine şöyle yazabiliriz;
  1. String ad;
  2. ad=JOptionPane.showInputDialog("Adınızı yazınız.");

Görüldüğü gibi 4 satırlık kodu 2 satıra indirerek istediğimizi yaptırdık.

JOption kullanılırken dikkat edilmesi gerek bir diğer nokta ise String tipi dışındaki değişkenlerdir. “JOptionPane.showInputDialog” komutu dışarıdan sadece String değişkenleri okur. Dolayısıyla integer, double ya da başka tür değişkenleri okutmak istiyorsak, öncelikle string olarak okutmalı ve daha sonra ilgili değişken tipine dönüştürmeliyiz.

  1. int yas; yas=Integer.ParseInt(JOptionPane.showInputDialog("Yaşınızı yazınız.")); double pi; pi=Double.ParseDouble(JOptionPane.showInputDialog("Pi sayısını yazınız."));

Örnekler;

Kullanıcıdan vize ve final notlarını isteyip ortalamasına göre kullanıcıya bilgi veren program.

  1. package asd;
  2. import javax.swing.*;
  3. public class joption {
  4. /**
  5. * @author ilkerguven
  6. */
  7. public static void main(String[] args) {
  8. String ad;
  9. int vize,fnl;
  10. double ort;
  11. ad=JOptionPane.showInputDialog("Adınızı yazınız");
  12. vize=Integer.parseInt(JOptionPane.showInputDialog(ad+" Vize notunuzu yazınız"));
  13. fnl=Integer.parseInt(JOptionPane.showInputDialog(ad+" Final notunuzu yazınız"));
  14. ort=vize*0.4+fnl*0.6;
  15. if(fnl>=50 && ort>=60 ){
  16. JOptionPane.showMessageDialog(null, ad+" Geçtiniz. Ortalamanız "+ort);
  17. }
  18. else {
  19. JOptionPane.showMessageDialog(null, ad+" Kaldınız. Ortalamanız "+ort);
  20. }
  21. }
  22. }
  23.  

Kullanıcıya adını ve yaşını soran yaşı 18 den büyük ise işlem menüsünü getiren küçük ise işlem yaptırmayan döviz programının metod kullanılmış kodları;
  1. package asd;
  2. import javax.swing.JOptionPane;
  3. public class swtichmetod {
  4. /**
  5. * @author ilkerguven
  6. */
  7. public static void main(String[] args) {
  8. String ad;
  9. int yas,islem;
  10. ad=JOptionPane.showInputDialog("Adınızı yazınız");
  11. yas=Integer.parseInt(JOptionPane.showInputDialog(ad+" Yaşınızı yazınız"));
  12. if(yas<18){
  13. JOptionPane.showMessageDialog(null,ad+" Üzgünüz yaşınız küçük olduğu için işlem yapamazsınız.");
  14. }
  15. else{
  16. islem=Integer.parseInt(JOptionPane.showInputDialog("Yapmak istediğiniz işlemi seçiniz.n1-Dolar bozdurman2-Dolar alma"));
  17. switch(islem){
  18. case 1: dolarsat();break;
  19. case 2: dolaral();break;
  20. }
  21. }
  22. }
  23. public static void dolarsat(){
  24. double dolarkur,miktar,tl;
  25. dolarkur=(2+Math.random());
  26. miktar=Double.parseDouble(JOptionPane.showInputDialog("Bozdurmak isteiğiniz miktarı yazınız"));
  27. tl=dolarkur*miktar;
  28. JOptionPane.showMessageDialog(null," Dolar kuru: "+dolarkur+" miktar: "+miktar+" TL. Alcağınız para: "+tl);
  29. }
  30. public static void dolaral(){
  31. double dolarkur,dolar,tl;
  32. dolarkur=(2+Math.random());
  33. dolar=Double.parseDouble(JOptionPane.showInputDialog("Kaç dolar alacaksınız?"));
  34. tl=dolar*dolarkur;
  35. JOptionPane.showMessageDialog(null," Dolar kuru: "+dolarkur+" Alcağınız dolar: "+dolar+" Ödemeniz gereken TL"+tl);
  36. }
  37. }

İlker GÜVEN

Posted in JAVA and tagged , , , , , , , , , , , , , , , , .

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak.

Güvenlik Sorusu *

Şu HTML etiketlerini ve özelliklerini kullanabilirsiniz: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>