Não consigo fazer com que o DBListBox mostre o resultado do meu ResultSet. Alguem seria capaz de me mostrar o que esta errado no código abaixo?
[]'s :)
import waba.ui.*;
import superwaba.ext.xplat.sql.pdb.pdbx.*;
import superwaba.ext.xplat.ui.db.*;
/**
* @author afb
*
* TODO To change the template for this generated type comment go to
* Window - Preferences - Java - Code Style - Code Templates
*/
public class Foda extends MainWindow
{
PDBDriver driver;
DBListBox lb;
ResultSet rs;
Button btnInserir, btnBuscar;
Edit edtNome;
MenuBar menu;
public Foda()
{
super("Testando BDListBox", TAB_ONLY_BORDER);
}
public void onStart()
{
String col0[] =
{
"Arquivo",
"Sair",
};
setMenuBar(menu = new MenuBar(new String[][]{col0}));
Container main = new Container();
main.setRect(getClientRect());
main.add(edtNome = new Edit("000000000000000000000000000"), LEFT + 20, TOP + 5);
main.add(btnInserir = new Button(" Inserir "), SAME , AFTER + 5);
main.add(btnBuscar = new Button(" Buscar "), AFTER + 120, SAME);
main.add(lb = new DBListBox());
lb.setRect(20, 70, 285, 215);
lb.setDisplayCol(1);
swap(main);
openTable();
}
public void openTable()
{
driver = new PDBDriver("Test");
if(!driver.exists("PESSOAS"))
{
driver.execute("create table PESSOAS( NOME CHAR(30))");
driver.execute("CREATE INDEX IDX_NOME ON PESSOAS(NOME)");
}
}
public void onEvent(Event event)
{
if(event.type == ControlEvent.WINDOW_CLOSED)
{
switch(menu.getSelectedMenuItem())
{
case 001:
exit(0);
break;
default: break;
}
}
if(event.type == ControlEvent.PRESSED)
{
if(event.target == btnInserir)
{
driver.executeUpdate("insert into PESSOAS (NOME) " +
"values ('" + edtNome.getText() + "')");
edtNome.setText("");
}
if(event.type == ControlEvent.PRESSED)
{
lb.removeAll();
rs = driver.executeQuery("select * from PESSOAS");
while(rs.next())
lb.add(rs.getString("NOME"));
}
}
}
}