Package de.achim.turnier.spielplan

Source Code of de.achim.turnier.spielplan.MyFocusListener

package de.achim.turnier.spielplan;

import java.awt.Component;
import java.awt.Container;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.FocusEvent;
import java.awt.event.FocusListener;
import java.util.Iterator;
import java.util.StringTokenizer;
import java.util.Vector;

import javax.swing.JButton;
import javax.swing.JComponent;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;

import de.achim.turnier.tabellen.TabellenPanel;
import de.achim.turnier.utility.Begegnung;
import de.achim.turnier.utility.MannschaftErgebnis;

public class SpielPanel extends JPanel {
 
  private static final int WIDTH = 400;
  private static final int HEIGHT = 70;

  protected int tore1 = 0;
  protected int tore2 = 0;
  protected String uhrzeit = "12:00";
  protected String datum = "01.01.2010";

  private String mannschaft1 = "";
  private String mannschaft2 = "";
  private Begegnung bg;
  private boolean btnStatus = true;
 
 
  JLabel lblMannschaft1;
  JLabel lblMannschaft2;
  JLabel lbUhrzeit;
 
  JTextField tfTore1;
  JTextField tfTore2;
 
  JLabel lblTrennzeichen = new JLabel(":");
  JLabel lblTrennzeichen2 = new JLabel(":");
  JButton btnOK = new JButton("OK");
 
  TabellenPanel tabelle;
  private JPanel motherPanel;
 
  private String zeilentrenner = ";";
 
  /*
   * constructor
   */
  public SpielPanel(){
   
    setSize(WIDTH, HEIGHT);
    setName("spielpanel");
   
    GridLayout griddy = new GridLayout(0,8);
    setLayout(griddy);
   
    lblMannschaft1 = new JLabel();
    lblMannschaft2 = new JLabel();
    lblMannschaft1.setName("mannschaft1");
    lblMannschaft2.setName("mannschaft2");
    lbUhrzeit = new JLabel(uhrzeit);
    lbUhrzeit.setName("uhrzeit");
   
    tfTore1 = new JTextField("0");
    tfTore2 = new JTextField("0");
    tfTore1.setName("tfTore1");
    tfTore2.setName("tfTore2");
       
    ActionListener alText = new AlTextFieldListener(this);
   
    ActionListener alButton = new AlButtonListener(this);
    ActionListener alButton2 = new AlButtonListener2(this);
    MyFocusListener my = new MyFocusListener(this);
       
    tfTore1.addActionListener(alText);
    tfTore2.addActionListener(alText);
    tfTore1.addFocusListener(my);
    tfTore2.addFocusListener(my);
    tfTore1.setActionCommand("tore1");
    tfTore2.setActionCommand("tore2");
    btnOK.addActionListener(alButton2);
   
    add(lbUhrzeit);
    add(lblMannschaft1);
    add(lblTrennzeichen);
    add(lblMannschaft2);
    add(tfTore1);
    add(lblTrennzeichen2);
    add(tfTore2);
    add(btnOK);

  }
 
  public String getMannschaft1() {
    return mannschaft1;
  }

  public void setMannschaft1(String mannschaft1) {
    this.mannschaft1 = mannschaft1;
    lblMannschaft1.setText(this.mannschaft1);
    revalidate();
  }

  public String getMannschaft2() {
    return mannschaft2;
  }

  public void setMannschaft2(String mannschaft2) {
    this.mannschaft2 = mannschaft2;
    lblMannschaft2.setText(this.mannschaft2);
    revalidate();
  }
 
  public int getTore1() {
    return this.tore1;
  }

  public void setTore1(int tore1) {
    this.tore1 = tore1;
    //tfTore1.setText(String.valueOf(tore1));
    //revalidate();
  }

  public int getTore2() {
    return this.tore2;
  }

  public void setTore2(int tore2) {
    this.tore2 = tore2;
    //tfTore2.setText(String.valueOf(tore2));
    //revalidate();
  }
 
  public void setTabellenPanel(TabellenPanel tabelle){
    if(tabelle!=null)
      this.tabelle = tabelle;
  }
 
  /*
   * noch ein problem hier
   */
  public TabellenPanel getTabellenPanel(){
    return this.tabelle;
  }

  public String getUhrzeit() {
    return uhrzeit;
  }

  public void setUhrzeit(String uhrzeit) {
    this.uhrzeit = uhrzeit;
    lbUhrzeit.setText(uhrzeit);
  }
 
  public String getDatum() {
    return datum;
  }

  public void setDatum(String datum) {
    this.datum = datum;
  }

  @Override
  public String toString(){
   
    StringBuffer sb = new StringBuffer();
    String date = datum + " " + uhrzeit;
    sb.append(lblMannschaft1.getText()).append(zeilentrenner);
    sb.append(lblMannschaft2.getText()).append(zeilentrenner);
    sb.append(tfTore1.getText()).append(zeilentrenner);
    sb.append(tfTore2.getText()).append(zeilentrenner);
    sb.append(date);
    sb.append("\n");
    return sb.toString();
  }

  public void setBegegnung(Begegnung bg) {
    this.bg = bg;
  }

  public Begegnung getBegegnung() {
    return bg;
  }

  public void setBtnStatus(boolean btnStatus) {
    this.btnStatus = btnStatus;
    btnOK.setEnabled(btnStatus);
  }

  public boolean isBtnStatus() {
    return btnStatus;
  }

  public JPanel getMotherPanel() {
    return this.motherPanel;
  }

  public void setMotherPanel(JPanel motherPanel) {
    this.motherPanel = motherPanel;
  }
 
  /*public void initFromFile(String zeile){
    StringTokenizer str = new StringTokenizer(zeile, zeilentrenner);

    lblMannschaft1.setText(str.nextToken());
    lblMannschaft2.setText(str.nextToken());
    tfTore1.setText(str.nextToken());
    tfTore2.setText(str.nextToken());
  }*/
} //ende Spielpanel


class AlTextFieldListener implements ActionListener {
 
  SpielPanel sp;
 
  public AlTextFieldListener(SpielPanel comp){
    this.sp = comp;
  }
 
 
  public void actionPerformed( ActionEvent e ) {
   
    String sTore1;
    String sTore2;

    if(e.getActionCommand().equals("tore1")) {      
      JTextField txtf = (JTextField) e.getSource();
      sTore1 = txtf.getText().trim();
    //  sp.setTore1(Integer.parseInt(sTore1));
      sp.tore1 = Integer.parseInt(sTore1);
      MannschaftErgebnis me1 = new MannschaftErgebnis(sp.getMannschaft1());
      me1.setManschaftTorePlus(new Integer(sTore1));     
    }

    if(e.getActionCommand().equals("tore2")) {
      JTextField txtf = (JTextField) e.getSource();
      sTore2 = txtf.getText().trim();
    //  sp.setTore2(Integer.parseInt(sTore2));
      sp.tore2 = Integer.parseInt(sTore2);
      MannschaftErgebnis me2 = new MannschaftErgebnis(sp.getMannschaft2());
      me2.setManschaftTorePlus(new Integer(sTore2));
    }

  }
 
}

class AlButtonListener implements ActionListener {
 
  private SpielPanel sp;
 
  private int gewinn = 3;
  private int niederlage = 0;
  private int unentschieden = 1;
 
  public AlButtonListener(SpielPanel comp){
    this.sp = comp;
  }
 
  public void actionPerformed( ActionEvent e ) {
   
    MannschaftErgebnis me1 = new MannschaftErgebnis(sp.getMannschaft1());
   
    me1.setManschaftTorePlus(new Integer(sp.tore1))
    me1.setMannschaftToreMinus(new Integer(sp.tore2));
    me1.setMannschaftSpiele(1);
   
    if(sp.getBegegnung() != null){
      Begegnung bg = sp.getBegegnung();
      bg.setToreMannschaft1(sp.tore1);
      bg.setToreMannschaft2(sp.tore2);
      bg.setSpielfertig(true);
    }
   
    if(sp.tore1>sp.tore2)
      me1.setMannschaftPunkte(gewinn);
    else if(sp.tore1<sp.tore2)
      me1.setMannschaftPunkte(niederlage);
    else
      me1.setMannschaftPunkte(unentschieden);
   
    MannschaftErgebnis me2 = new MannschaftErgebnis(sp.getMannschaft2());
    me2.setManschaftTorePlus(new Integer(sp.tore2));
    me2.setMannschaftToreMinus(new Integer(sp.tore1));
    me2.setMannschaftSpiele(1);
    if(sp.tore1>sp.tore2)
      me2.setMannschaftPunkte(niederlage);
    else if(sp.tore1<sp.tore2)
      me2.setMannschaftPunkte(gewinn);
    else
      me2.setMannschaftPunkte(unentschieden);
   
    if(sp.tabelle != null){
      sp.tabelle.addRow(me1);
      sp.tabelle.addRow(me2);
    }
    JButton btn = (JButton)e.getSource();
    btn.setEnabled(false);
  }
 
}

class MyFocusListener implements FocusListener{
 
  SpielPanel sp;
 
  public MyFocusListener(SpielPanel comp){
    sp = comp;
  }

  @Override
  public void focusGained(FocusEvent e) {
   
  }

  @Override
  public void focusLost(FocusEvent e) {
    JTextField t1 =(JTextFielde.getComponent();
    String s1 = t1.getName();
    System.out.println(s1 +  "  "+ t1.getText());
    if(s1.equals("tfTore1"))
      sp.tore1 = Integer.parseInt(t1.getText());
    else
      sp.tore2 = Integer.parseInt(t1.getText());
   
  }
 
}

class AlButtonListener2 implements ActionListener {
 
  private SpielPanel sp;

  public AlButtonListener2(SpielPanel comp){
   
    this.sp = comp;
    System.out.println("+++++++++++++++"+sp.getName());
   
  }
  @Override
  public void actionPerformed(ActionEvent e) {
    SpielPlanPanel spp = (SpielPlanPanel)sp.getMotherPanel();
    spp.updateData(sp);
    JButton btn = (JButton)e.getSource();
    btn.setEnabled(false);
  }
 
}
TOP

Related Classes of de.achim.turnier.spielplan.MyFocusListener

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.