Boa tarde.
Gostaria de saber como faço um contador que toda vez que eu clicar em um determinado JButton ele me informar o numero. Ex: a primeira vez que eu clicar a parecer o numero 1, a segunda vez 2 e assim por diante.
Não se se é possivel.
Boa tarde.
Gostaria de saber como faço um contador que toda vez que eu clicar em um determinado JButton ele me informar o numero. Ex: a primeira vez que eu clicar a parecer o numero 1, a segunda vez 2 e assim por diante.
Não se se é possivel.
Não, isso não é possivel
LucioSantos1 e Jonas_B_a_r_r_o_s é possível sim fazer um contador para marcar quantas vezes o botão é clicado.
Crie uma variável global do tipo inteiro para cada botão e inicialize-a valendo 0. Crie um evento mouseClicked em cada botão, e na implementação você incrementa o valor do botão.
Segue exemplo:
private int botao1=0;
private int botao2=0;
private int botao3=0;
private int botao4=0;
...
btnBotao1.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent arg0) {
botao1++;
txtBotao1.setText(botao1+"");
}
});
Neste exemplo eu estou exibindo a quantidade de vezes que o botão foi clicado em um JTextField.
Agora é só adaptar no seu código. Espero que seja isso que esteja precisando.
Abraços
Acho que o Jonas_B_a_r_r_o_s precisa aprender a programar… existem INÚMERAS maneiras de fazer isso, uma delas é como o Magalhas explicou…
Exatamente Flavio_Maidl, esta maneira que o Magalhas explicou é simples, pratico e funcional. Ainda mais em JAVA, se não tivesse a possibilidade de fazer esta contagem ai pode abandonar kkkkk
Não isso nao é possivel. É a coisa mais complexa que ja vi
Demorei mas encontrei uma solução:
Eu queria que quando o usuario clicasse em um determinado JMenuItem abrisse uma tela de cadastro e no TextField codigo aparecesse o proximo codigo do usuario.
Ex: Se o codigo do ultimo cliente cadastrado for 57 o proximo seria 58 e assim por diante.
Tela inicial (onde tem os JMenuItem):
boolean consultausuarios(){
boolean ok = true ;
String sql;
sql = "select * from FuncionarioProjeto1";
try{
Statement st = conexao.createStatement();
ResultSet rs = st.executeQuery(sql) ;
while (rs.next()){
cod=Integer.parseInt(rs.getString(1))+1;
Scod=String.valueOf(cod);
}
}catch(Exception erro){
ok = false ;
}
return ok ;
}
// e chamando a ação
boolean ok;
ok=consultausuarios();
Na tela de cadastro:
// Chamando a variavel da outra classe
String Scod= menu.Scod;
Bom dia LucioSantos1,
Neste caso para fazer esta ação, eu utilizaria no SELECT a função max() informando somente o campo do ID
Motivo: toda vez que vc executa o comando select * from FuncionarioProjeto1
vc carrega todas as informações da tabela só pra obter o ultimo id/registro entao, se essa tabela por ventura vier a ter 10mil, 100mil registros, imagine o processamento disso tudo só pra pegar um id?
outro ponto, no seu ResultSet voce percorre registro a registro pra obter a informação que voce deseja.
Vejamos, Voce carrega tabela toda do banco de forma desnecessaria para pegar apenas uma informação e depois voce percorre a tabela toda pra pegar essa referida informação, isso custa muito pra ser uma coisa simples, segue abaixo sugestão:
boolean consultausuarios(){
boolean ok = true ;
String sql;
sql = "select MAX(ID_FUNCIONARIO) from FuncionarioProjeto1";
OU
SELECT ID_FUNCIONARIO FROM FUNCIONARIOPROJETO1 ORDER BY ID_FUNCIONARIO DESC LIMIT 1
try{
Statement st = conexao.createStatement();
ResultSet rs = st.executeQuery(sql) ;
if(rs.first()){
cod=Integer.parseInt(rs.getString(1))+1;
Scod=String.valueOf(cod);
}
}catch(Exception erro){
ok = false ;
}
return ok ;
}
Me diga que isso é ironia…