Como faço a comparação de um objeto da classe JTextField?
Tipo assim eu criei um objeto assim:
JTextField textol = new JTextField();
Ai inseri este objeto dentro de uma janela.
Eu tenho que fazer o seguinte eu quero comparar o que o usuário digitar dentro deste objeto(textol) com uma string ou um número, usando um if, tipo assim se o que estiver dentro do objeto for igual ao que o usuário digitou ele irá para o próximo ponto de execução do programa caso contrário não fará nada.
Para pegar o conteudo digitado em seu TextField, utilize o método getText().
Para aplica-lo no IF, basta fazer:
if ("String_Comparada".equals(seutextfield.getText())) {
}
Tchauzin!
MarcioCasteloBranco
O exemplo da lina e legal, o do JonnyStayle também so que se vc for comparar string com equals vai funcionar, e com objetos neste caso Jtextfield vc terá que sobrescrever o equals e o hashcode .
Não dá certo, porque você espera que o comando abaixo realize alguma ação
botaol.addActionListener(newClicado());
mas, como já disse, ele apenas indica que existe uma rotina de evento. Sua utilização normal é no processo de instanciação do botão.
Se você quer executar ações como se o botaol tivesse sido clicado, transcreva essas ações (que estão no procedimento Clicado) para o procedimento ProcessaDados e, lá no procedimento Clicado chame o procedimento ProcessaDados. Algo como:
ActionListenerClicado=newActionListener(){publicvoidactionPerformed(ActionEventactionEvent){processaDados();}};privatevoidProcessaDados(){// fazer algo com o que foi digitadoJOptionPane.showMessageDialog(null,"Você clicou num botão","Favor aguardar",1);}
ponte
[quote=Marcio_Lima]Não dá certo, porque você espera que o comando abaixo realize alguma ação
botaol.addActionListener(new Clicado());
mas, como já disse, ele apenas indica que existe uma rotina de evento. Sua utilização normal é no processo de instanciação do botão.
Se você quer executar ações como se o botaol tivesse sido clicado, transcreva essas ações (que estão no procedimento Clicado) para o procedimento ProcessaDados e, lá no procedimento Clicado chame o procedimento ProcessaDados. Algo como:
[code]
ActionListener Clicado = new ActionListener() {
public void actionPerformed(ActionEvent actionEvent) {
processaDados();
}
};
Desculpa mais ainda to sem entender...
Tipo assim eu tenho o objeto textol ( que é uma caixa de texto que aparece na tela certo...), esta caixa de texto é pra ser onde o usuário vai colocar o nome, tenho também uma caixa de texto para colocar a senha, e dois botões: botaol e botaos,
ao clicar no botaol que é o botao de login ele compare o que está na caixa de texto com uma string qualquer e efetue o evento, tipo abrir uma nova janela ou por exemplo exibir uma mensagem?
JButtonbotaol=newJButton("Login");JButtonbotaos=newJButton("Sair");JTextFieldtextol=newJTextField();JTextFieldtextos=newJTextField("y");JLabellabel_login=newJLabel("Nome :::>");JLabellabel_senha=newJLabel("<::: Senha");//este é o construtor possui as informações para construir a janelapublicJLogin(){Containertela=this.getContentPane();tela.setLayout(newFlowLayout());this.getContentPane().setLayout(null);////define as dimensões da janelathis.setSize(500,300);//define o titulo da janelathis.setTitle("TELA DE LOGIN");//centraliza a janelathis.setLocationRelativeTo(null);this.setDefaultCloseOperation(EXIT_ON_CLOSE);//coloca cor de fundo na janelatela.setBackground(Color.black);//posicionamento de campos na telabotaol.setBounds(90,200,100,30);botaos.setBounds(300,200,100,30);textol.setBounds(195,80,100,20);textos.setBounds(195,120,100,20);label_login.setBounds(140,80,100,20);label_senha.setBounds(300,120,100,20);//adicionando os componentes a tela tela.add(botaol);tela.add(botaos);tela.add(textol);tela.add(textos);tela.add(label_login);tela.add(label_senha);//mostra a janela criadathis.setVisible(true);}publicstaticvoidmain(String[]args){//executa as instruçoes do construtor JLoginnewJLogin();}
}[/b]
Onde coloco isso ai que me falo no código acima?
InSeOfKn
por favor utilize as tag e
fica dificil de ler seu código
ponte
InSeOfKn:
por favor utilize as tag e
fica dificil de ler seu código
Este é meu código:
importjava.awt.Color;importjava.awt.Container;importjava.awt.Dimension;importjava.awt.FlowLayout;importjava.awt.Font;importjava.awt.event.MouseListener;importjavax.swing.ImageIcon;importjavax.swing.JButton;importjavax.swing.JFrame;importjavax.swing.JLabel;importjavax.swing.JPanel;importjavax.swing.JTextField;publicclassJLoginextendsJFrame{JButtonbotaol=newJButton("Login");JButtonbotaos=newJButton("Sair");JTextFieldtextol=newJTextField();JTextFieldtextos=newJTextField("y");JLabellabel_login=newJLabel("Nome :::>");JLabellabel_senha=newJLabel("<::: Senha");//este é o construtor possui as informações para construir a janela publicJLogin(){Containertela=this.getContentPane();tela.setLayout(newFlowLayout());this.getContentPane().setLayout(null);// //define as dimensões da janela this.setSize(500,300);//define o titulo da janela this.setTitle("TELA DE LOGIN");//centraliza a janela this.setLocationRelativeTo(null);this.setDefaultCloseOperation(EXIT_ON_CLOSE);//coloca cor de fundo na janela tela.setBackground(Color.black);//posicionamento de campos na tela botaol.setBounds(90,200,100,30);botaos.setBounds(300,200,100,30);textol.setBounds(195,80,100,20);textos.setBounds(195,120,100,20);label_login.setBounds(140,80,100,20);label_senha.setBounds(300,120,100,20);//adicionando os componentes a tela tela.add(botaol);tela.add(botaos);tela.add(textol);tela.add(textos);tela.add(label_login);tela.add(label_senha);//mostra a janela criada this.setVisible(true);}publicstaticvoidmain(String[]args){//executa as instruçoes do construtor JLogin newJLogin();}}
Onde coloco isso ai que me falo no código acima?
InSeOfKn
você deve estar com CheckBox “Desabilitar formatação BB nesta mensagem” marcado
desmarque ele la em baixo quando for postar algo
geralmente vem desmarcada mais como você citou minha resposta que estava marcada ele veio marcado
edite a mensagem e desmarque o CheckBox!
ponte
InSeOfKn:
você deve estar com CheckBox “Desabilitar formatação BB nesta mensagem” marcado
desmarque ele la em baixo quando for postar algo
geralmente vem desmarcada mais como você citou minha resposta que estava marcada ele veio marcado
edite a mensagem e desmarque o CheckBox!
Este é meu código:
importjava.awt.Color;importjava.awt.Container;importjava.awt.Dimension;importjava.awt.FlowLayout;importjava.awt.Font;importjava.awt.event.MouseListener;importjavax.swing.ImageIcon;importjavax.swing.JButton;importjavax.swing.JFrame;importjavax.swing.JLabel;importjavax.swing.JPanel;importjavax.swing.JTextField;publicclassJLoginextendsJFrame{JButtonbotaol=newJButton("Login");JButtonbotaos=newJButton("Sair");JTextFieldtextol=newJTextField();JTextFieldtextos=newJTextField("y");JLabellabel_login=newJLabel("Nome :::>");JLabellabel_senha=newJLabel("<::: Senha");//este é o construtor possui as informações para construir a janela publicJLogin(){Containertela=this.getContentPane();tela.setLayout(newFlowLayout());this.getContentPane().setLayout(null);// //define as dimensões da janela this.setSize(500,300);//define o titulo da janela this.setTitle("TELA DE LOGIN");//centraliza a janela this.setLocationRelativeTo(null);this.setDefaultCloseOperation(EXIT_ON_CLOSE);//coloca cor de fundo na janela tela.setBackground(Color.black);//posicionamento de campos na tela botaol.setBounds(90,200,100,30);botaos.setBounds(300,200,100,30);textol.setBounds(195,80,100,20);textos.setBounds(195,120,100,20);label_login.setBounds(140,80,100,20);label_senha.setBounds(300,120,100,20);//adicionando os componentes a tela tela.add(botaol);tela.add(botaos);tela.add(textol);tela.add(textos);tela.add(label_login);tela.add(label_senha);//mostra a janela criada this.setVisible(true);}publicstaticvoidmain(String[]args){//executa as instruçoes do construtor JLogin newJLogin();}}
Onde coloco isso ai que me falo no código acima?
InSeOfKn
ficaria assim no seu código
importjava.awt.Color;importjava.awt.Container;importjava.awt.Dimension;importjava.awt.FlowLayout;importjava.awt.Font;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjava.awt.event.MouseEvent;importjava.awt.event.MouseListener;importjavax.swing.ImageIcon;importjavax.swing.JButton;importjavax.swing.JFrame;importjavax.swing.JLabel;importjavax.swing.JOptionPane;importjavax.swing.JPanel;importjavax.swing.JTextField;publicclassJLoginextendsJFrame{JButtonbotaol=newJButton("Login");JButtonbotaos=newJButton("Sair");JTextFieldtextol=newJTextField();JTextFieldtextos=newJTextField("y");JLabellabel_login=newJLabel("Nome :::>");JLabellabel_senha=newJLabel("<::: Senha");/////////////////////////////////////////////////////////StringUsuarioCorreto="Usuario";// quarda o valor correto para depois comparar com o texto///////////////////////////////////////////////////////////este é o construtor possui as informações para construir a janela publicJLogin(){Containertela=this.getContentPane();tela.setLayout(newFlowLayout());this.getContentPane().setLayout(null);// //define as dimensões da janela this.setSize(500,300);//define o titulo da janela this.setTitle("TELA DE LOGIN");//centraliza a janela this.setLocationRelativeTo(null);this.setDefaultCloseOperation(EXIT_ON_CLOSE);//coloca cor de fundo na janela tela.setBackground(Color.black);/////////////////////////////////////////////////////////botaol.addActionListener(Clicado);// adiciona uma ação para o botão botaol///////////////////////////////////////////////////////////posicionamento de campos na tela botaol.setBounds(90,200,100,30);botaos.setBounds(300,200,100,30);textol.setBounds(195,80,100,20);textos.setBounds(195,120,100,20);label_login.setBounds(140,80,100,20);label_senha.setBounds(300,120,100,20);//adicionando os componentes a tela tela.add(botaol);tela.add(botaos);tela.add(textol);tela.add(textos);tela.add(label_login);tela.add(label_senha);//mostra a janela criada this.setVisible(true);}publicstaticvoidmain(String[]args){//executa as instruçoes do construtor JLogin newJLogin();}/////////////////////////////////////////////////////////ActionListenerClicado=newActionListener(){//o que vai acontecer quando clicarpublicvoidactionPerformed(ActionEventactionEvent){if(UsuarioCorreto.equals(textol.getText())){ProcessaDados();}}};/////////////////////////////////////////////////////////privatevoidProcessaDados(){// fazer algo com o que foi digitado JOptionPane.showMessageDialog(null,"Você clicou num botão, e o nome estava correto","Favor aguardar",1);}/////////////////////////////////////////////////////////}
deixei bem destacado o que foi modificado
até mais
ponte
Ou muito obrigado a todos que tentaram me ajudar e valeu ai “InSeOfKn”.