Bom dia galera!!!
estou iniciando em java agora, e pra estudar estou montando uma agenda pessoal em java/swt , com o visual editor do eclipse.
gostaria que me ajudassem num problema, mais que ainda não resolvi…
estou criando um botão, na toolbar assim:
e tipo essa variável btExcluir somente funciona dentro dessa função, quando coloco dentro de um listener da tabela, pra quando a pessoa clicar em cima da tabela ela habilitar o o botão.
quando uso ela assim:
esse código ai acima está dentro de outra função , inicializada assim:
Me desculpe a extenção do tópico, mas já tentei de tudo e não consegui. Obrigado!
package com.Agenda;import java.sql.SQLException;
import org.eclipse.swt.graphics.Point; import org.eclipse.swt.widgets.MessageBox; import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Menu; import org.eclipse.swt.SWT; import org.eclipse.swt.widgets.MenuItem; import org.eclipse.swt.widgets.ToolBar; import org.eclipse.swt.widgets.ToolItem; import org.eclipse.swt.graphics.Image; import org.eclipse.swt.custom.CTabFolder; import org.eclipse.swt.widgets.Table; import org.eclipse.swt.custom.CTabItem; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Label; import org.eclipse.swt.widgets.Text;import com.mysql.jdbc.ResultSet;
import com.sun.corba.se.impl.encoding.CodeSetConversion.BTCConverter;public class Agenda {
private Shell sShell = null; // @jve:decl-index=0:visual-constraint="10,10" private Menu menuBar = null; private Menu submenu = null; private Menu submenu1 = null; private ToolBar toolBar = null; private Tabela tabela; private CTabFolder cTabFolder = null; private Table Agenda = null; private Composite Dados = null; private Label lNome = null; private Label lEndereco = null; private Label lBairro = null; private Label lEstado = null; private Label lCep = null; private Label lTelefone = null; private Label lCidade = null; private Text tNome = null; private Text tEndereco = null; private Text tBairro = null; private Text tEstado = null; private Text tCep = null; private Text tTelefone = null; private Text tCidade = null; private Conexao conexao; private ResultSet rs; public Agenda() { super(); // TODO Auto-generated constructor stub } /** * This method initializes toolBar * */ private void createToolBar() { toolBar = new ToolBar(sShell, SWT.NONE); toolBar.setBounds(new org.eclipse.swt.graphics.Rectangle(0,-2,478,24)); ToolItem btSalvar = new ToolItem(toolBar, SWT.PUSH); btSalvar.setToolTipText("Salvar"); btSalvar.setImage(new Image(Display.getCurrent(), getClass().getResourceAsStream("/com/Agenda/imagens/save.gif"))); ToolItem btNovo = new ToolItem(toolBar, SWT.PUSH); btNovo.setToolTipText("Novo"); btNovo.setImage(new Image(Display.getCurrent(), getClass().getResourceAsStream("/com/Agenda/imagens/new.gif"))); ToolItem toolItem = new ToolItem(toolBar, SWT.SEPARATOR); ToolItem btExcluir = new ToolItem(toolBar, SWT.PUSH); btExcluir.setToolTipText("Excluir"); btExcluir.setDisabledImage(new Image(Display.getCurrent(), getClass().getResourceAsStream("/com/Agenda/imagens/delete_des.gif"))); btExcluir.setEnabled(false); btExcluir.setImage(new Image(Display.getCurrent(), getClass().getResourceAsStream("/com/Agenda/imagens/delete.gif"))); } /** * This method initializes cTabFolder * */ private void createCTabFolder() { cTabFolder = new CTabFolder(sShell, SWT.BORDER); cTabFolder.setSelectionBackground(Display.getCurrent().getSystemColor(SWT.COLOR_TITLE_BACKGROUND_GRADIENT)); cTabFolder.setSelectionForeground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE)); cTabFolder.setTabHeight(20); cTabFolder.setSimple(true); createTable(); createComposite(); cTabFolder.setBounds(new org.eclipse.swt.graphics.Rectangle(5,27,474,176)); CTabItem cTabItem = new CTabItem(cTabFolder, SWT.NULL); cTabItem.setText("Agenda"); cTabItem.setImage(new Image(Display.getCurrent(), getClass().getResourceAsStream("/com/Agenda/imagens/agenda.gif"))); cTabItem.setControl(Agenda); CTabItem cTabItem1 = new CTabItem(cTabFolder, SWT.NULL); cTabItem1.setText("Dados"); cTabItem1.setImage(new Image(Display.getCurrent(), getClass().getResourceAsStream("/com/Agenda/imagens/dados.gif"))); cTabItem1.setControl(Dados); } /** * This method initializes table * */ private void createTable() { Agenda = new Table(cTabFolder, SWT.BORDER | SWT.FULL_SELECTION); Agenda.setHeaderVisible(true); Agenda.setLinesVisible(false); String driver="org.gjt.mm.mysql.Driver"; String url="jdbc:mysql://192.168.254.254/agenda"; String user = "java"; String password = "123456"; String query="SELECT Registro,Nome,Telefone FROM registros"; try { tabela = new Tabela(driver,url,user,password,query, Agenda); conexao = new Conexao(); conexao.setConnection(url,user,password,driver); } catch (ClassNotFoundException ce) { MessageBox dialog = new MessageBox(sShell, SWT.ICON_ERROR); dialog.setText("Erro Encontrado"); dialog.setMessage("Driver não encontrado"); dialog.open(); } catch (SQLException sqlex) { MessageBox dialog = new MessageBox(sShell, SWT.ICON_ERROR); dialog.setText("Erro Encontrado"); dialog.setMessage("Erro na SQL"); dialog.open(); } Agenda.addSelectionListener(new org.eclipse.swt.events.SelectionAdapter() { public void widgetSelected(org.eclipse.swt.events.SelectionEvent e) { btExcluir.setEnabled(true); } }); Agenda.addMouseListener(new org.eclipse.swt.events.MouseAdapter() { public void mouseDoubleClick(org.eclipse.swt.events.MouseEvent e) { System.out.println("mouseDoubleClick()"); // TODO Auto-generated Event stub mouseDoubleClick() } }); } /** * This method initializes composite * */ private void createComposite() { Dados = new Composite(cTabFolder, SWT.NONE); lNome = new Label(Dados, SWT.NONE); lNome.setBounds(new org.eclipse.swt.graphics.Rectangle(30,21,33,13)); lNome.setText("Nome:"); lEndereco = new Label(Dados, SWT.NONE); lEndereco.setBounds(new org.eclipse.swt.graphics.Rectangle(12,50,50,13)); lEndereco.setText("Endereço:"); lBairro = new Label(Dados, SWT.NONE); lBairro.setBounds(new org.eclipse.swt.graphics.Rectangle(28,79,34,13)); lBairro.setText("Bairro:"); lEstado = new Label(Dados, SWT.NONE); lEstado.setBounds(new org.eclipse.swt.graphics.Rectangle(23,109,39,13)); lEstado.setText("Estado:"); lCep = new Label(Dados, SWT.NONE); lCep.setBounds(new org.eclipse.swt.graphics.Rectangle(143,110,25,13)); lCep.setText("CEP:"); lTelefone = new Label(Dados, SWT.NONE); lTelefone.setBounds(new org.eclipse.swt.graphics.Rectangle(293,110,48,13)); lTelefone.setText("Telefone:"); lCidade = new Label(Dados, SWT.NONE); lCidade.setBounds(new org.eclipse.swt.graphics.Rectangle(303,79,38,13)); lCidade.setText("Cidade:"); tNome = new Text(Dados, SWT.BORDER); tNome.setBounds(new org.eclipse.swt.graphics.Rectangle(67,19,384,19)); tEndereco = new Text(Dados, SWT.BORDER); tEndereco.setBounds(new org.eclipse.swt.graphics.Rectangle(68,47,382,19)); tBairro = new Text(Dados, SWT.BORDER); tBairro.setBounds(new org.eclipse.swt.graphics.Rectangle(68,77,218,19)); tEstado = new Text(Dados, SWT.BORDER); tEstado.setBounds(new org.eclipse.swt.graphics.Rectangle(68,107,66,19)); tCep = new Text(Dados, SWT.BORDER); tCep.setBounds(new org.eclipse.swt.graphics.Rectangle(170,107,117,19)); tTelefone = new Text(Dados, SWT.BORDER); tTelefone.setBounds(new org.eclipse.swt.graphics.Rectangle(342,107,109,19)); tCidade = new Text(Dados, SWT.BORDER); tCidade.setBounds(new org.eclipse.swt.graphics.Rectangle(341,77,109,19)); } /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub /* Before this is run, be sure to set up the launch configuration (Arguments->VM Arguments) * for the correct SWT library path in order to run with the SWT dlls. * The dlls are located in the SWT plugin jar. * For example, on Windows the Eclipse SWT 3.1 plugin jar is: * installation_directory\plugins\org.eclipse.swt.win32_3.1.0.jar */ Display display = Display.getDefault(); Agenda thisClass = new Agenda(); thisClass.createSShell(); thisClass.sShell.open(); while (!thisClass.sShell.isDisposed()) { if (!display.readAndDispatch()) display.sleep(); } display.dispose(); } /** * This method initializes sShell */ private void createSShell() { sShell = new Shell(); sShell.setText("iAgenda"); sShell.setMaximized(false); createToolBar(); createCTabFolder(); sShell.setSize(new org.eclipse.swt.graphics.Point(492,257)); menuBar = new Menu(sShell, SWT.BAR); MenuItem submenuItem = new MenuItem(menuBar, SWT.CASCADE); submenuItem.setText("&Arquivo"); MenuItem submenuItem1 = new MenuItem(menuBar, SWT.CASCADE); submenuItem1.setText("A&juda"); submenu1 = new Menu(submenuItem1); MenuItem mSobre = new MenuItem(submenu1, SWT.PUSH); mSobre.setText("Sobre"); submenuItem1.setMenu(submenu1); submenu = new Menu(submenuItem); MenuItem mNovo = new MenuItem(submenu, SWT.PUSH); mNovo.setText("Novo\tCtrl+N"); mNovo.setAccelerator(SWT.CONTROL | 'n'); MenuItem mSalvar = new MenuItem(submenu, SWT.PUSH); mSalvar.setText("Salvar\tCtrl+S"); mSalvar.setAccelerator(SWT.CONTROL | 's'); MenuItem separator = new MenuItem(submenu, SWT.SEPARATOR); MenuItem mSair = new MenuItem(submenu, SWT.PUSH); mSair.setText("Sair"); submenuItem.setMenu(submenu); sShell.setMenuBar(menuBar); }}