if@ok
Should check if string contains @unknown
java
4 years ago
2.5 kB
18
Indexable
package graficos;
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
public class FocoEvento {
public static void main(String[] args) {
// TODO Auto-generated method stub
MarcoFoco miMarco = new MarcoFoco();
miMarco.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
class MarcoFoco extends JFrame{
public MarcoFoco() {
this.setBounds(300,300,500,500);
this.setVisible(true);
this.add(new LaminaFoco());
}
}
class LaminaFoco extends JPanel{
public void paintComponent(Graphics g) {
super.paintComponent(g);
this.setLayout(null);//con esto se pueden posicionar los campos donde se requiera
cuadro1 = new JTextField();
cuadro2 = new JTextField();
cuadro1.setBounds(120, 10, 150, 20);
cuadro2.setBounds(120, 50, 150, 20);
this.add(cuadro1);
this.add(cuadro2);
LanzaFocos elFoco = new LanzaFocos();
cuadro1.addFocusListener(elFoco);
}
private class LanzaFocos implements FocusListener{
@Override
public void focusGained(FocusEvent e) {
// TODO Auto-generated method stub
}
@Override
public void focusLost(FocusEvent e) {
// TODO Auto-generated method stub
String email = cuadro1.getText();
boolean comprobacion = false;
for(int i=0;i<email.length();i++) {
if(email.charAt(i)=='@'){
comprobacion = true;
}
}
if(comprobacion == true){
System.out.println("Correct");
}else {
System.out.println("Incorrect");
}
}
}
/*
* ¿porque se ha declarado la variable fuera del método paintComponent
*y luego instanciado esas variables dentro del método paintComponent?:
*por tema de ambito de variables se va a necesitar acceder a estas variables
*objeto perteneciente a JTextField desde otros metodos diferentes
*de paint Componen, si se hubieran declarado dentro de paintComponent
*tendrían un ambito local, valdrían solamente dentro del método paintComponent
*y si fuera a acceder a cuadro1 y cuadro2 desde fuera de paintComponent no podría
*hacerlo por su ambito local,
*sin embargo al declararlas fuera del metodo paintComponent pero dentro de la clase
*el ambito es ámbito de la clase
*siempre que esté dentro de la clase LaminaFoco
*/
JTextField cuadro1;
JTextField cuadro2;
}Editor is loading...