I don't know why this code doesn't work as it should?
I am a newbie in programming so any extra explanation would be very helpful.

Code:
public class Kalkulator {

	public static void main(String[] args) {
		SwingUtilities.invokeLater(new Runnable(){
			public void run()
			{
				JPanel plosca = new Plosca();
				GraficnoOgrodje.ustvariOkno("Kalkulator",plosca,false);
			}
		});

	}
	private static class Plosca extends JPanel implements ActionListener
	{
		private JTextField vpSt1, vpSt2, vpRez;
		private JButton gmPlus,gmMinus,gmDeljeno,gmKrat;
	
		public Plosca()
		{
			setLayout(new FlowLayout());
			
			vpSt1 = new JTextField(7);
			vpSt2 = new JTextField(7);
			vpRez = new JTextField(7);
			JButton gmPlus = new JButton(" + ");
			JButton gmMinus = new JButton(" - ");
			JButton gmKrat = new JButton(" * ");
			JButton gmDeljeno = new JButton(" / ");
			
			add(new JLabel("Stevilka 1"));
			add(vpSt1);
			add(new JLabel("Stevilka 2"));
			add(vpSt2);
			add(new JLabel("Rezultat"));
			add(vpRez);
			add(gmPlus);
			add(gmMinus);
			add(gmKrat);
			add(gmDeljeno);
			
			vpSt1.setHorizontalAlignment(JTextField.RIGHT);
			vpSt2.setHorizontalAlignment(JTextField.RIGHT);
			vpRez.setHorizontalAlignment(JTextField.RIGHT);
			vpRez.setEditable(false);
			
			gmPlus.addActionListener(this);
			gmMinus.addActionListener(this);
			gmKrat.addActionListener(this);
			gmDeljeno.addActionListener(this);
		}
		
			public void actionPerformed(ActionEvent e)
			{
				
				double stev1 = Double.parseDouble(vpSt1.getText());
				double stev2 = Double.parseDouble(vpSt2.getText());
				double rez = 7; 
				
				Object izvor = e.getSource();
				if( izvor == gmPlus )
				{
					rez = stev1 + stev2;
					System.out.println("Hi");
				}
				else if(izvor == gmMinus)
				{
					rez = stev1 - stev2;
				}
				else if(izvor == gmKrat)
				{
					rez = stev1 * stev2;
				}
				else if(izvor == gmDeljeno)
				{
					rez = stev1 / stev2;
				}
				vpRez.setText(Double.toString(rez)); 	
				
			}
	}
	
}