Mistura de Interface gráfica com Métodos dos Componentes

OI PESSOAL,

ESTOU COM UM TRAB. IMPORTANTE PARA ENTREGAR E PRECISO DA AJUDA VCS. Esse é o segundo pgm que eu faço, mas muito diferente do primeiro pq mexe com interface gráfica e código… Ainda falta muita coisa, mas pediria que vcs rodassem (já roda) e olhassem para sugestões, pois ou ter que manipular e a todo momento apagar e escrever na TextArea onde está o triangulo (que na verdade ficou estático por eu ainda não dominar manipulação nos métodos de desenho).
Estou começando a distribuir o layout com os componentes…o que preocupa é que o triangulo não esta amarrado a TextArea, portanto está no frame apesar de aparecer atras da TextArea!!!
Segue então:

import javax.swing.*;
import javax.swing.border.Border;
import java.beans.*;
import java.awt.*;
import java.awt.event.*;
import java.io.Serializable;

public class JogoCoal1 extends JFrame 
implements ActionListener, WindowListener, Serializable {

	private static final long serialVersionUID = 1L;
	
	private JMenuBar barraMenu;
	private JMenu menuJogo;
	private JMenuItem itSobre;
	private JMenuItem itConfigs;
	private JMenuItem itEncerrar;

	private JLabel lpreconfig = new JLabel("Pré-configurações");
	
	String sdescr = ""; 
	
	private JButton bgerconfig = new  JButton ("Gerar Configurações Iniciais");
	
	private JLabel lclickjog = new JLabel("Click em cada jogador para definir a Área de Atuação no Triângulo");
	
	private JButton bjogador1;
	private JButton bjogador2;
	private JButton bjogador3;
	
	// lembrar de por drawRect, drawString para cada jogador e cor no retangulo
		
	private JLabel lformacord = new JLabel("Opções de Acordo: ");
	
	private JLabel ljog12 = new JLabel("Jogador 1 com Jogador 2: ");
	private JLabel lregimput1 = new JLabel("Registro de Imputações: ");
	
	private JLabel lcoord_12 = new JLabel("Enviar posição para o jogador 1");
	// Campo default não-editável
	private JTextField tpos12_X = new JTextField(5);
	// Combobox para jogador 1
	private JComboBox listaA;
	private String opcoes12_Y[]= {"0", "1", "2", "3", "4", "5", "6"}; 
	// Campo para o valor calculado
	private JTextField tpos12_Z = new JTextField(5);
	
	private JLabel lcoord_21 = new JLabel("Enviar posição para o jogador 2");
	// Combobox para jogador 2
	private JComboBox listaB;
	private String opcoes21_X[]= {"1", "2", "3", "4", "5", "6", "7"}; 
	// Campo default não-editável
	private JTextField tpos21_Y = new JTextField(5);
	// Campo para o valor calculado
	private JTextField tpos21_Z = new JTextField(5);

	private JLabel ljog13 = new JLabel("Jogador 1 com Jogador 3: ");
	private JLabel lregimput2 = new JLabel("Registro de Imputações: ");
	private JLabel lcoord_13 = new JLabel("Enviar posição para o jogador 1");
	
	// Campo default não-editável
	private JTextField tpos13_X = new JTextField(5);
	// Combobox para jogador 1 de novo
	private JComboBox listaC;
	private String opcoes13_Y[]= {"0","1", "2", "3", "4", "5", "6"}; 
	// Campo para o valor calculado
	private JTextField tpos13_Z = new JTextField(5);
	
	private JLabel lcoord_31 = new JLabel("Enviar posição para o jogador 3");
	// Combobox para jogador 3 de novo
	private JComboBox listaD;
	private String opcoes13_X[]= {"1", "2", "3", "4", "5", "6", "7"}; 
	// Campo para o valor calculado
	private JTextField tpos31_Y = new JTextField(5);
	// Campo default não-editável
	private JTextField tpos31_Z = new JTextField(5);
	
	private JLabel ljog23 = new JLabel("Jogador 2 com Jogador 3: ");
	private JLabel lregimput3 = new JLabel("Registro de Imputações: ");
	private JLabel lcoord_23 = new JLabel("Enviar posição para o jogador 2");
	
	// Combobox para jogador 2 de novo
	private JComboBox listaE;
	private String opcoes23_X[]= {"1", "2", "3", "4", "5", "6", "7"}; 
	// Campo default não-editável
	private JTextField tpos23_Y = new JTextField(5);
	// Campo para o valor calculado
	private JTextField tpos23_Z = new JTextField(5);
	
	
	private JLabel lcoord_32 = new JLabel("Enviar posição para o jogador 3");
	// Campo para o valor calculado
	private JTextField tpos32_X = new JTextField(5);
	// Combobox para jogador 3 de novo
	private JComboBox listaF;
	private String opcoes32_Y[]= {"0" , "1" , "2", "3", "4", "5", "6"}; 
	// Campo default não-editável
	private JTextField tpos32_Z = new JTextField(5);
	
	private JLabel lhistorico = new JLabel("Histórico de Jogadas");
		
	private JLabel ltriang_1 = new JLabel("1");
	private JLabel ltriang_2 = new JLabel("2");
	private JLabel ltriang_3 = new JLabel("3");
		
	private JLabel lvertice1 = new JLabel("(1, 6, 1)");
	private JLabel lvertice2 = new JLabel("(1, 0, 7)");
	private JLabel lvertice3 = new JLabel("(7, 0, 1)");
	
	private JLabel limput;
	private JLabel ldesenho;
	private JTextArea tareadesenho2;
	private Border borda, borda2;
		
	JPanel painel   = new JPanel();
	JPanel p1       = new JPanel();
	JPanel p2       = new JPanel();
	JPanel p3       = new JPanel();
	JPanel p4       = new JPanel();
	JPanel p5       = new JPanel();
	JPanel p6       = new JPanel();
	JPanel p7       = new JPanel();
	JPanel p8       = new JPanel();
	JPanel p9       = new JPanel();
	JPanel p10      = new JPanel();
	JPanel p11     = new JPanel(new FlowLayout(FlowLayout.CENTER));
	JPanel p12      = new JPanel();
	JPanel p13      = new JPanel();
	JPanel p15      = new JPanel(new BorderLayout());
	JPanel p21      = new JPanel(new BorderLayout());
		
	public JogoCoal1(String JogoCoal1){
			
	   super(JogoCoal1);
	// Barra de Menu	
		barraMenu = new JMenuBar();
		menuJogo = new JMenu("Jogo");
		menuJogo.setMnemonic('J');
		itSobre = new JMenuItem("Sobre...");
		itSobre.setMnemonic('S');
		setJMenuBar(barraMenu);
	
		itSobre.addActionListener(
		  new ActionListener() {
			public void actionPerformed(ActionEvent e)
			{				
				JOptionPane.showMessageDialog(JogoCoal1.this, 
					"É um jogo baseado num triângulo equilátero levando-se em consideração\nos critérios de conjunto vazio e superaditividade identificados no\nconceito de solução Core", 
					"Sobre...", JOptionPane.PLAIN_MESSAGE);
			}
		  }
		);
		menuJogo.add(itSobre);
		
		itConfigs = new JMenuItem("Gerar Configurações Iniciais");
		itConfigs.setMnemonic('G');
		itConfigs.addActionListener(
				new ActionListener(){
					public void actionPerformed(ActionEvent e) {
						System.exit(0);
					}
				}
		);
		menuJogo.add(itConfigs);
		barraMenu.add(menuJogo);
				
		itEncerrar = new JMenuItem("Sair do Jogo");
		itEncerrar.setMnemonic('r');
		itEncerrar.addActionListener(
				new ActionListener(){
					public void actionPerformed(ActionEvent e) {
						System.exit(0);
					}
				}
		);
		menuJogo.add(itEncerrar);
		barraMenu.add(menuJogo);
				
		sdescr += "Três empresas representadas pelos jogadores Arthus, Yan e Chris estão em negociação para juntas implementarem" +
				  "\num projeto que trará benefícios comuns aos três participantes. As três empresas possuirão oito possíveis "   +
				  "\nresultados. Tem-se a indicação de que uma negociação sem jogadores não gera ganho e que sozinhos eles não "  + 
				  "\nsão capazes de implementar o projeto. A solução escolhida para o jogo possui as características definidas "  +
				  "\npor von Neumann e Morgenstern características essas descritas nos axiomas de conjunto vazio e de superaditividade";
		
		Icon bug1 = new ImageIcon("bug1.gif");
		bjogador1 = new JButton("<<< Jogador Arthus >>>", bug1);
		bjogador1.setHorizontalTextPosition(SwingConstants.CENTER);
		bjogador1.setVerticalTextPosition(SwingConstants.BOTTOM);
		bjogador1.setRolloverIcon(bug1);
		bjogador1.addActionListener(this);
		
		Icon bug2 = new ImageIcon("bug2.gif");
		bjogador2 = new JButton("<<< Jogador Yan >>>", bug2);
		bjogador2.setHorizontalTextPosition(SwingConstants.CENTER);
		bjogador2.setVerticalTextPosition(SwingConstants.BOTTOM);
		bjogador2.setRolloverIcon(bug2);
		bjogador2.addActionListener(this);
		
		Icon bug3 = new ImageIcon("bug1.gif");
		bjogador3 = new JButton("<<< Jogador Chris >>>", bug3);
		bjogador3.setHorizontalTextPosition(SwingConstants.CENTER);
		bjogador3.setVerticalTextPosition(SwingConstants.BOTTOM);
		bjogador3.setRolloverIcon(bug3);
		bjogador3.addActionListener(this);
				  
	/*	lcoord_12.setAlignmentX(JComponent.CENTER_ALIGNMENT);
		lista1 = new JComboBox(opcoes1);
		lista1.setMaximumRowCount(7);
		lista1.addActionListener(this);*/
		
		 tareadesenho2 = new JTextArea(48, 30);
		 tareadesenho2.setEditable(false);
		 borda2 = BorderFactory.createLineBorder(Color.blue);
		 tareadesenho2.setBorder(borda2);
		 tareadesenho2.setLineWrap(true);
		 tareadesenho2.setEnabled(false);
		 
		 p5.setLayout(new BoxLayout(p5, BoxLayout.Y_AXIS));
		 p5.add(tareadesenho2);
		 p21.add(p5, "West");
			
		// define os gerenciadores de layout de cada panel
		
		JPanel jmain = new JPanel(); // Principal que contem todos
		jmain.setBackground(Color.LIGHT_GRAY);
		jmain.setLayout(new BorderLayout());
		
		p11.add(bjogador1);
		p11.add(bjogador2);
		p11.add(bjogador3);
		
		p15.add(p11);
		
		jmain.add(p15, "North");
		jmain.add(p21, "Center");
	//	jmain.add(p15, "South");
				
		setContentPane(jmain);
		setVisible(true);
		setSize(650, 650);
				
	}
	
	public void paint(Graphics g) {  
	     
		 super.paint(g);
            
         // Descobre a metade horizontal e a metade vertical  
         int meioHor = 195;  
         int meioVer = 235;  
   
         // Desenha o triangulo na parte inferior da janela da JTextArea  
           
         g.setColor(Color.red);  // lado esquerdo
         g.drawLine(meioHor, meioVer, 30, 471 - 30);  
         g.setColor(Color.black);  
   
         g.setColor(Color.green);  
         g.drawLine(30, 471 - 30, 390 - 30, 471 - 30);// base do triangulo  
         g.setColor(Color.black);  
   
         g.setColor(Color.blue);  // lado direito
         g.drawLine(meioHor, meioVer, 390 - 30, 471 - 30);  
         g.setColor(Color.black);  
         repaint();  
     } 
	 
	public void actionPerformed(ActionEvent event) {
		Object e = event.getSource();
		if(e == bjogador1)
			bjogador1.setBorder(BorderFactory.createLineBorder(Color.red));
		if(e == bjogador2)
			bjogador2.setBorder(BorderFactory.createLineBorder(Color.blue));
		if(e == bjogador3)
			bjogador3.setBorder(BorderFactory.createLineBorder(Color.green));

	}

	
	public void windowActivated(WindowEvent ev) {}
	public void windowClosed(WindowEvent ev) {}
	public void windowClosing(WindowEvent ev) {}
	public void windowDeactivated(WindowEvent ev) {}
	public void windowDeiconified(WindowEvent ev) {}
	public void windowIconified(WindowEvent ev) {}
	public void windowOpened(WindowEvent ev) {}

	
	public static void main(String args[])
	{
		JogoCoal1 app = new JogoCoal1("Jogo Coalizacional entre Três Empresas!");
		
		app.addWindowListener(
				new WindowAdapter(){
					public void windowClosing(WindowEvent e)
					{
						System.exit(0);
					}
				}
			);
	}


}

sds

Só faltou dizer o que o programa tinha que fazer…

Caro Vini,

Eu escrevi o codigo mais ou menos num passo-a-passo então vou lendo o codigo pois o objetivo eu enviei para vc tb pelo google…
Ainda não usei os gerenciadores de layout para arrumar e te confesso to morrendo de medo pq esse triangulo ta solto na tela, não sei o que vai virar…

Assim:
Me passa um email e eu te envio a figura e por ai consigo explicar…!

sds

Desculpe enviei algo meio bagunçado

Segue então:

import javax.swing.*;
import javax.swing.border.Border;
import java.beans.*;
import java.awt.*;
import java.awt.event.*;
import java.io.Serializable;

public class JogoCoal2 extends JFrame 
implements ActionListener, WindowListener, Serializable {

	private static final long serialVersionUID = 1L;
	
	private JMenuBar barraMenu;
	private JMenu menuJogo;
	private JMenuItem itSobre;
	private JMenuItem itEncerrar;

	private JLabel lpreconfig;
	private JButton bgerconfig;
		
	String sdescr = "";
	private JLabel lclickjog;
		
	private JButton bjogador1, bjogador2, bjogador3;
	private JTextField tlegenda1, tlegenda2, tlegenda3;
	private JLabel lesqtri, ldirtri, lbasetri;
				
	private JLabel lformacord;
		
	private JLabel ljog12;
	private JLabel lcoord_12;
	
	// Campo default não-editável
	private JTextField tpos12_X;
	// Combobox para jogador 1
	private JComboBox listaA;
	private String opcoes12_Y[] = {"0", "1", "2", "3", "4", "5", "6"}; 
	// Campo para o valor calculado
	private JTextField tpos12_Z;
		
	private JLabel lcoord_21;
	// Combobox para jogador 2
	private JComboBox listaB;
	private String opcoes21_X[]= {"1", "2", "3", "4", "5", "6", "7"}; 
	// Campo default não-editável
	private JTextField tpos21_Y;
	// Campo para o valor calculado
	private JTextField tpos21_Z;
	
	private JLabel ljog13;
	private JLabel lcoord_13;
	// Campo default não-editável
	private JTextField tpos13_X;
	// Combobox para jogador 1 de novo
	private JComboBox listaC;
	private String opcoes13_Y[]= {"0","1", "2", "3", "4", "5", "6"}; 
	// Campo para o valor calculado
	private JTextField tpos13_Z;
		
	private JLabel lcoord_31;
	// Combobox para jogador 3 de novo
	private JComboBox listaD;
	private String opcoes13_X[]= {"1", "2", "3", "4", "5", "6", "7"}; 
	// Campo para o valor calculado
	private JTextField tpos31_Y;
	// Campo default não-editável
	private JTextField tpos31_Z;
		
	private JLabel ljog23;
	private JLabel lcoord_23;
	// Combobox para jogador 2 de novo
	private JComboBox listaE;
	private String opcoes23_X[]= {"1", "2", "3", "4", "5", "6", "7"}; 
	// Campo default não-editável
	private JTextField tpos23_Y;
	// Campo para o valor calculado
	private JTextField tpos23_Z;
			
	private JLabel lcoord_32;
	// Campo para o valor calculado
	private JTextField tpos32_X;
	// Combobox para jogador 3 de novo
	private JComboBox listaF;
	private String opcoes32_Y[]= {"0" , "1" , "2", "3", "4", "5", "6"}; 
	// Campo default não-editável
	private JTextField tpos32_Z;
		
	private JLabel lhistorico;
	private JLabel ltriang_1, ltriang_2, ltriang_3;
	private JLabel lvertice1, lvertice2, lvertice3;
	private JTextArea tareadesenho2;
	private Border borda, borda2;
	
	private JButton bimput, brodajogo;
	
	JPanel painel   = new JPanel();
	JPanel p1       = new JPanel();
	JPanel p2       = new JPanel();
	JPanel p3       = new JPanel();
	JPanel p4       = new JPanel();
	JPanel p5       = new JPanel();
	JPanel p6       = new JPanel();
	JPanel p7       = new JPanel();
	JPanel p8       = new JPanel();
	JPanel p9       = new JPanel();
	JPanel p10      = new JPanel();
	JPanel p11     = new JPanel(new FlowLayout(FlowLayout.LEFT));
	JPanel p12      = new JPanel();
	JPanel p13      = new JPanel();
	JPanel p15      = new JPanel(new BorderLayout());
	JPanel p21      = new JPanel(new BorderLayout());
		
	public JogoCoal2(String JogoCoal2){
			
	   super(JogoCoal2);
	// Barra de Menu	
		barraMenu = new JMenuBar();
		menuJogo = new JMenu("Jogo");
		menuJogo.setMnemonic('J');
		itSobre = new JMenuItem("Sobre...");
		itSobre.setMnemonic('S');
		setJMenuBar(barraMenu);
	
		itSobre.addActionListener(
		  new ActionListener() {
			public void actionPerformed(ActionEvent e)
			{				
				JOptionPane.showMessageDialog(JogoCoal2.this, 
					"É um jogo baseado num triângulo equilátero levando-se em consideração\nos critérios de conjunto vazio e superaditividade identificados no\nconceito de solução Core", 
					"Sobre...", JOptionPane.PLAIN_MESSAGE);
			}
		  }
		);
		menuJogo.add(itSobre);
					
		itEncerrar = new JMenuItem("Sair do Jogo");
		itEncerrar.setMnemonic('r');
		itEncerrar.addActionListener(
				new ActionListener(){
					public void actionPerformed(ActionEvent e) {
						System.exit(0);
					}
				}
		);
		menuJogo.add(itEncerrar);
		barraMenu.add(menuJogo);
// uso dos gerenciadores apartir daqui
		
		lpreconfig = new JLabel  ("Pré-configurações");
		bgerconfig = new JButton ("Gerar Configurações Iniciais");
		
		sdescr += "Três empresas representadas pelos jogadores Arthus, Yan e Chris estão em negociação para juntas implementarem" +
				  "\num projeto que trará benefícios comuns aos três participantes. As três empresas possuirão oito possíveis "   +
				  "\nresultados. Tem-se a indicação de que uma negociação sem jogadores não gera ganho e que sozinhos eles não "  + 
				  "\nsão capazes de implementar o projeto. A solução escolhida para o jogo possui as características definidas "  +
				  "\npor von Neumann e Morgenstern características essas descritas nos axiomas de conjunto vazio e de superaditividade";
		
		lclickjog = new JLabel("Click em cada jogador para definir a Área de Atuação no Triângulo");
		
		Icon bug1 = new ImageIcon("bug1.gif");
		bjogador1 = new JButton("<<< Jogador Arthus >>>", bug1);
		bjogador1.setHorizontalTextPosition(SwingConstants.CENTER);
		bjogador1.setVerticalTextPosition(SwingConstants.BOTTOM);
		bjogador1.setRolloverIcon(bug1);
		bjogador1.addActionListener(this);
		
		Icon bug2 = new ImageIcon("bug2.gif");
		bjogador2 = new JButton("<<< Jogador Yan >>>", bug2);
		bjogador2.setHorizontalTextPosition(SwingConstants.CENTER);
		bjogador2.setVerticalTextPosition(SwingConstants.BOTTOM);
		bjogador2.setRolloverIcon(bug2);
		bjogador2.addActionListener(this);
		
		Icon bug3 = new ImageIcon("bug1.gif");
		bjogador3 = new JButton("<<< Jogador Chris >>>", bug3);
		bjogador3.setHorizontalTextPosition(SwingConstants.CENTER);
		bjogador3.setVerticalTextPosition(SwingConstants.BOTTOM);
		bjogador3.setRolloverIcon(bug3);
		bjogador3.addActionListener(this);
				  
		tlegenda1  = new JTextField(5);
		lesqtri    = new JLabel("Lado Esquerdo");
		
		tlegenda2  = new JTextField(5);
		ldirtri    = new JLabel("Lado Direito");
		
		tlegenda3  = new JTextField(5);
		lbasetri   = new JLabel("Base do Triângulo");
		
		lformacord = new JLabel("Opções de Coalizão: ");
		
		ljog12     = new JLabel("Jogador 1 com Jogador 2: ");
		lcoord_12  = new JLabel("Enviar posição para o jogador 1");
		tpos12_X   = new JTextField(5);
		listaA     = new JComboBox(opcoes12_Y);
		tpos12_Z   = new JTextField(5);
		lcoord_21  = new JLabel("Enviar posição para o jogador 2");
		listaB     = new JComboBox(opcoes21_X);
		tpos21_Y   = new JTextField(5);
		tpos21_Z   = new JTextField(5);
		
		ljog13     = new JLabel("Jogador 1 com Jogador 3: ");
		lcoord_13  = new JLabel("Enviar posição para o jogador 1");
		tpos13_X   = new JTextField(5);
		listaC     = new JComboBox(opcoes13_Y);
		tpos13_Z   = new JTextField(5);
		lcoord_31  = new JLabel("Enviar posição para o jogador 3");
		listaD     = new JComboBox(opcoes13_X);
		tpos31_Y   = new JTextField(5);
		tpos31_Z   = new JTextField(5);
		
		ljog23     = new JLabel("Jogador 2 com Jogador 3: ");
		lcoord_23  = new JLabel("Enviar posição para o jogador 2");
		listaE     = new JComboBox(opcoes23_X);
		tpos23_Y   = new JTextField(5);
		tpos23_Z   = new JTextField(5);
		lcoord_32  = new JLabel("Enviar posição para o jogador 3");
		tpos32_X   = new JTextField(5);
		listaF     = new JComboBox(opcoes32_Y);
		tpos32_Z = new JTextField(5);
	
		lhistorico = new JLabel("Histórico de Jogadas");
		ltriang_1 = new JLabel("1");
		ltriang_2 = new JLabel("2");
		ltriang_3 = new JLabel("3");
		
		lvertice1 = new JLabel("(1, 6, 1)");
		lvertice2 = new JLabel("(1, 0, 7)");
		lvertice3 = new JLabel("(7, 0, 1)");
						
		tareadesenho2 = new JTextArea(38, 50);
		tareadesenho2.setEditable(false);
		borda2 = BorderFactory.createLineBorder(Color.blue);
		tareadesenho2.setBorder(borda2);
		tareadesenho2.setLineWrap(true);
		tareadesenho2.setEnabled(false);
		 
		p5.setLayout(new BoxLayout(p5, BoxLayout.Y_AXIS));
		p5.add(tareadesenho2);
		p21.add(p5, "West");
		
		// define os gerenciadores de layout de cada panel
		
		JPanel jmain = new JPanel(); // Principal que contem todos
		jmain.setBackground(Color.LIGHT_GRAY);
		jmain.setLayout(new BorderLayout());
		
		p11.add(bjogador1);
		p11.add(bjogador2);
		p11.add(bjogador3);
		
		p15.add(p11);
		
		jmain.add(p15, "North");
		jmain.add(p21, "Center");
	//	jmain.add(p15, "South");
				
		setContentPane(jmain);
		setVisible(true);
		setSize(850, 650);
				
	}
	
	public void paint(Graphics g) {  
	     
		 super.paint(g);
            
         // Metade horizontal e metade vertical  
         int meioHor = 195;  
         int meioVer = 235;  
   
         // Desenha o triangulo na parte inferior da janela da JTextArea  
           
         g.setColor(Color.red);  // lado esquerdo
         g.drawLine(meioHor, meioVer, 30, 471 - 30);  
         g.setColor(Color.black);  
            
         g.setColor(Color.green);  
         g.drawLine(30, 471 - 30, 390 - 30, 471 - 30);// base do triangulo  
         g.setColor(Color.black);  
   
         g.setColor(Color.blue);  // lado direito
         g.drawLine(meioHor, meioVer, 390 - 30, 471 - 30);  
         g.setColor(Color.black);  
         repaint();  
     } 
	 
	public void actionPerformed(ActionEvent event) {
		Object e = event.getSource();
		if(e == bjogador1)
			bjogador1.setBorder(BorderFactory.createLineBorder(Color.red));
		if(e == bjogador2)
			bjogador2.setBorder(BorderFactory.createLineBorder(Color.blue));
		if(e == bjogador3)
			bjogador3.setBorder(BorderFactory.createLineBorder(Color.green));

	}

	
	public void windowActivated(WindowEvent ev) {}
	public void windowClosed(WindowEvent ev) {}
	public void windowClosing(WindowEvent ev) {}
	public void windowDeactivated(WindowEvent ev) {}
	public void windowDeiconified(WindowEvent ev) {}
	public void windowIconified(WindowEvent ev) {}
	public void windowOpened(WindowEvent ev) {}

	
	public static void main(String args[])
	{
		JogoCoal2 app = new JogoCoal2("Jogo Coalizacional entre Três Empresas!");
		
		app.addWindowListener(
				new WindowAdapter(){
					public void windowClosing(WindowEvent e)
					{
						System.exit(0);
					}
				}
			);
	}


}


sds