Java Form Uygulaması

package Hesapla;
public class Hesapla {
public double fin,viz;
public double ort;

public boolean notgir(String pfin,String pviz)
{ double tfin=cevir(pfin),tviz=cevir(pviz);
	if(tfin!=-1&&tviz!=-1)
	{
		fin=tfin;
		viz=tviz;
		nothesapla();
	 return true;
	}
	else
		return false;
}


private double cevir(String not)
{
   double sonuc=0.0;
   try
   {
	sonuc=Double.parseDouble(not);   
     return sonuc; 
   }
   catch(Exception ex)
   {
	   return -1;
	   
   }
}
private void nothesapla()
{
ort=fin*0.6+viz*0.4;
int ort2=(int)(ort*100);
ort=ort2/100.0;
}

}
package main;
import Hesapla.*;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Main implements ActionListener{
    JButton bsil,bekle;
    JList lvize,lfinal,lort;
    DefaultListModel  dlmvize,dlmfinal,dlmort;
    JTextField tvize,tfinal;
    JLabel jlvize,jlfinal,jlort,jlgenel;
	public Main()
	{
		JFrame frm=new JFrame("Hesaplama");
		frm.setSize(600, 600);
		frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//kapanma kutusuna tıkladığımda programın sonlandırılması için
		frm.setLayout(new FlowLayout());//Componentlerin formda nasıl yerleseceği
        
		jlvize=new JLabel("Vize Notu");
		jlvize.setPreferredSize(new Dimension(150,25));
		jlfinal=new JLabel("Final Notu");
		jlfinal.setPreferredSize(new Dimension(150,25));
		jlort=new JLabel("Dersin Ortalaması");
		jlort.setPreferredSize(new Dimension(150,25));
		jlgenel=new JLabel("Genel Ortalama:");
		jlgenel.setPreferredSize(new Dimension(150,25));
		
		//Button
		bsil=new JButton("Sil");
		bsil.setPreferredSize(new Dimension(150,25));
		bsil.addActionListener(this);
		bsil.setActionCommand("sil");
		
		bekle=new JButton("Ekle");
		bekle.setPreferredSize(new Dimension(150,25));
		bekle.addActionListener(this);//Buton dinleyicisi bu sinifdaki  fonksiyonu(actionPerformed) calistir
		bekle.setActionCommand("ekle");//Butona komut ekliyorum ayırt edebilmek için
		
		//JTextField
		tvize=new JTextField();
		tvize.setPreferredSize(new Dimension(150,25));
		tfinal=new JTextField();
		tfinal.setPreferredSize(new Dimension(150,25));
		
		//DefaultListModel
	dlmvize=new DefaultListModel();
	dlmfinal=new DefaultListModel();
	dlmort=new DefaultListModel();
		
		//JListler
	   lvize=new JList(dlmvize);
	   lfinal=new JList(dlmfinal);
	   lort=new JList(dlmort);
		
	   //JScrollPane	  
	   JScrollPane spvize=new JScrollPane(lvize);//Kaydırma çubuğunun çıkması için
	   spvize.setPreferredSize(new Dimension(150,300));
	   JScrollPane spfinal=new JScrollPane(lfinal);
	   spfinal.setPreferredSize(new Dimension(150,300));
	   JScrollPane sport=new JScrollPane(lort);
	   sport.setPreferredSize(new Dimension(150,300));
	   
	   //Panel
	   
	   JPanel anajpn=new JPanel();
	   anajpn.setLayout(new GridLayout(1,3));
	   anajpn.setPreferredSize(new Dimension(450,500));
	   JPanel jpn1=new JPanel();
	   JPanel jpn2=new JPanel();
	   JPanel jpn3=new JPanel();
	  
	   jpn1.add(jlvize);
	   jpn1.add(spvize);
	   jpn1.add(tvize);
	   jpn1.add(bekle);
	   
	   jpn2.add(jlfinal);
	   jpn2.add(spfinal);
	   jpn2.add(tfinal);
	   jpn2.add(bsil);
	  
	   jpn3.add(jlort);
	   jpn3.add(sport);
	   jpn3.add(jlgenel);
	
	   
	   anajpn.add(jpn1);
	   anajpn.add(jpn2);
	   anajpn.add(jpn3);
	   
	  frm.add(anajpn);
	   frm.setVisible(true);
	}
	private void toplamort()
	{
		double genort=0;
		int boyut=dlmort.size();
		for(int i=0;i<boyut;i++)
		{
			try
			{ 
				genort+=Double.parseDouble(dlmort.getElementAt(i)+"");
			}catch(Exception ex)
			{
				
			}
			
		}
		genort/=boyut;
		boyut=(int)(genort*100);
		genort=boyut/100.0; 
		jlgenel.setText("Genel ortalama="+genort);
	}
	
	
	@Override
	public void actionPerformed(ActionEvent arg0) { //Butonlara tıklandıgında bu fonksiyon çalısır
		Hesapla ogr=new Hesapla();
		boolean k=ogr.notgir(tfinal.getText(), tvize.getText());
		int secilen=lvize.getSelectedIndex();
		if(arg0.getActionCommand().equals("ekle")&&k)
	{
			dlmvize.addElement(ogr.viz);
		    dlmfinal.addElement(ogr.fin);
		    dlmort.addElement(ogr.ort);
		    tvize.setText("");
		    tfinal.setText("");
		    toplamort();
	}
		 if(arg0.getActionCommand().equals("sil")&&secilen>-1)
		{
		  dlmvize.remove(secilen);
		  dlmfinal.remove(secilen);
		  dlmort.remove(secilen);
			toplamort();
		}
		
	}
	
	
	public static void main(String[] arg)
{
	new Main();

}

}

 

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir