Actions

1 resposta
W

E ae galera … blz!!!

Seguinte … imaginem q eu tenha uma classe de controle , e uma que implementará a interface swing (view). Da classe de controle eu crio um objeto da classe swing

public void mainControl (){
  MyAppView view = new MyAppView();
}

tipo … quando o kra apertar um botao , eu queria implementar o q vai acontecer, dentro da classe de controle , deu pra entender?

è q eu to usando o VEP pra montar a interface grafica , se eu implementar o action pelo VEP , o evento ficará na mesma classe da interface grafica.

Bom … se alguem souber como q eu faço isso …

valeu ae !!!

1 Resposta

W

Opa , consegui fazer … vo colocar o código aki pra ficar documentado … se alguém precisar disso um dia …

import java.awt.Frame;

/**
 * @author Felipe Cunha Palma
 *
 * To change the template for this generated type comment go to
 * Window>Preferences>Java>Code Generation>Code and Comments
 */
public class ControlFrame extends Frame {

	private ControlPanel controlPanel = null;
	
	public static void main(String[] args) {
		ControlFrame cf = new ControlFrame();
		cf.setVisible(true);
		cf.pack();
	}
	
	/**
	 * This is the default constructor
	 */
	public ControlFrame() {
		super();
		initialize();
		initControlPaneListeners();
	}
	/**
	 * This method initializes this
	 * 
	 * @return void
	 */
	private void initialize() {
		java.awt.GridBagConstraints consGridBagConstraints14 = new java.awt.GridBagConstraints();
		consGridBagConstraints14.gridx = 0;
		consGridBagConstraints14.gridy = 0;
		consGridBagConstraints14.anchor = java.awt.GridBagConstraints.NORTHEAST;
		this.setLayout(new java.awt.GridBagLayout());
		this.add(getControlPanel(), consGridBagConstraints14);
		this.setSize(300, 200);
	}
	/**
	 * This method initializes controlPanel
	 * 
	 * @return ControlPanel
	 */
	private ControlPanel getControlPanel() {
		if(controlPanel == null) {
			controlPanel = new ControlPanel();
		}
		return controlPanel;
	}
	private void initControlPaneListeners() {
		controlPanel.addControlListener(new ControlListener() {
		  public void addPerformed() {
		  	addButtonPressed();
		  }
		  public void removePerformed() {
			removeButtonPressed();
		  }
		  public void applyPerformed() {
			applyButtonPressed();
		  }
		  public void savePerformed() {
			saveButtonPressed();
		  }
		  public void resetPerformed() {
			resetButtonPressed();
		  }
		});
	}
	
	public void addButtonPressed() {
		System.out.print("Add pressed");
	}
	public void removeButtonPressed() {
		System.out.print("Remove pressed");
	}
	public void applyButtonPressed() {
		System.out.print("Apply pressed");
	}
	public void saveButtonPressed() {
		System.out.print("Save pressed");
	}
	public void resetButtonPressed() {
		System.out.print("Reset pressed");
	}	
}
/**
 * @author Felipe Cunha Palma
 *
 * To change the template for this generated type comment go to
 * Window>Preferences>Java>Code Generation>Code and Comments
 */
public interface ControlListener {
	
	public void addPerformed();
	
	public void removePerformed();
	
	public void applyPerformed();
	
	public void savePerformed();
	
	public void resetPerformed();
}
/**
 * @author Felipe Cunha Palma 
 *
 * To change the template for this generated type comment go to
 * Window>Preferences>Java>Code Generation>Code and Comments
 */
public class ControlPanel extends Panel {

	private Vector m_vctControlListeners = null;
	private javax.swing.JPanel jPanel = null;
	private javax.swing.JButton jButton1 = null;
	private javax.swing.JButton jButton2 = null;
	private javax.swing.JButton jButton3 = null;
	private javax.swing.JButton jButton4 = null;
	private javax.swing.JButton jButton = null;
	/**
	 * This is the default constructor
	 */
	public ControlPanel() {
		super();
		initialize();
	}
	/**
	 * This method initializes this
	 * 
	 * @return void
	 */
	private void initialize() {
		java.awt.GridBagConstraints consGridBagConstraints13 = new java.awt.GridBagConstraints();
		consGridBagConstraints13.gridx = 0;
		consGridBagConstraints13.gridy = 0;
		consGridBagConstraints13.ipadx = 8;
		consGridBagConstraints13.ipady = 14;
		this.setLayout(new java.awt.GridBagLayout());
		this.add(getJPanel(), consGridBagConstraints13);
		this.setSize(200, 130);
		this.setBackground(new java.awt.Color(204,204,204));
		m_vctControlListeners = new Vector();
	}
	
	public void addControlListener(ControlListener listener) {
		m_vctControlListeners.add(listener);
	}
	
	/**
	 * This method initializes jPanel
	 * 
	 * @return javax.swing.JPanel
	 */
	private javax.swing.JPanel getJPanel() {
		if(jPanel == null) {
			jPanel = new javax.swing.JPanel();
			java.awt.GridBagConstraints consGridBagConstraints8 = new java.awt.GridBagConstraints();
			java.awt.GridBagConstraints consGridBagConstraints9 = new java.awt.GridBagConstraints();
			java.awt.GridBagConstraints consGridBagConstraints10 = new java.awt.GridBagConstraints();
			java.awt.GridBagConstraints consGridBagConstraints12 = new java.awt.GridBagConstraints();
			java.awt.GridBagConstraints consGridBagConstraints11 = new java.awt.GridBagConstraints();
			consGridBagConstraints12.gridx = 0;
			consGridBagConstraints12.gridy = 0;
			consGridBagConstraints12.insets = new java.awt.Insets(0,5,0,5);
			consGridBagConstraints8.gridx = 1;
			consGridBagConstraints8.gridy = 0;
			consGridBagConstraints8.insets = new java.awt.Insets(0,5,0,5);
			consGridBagConstraints10.gridx = 1;
			consGridBagConstraints10.gridy = 1;
			consGridBagConstraints10.insets = new java.awt.Insets(5,0,5,0);
			consGridBagConstraints9.gridx = 0;
			consGridBagConstraints9.gridy = 1;
			consGridBagConstraints9.insets = new java.awt.Insets(5,0,5,0);
			consGridBagConstraints11.gridx = 0;
			consGridBagConstraints11.gridy = 2;
			consGridBagConstraints11.gridwidth = 2;
			jPanel.setLayout(new java.awt.GridBagLayout());
			jPanel.add(getJButton(), consGridBagConstraints12);
			jPanel.add(getJButton1(), consGridBagConstraints8);
			jPanel.add(getJButton2(), consGridBagConstraints9);
			jPanel.add(getJButton3(), consGridBagConstraints10);
			jPanel.add(getJButton4(), consGridBagConstraints11);
			jPanel.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createEtchedBorder(javax.swing.border.EtchedBorder.LOWERED), " ConTrols ", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Exocet", java.awt.Font.PLAIN, 13), null));
		}
		return jPanel;
	}
	/**
	 * This method initializes jButton1
	 * 
	 * @return javax.swing.JButton
	 */
	private javax.swing.JButton getJButton1() {
		if(jButton1 == null) {
			jButton1 = new javax.swing.JButton();
			jButton1.setText("Remove");
			jButton1.setFont(new java.awt.Font("Courier New", java.awt.Font.BOLD, 12));
			jButton1.setPreferredSize(new java.awt.Dimension(80,26));
			jButton1.addActionListener(new java.awt.event.ActionListener() { 
				public void actionPerformed(java.awt.event.ActionEvent e) {    
					ControlListener removeButton = (ControlListener)m_vctControlListeners.elementAt(0);
					removeButton.removePerformed();
				}
			});
		}
		return jButton1;
	}
	/**
	 * This method initializes jButton2
	 * 
	 * @return javax.swing.JButton
	 */
	private javax.swing.JButton getJButton2() {
		if(jButton2 == null) {
			jButton2 = new javax.swing.JButton();
			jButton2.setText("Apply");
			jButton2.setPreferredSize(new java.awt.Dimension(80,26));
			jButton2.setFont(new java.awt.Font("Courier New", java.awt.Font.BOLD, 12));
			jButton2.addActionListener(new java.awt.event.ActionListener() { 
				public void actionPerformed(java.awt.event.ActionEvent e) {    
					ControlListener applyButton = (ControlListener)m_vctControlListeners.elementAt(0);
					applyButton.applyPerformed();
				}
			});
		}
		return jButton2;
	}
	/**
	 * This method initializes jButton3
	 * 
	 * @return javax.swing.JButton
	 */
	private javax.swing.JButton getJButton3() {
		if(jButton3 == null) {
			jButton3 = new javax.swing.JButton();
			jButton3.setText("Save");
			jButton3.setPreferredSize(new java.awt.Dimension(80,26));
			jButton3.setFont(new java.awt.Font("Courier New", java.awt.Font.BOLD, 12));
			jButton3.addActionListener(new java.awt.event.ActionListener() { 
				public void actionPerformed(java.awt.event.ActionEvent e) {    
					ControlListener saveButton = (ControlListener)m_vctControlListeners.elementAt(0);
					saveButton.savePerformed();
				}
			});
		}
		return jButton3;
	}
	/**
	 * This method initializes jButton4
	 * 
	 * @return javax.swing.JButton
	 */
	private javax.swing.JButton getJButton4() {
		if(jButton4 == null) {
			jButton4 = new javax.swing.JButton();
			jButton4.setText("Reset Fields");
			jButton4.setFont(new java.awt.Font("Courier New", java.awt.Font.BOLD, 12));
			jButton4.setPreferredSize(new java.awt.Dimension(118,26));
			jButton4.addActionListener(new java.awt.event.ActionListener() { 
				public void actionPerformed(java.awt.event.ActionEvent e) {    
					ControlListener resetButton = (ControlListener)m_vctControlListeners.elementAt(0);
					resetButton.resetPerformed();
				}
			});
		}
		return jButton4;
	}
	/**
	 * This method initializes jButton
	 * 
	 * @return javax.swing.JButton
	 */
	private javax.swing.JButton getJButton() {
		if(jButton == null) {
			jButton = new javax.swing.JButton();
			jButton.setText("Add");
			jButton.setPreferredSize(new java.awt.Dimension(80,26));
			jButton.setFont(new java.awt.Font("Courier New", java.awt.Font.BOLD, 12));
			jButton.addActionListener(new java.awt.event.ActionListener() { 
				public void actionPerformed(java.awt.event.ActionEvent e) {    
					ControlListener addButton = (ControlListener)m_vctControlListeners.elementAt(0);
					addButton.addPerformed(); 
				}
			});
		}
		return jButton;
	}
}
Criado 24 de junho de 2005
Ultima resposta 25 de jun. de 2005
Respostas 1
Participantes 1