Curso Java desde cero #29 | Interfaces gráficas (Swing - JTextField)

แชร์
ฝัง
  • เผยแพร่เมื่อ 3 ธ.ค. 2024

ความคิดเห็น • 202

  • @LaGeekipediaDeErnesto
    @LaGeekipediaDeErnesto  6 ปีที่แล้ว +26

    ¿Te gustaría que este contenido siga siendo gratuito?, puedes apoyar al canal de las siguientes maneras:
    1. Donaciones: www.paypal.me/LaGeekipedia
    2. Desactivando Adblock y Adblock Plus en TH-cam.
    3. Compartiendo los vídeos del canal en foros y redes sociales.
    Cualquier opción es de gran ayuda. ¡Muchas gracias!

    • @camilofreeman376
      @camilofreeman376 5 ปีที่แล้ว +2

      Voy a donarte de alguna forma bro porque he aprendido muchisimo con tus videos, de verdad gracias!

    • @ramond12
      @ramond12 5 ปีที่แล้ว

      Hola cómo se desactiva adblock? Y adblock plus?

    • @fabianmosquera5969
      @fabianmosquera5969 4 ปีที่แล้ว

      La verdad he aprendido mucho, cuando acabe el curso hago una donacion

  • @ramond12
    @ramond12 5 ปีที่แล้ว +15

    Hola Ernesto en nombre de todos los que estamos aprendiendo de tu curso estamos muy agradecidos por ese gran trabajo gratuito. Yo voy por el aprendizaje de este número 29. Saludos desde Venezuela.

  • @aaron08977
    @aaron08977 6 ปีที่แล้ว +37

    excelente curso de java, aprendo mas contigo que en la universidad.

  • @emanuelgonzalez9878
    @emanuelgonzalez9878 7 ปีที่แล้ว +64

    hola, quiero decirte que haces los mejores tutoriales de youtube y e aprendido mucho, espero no dejes de seguir haciendo. muchas gracias

    • @LaGeekipediaDeErnesto
      @LaGeekipediaDeErnesto  7 ปีที่แล้ว +24

      ¡Muchas gracias!, por supuesto que seguiré aquí hasta que la plataforma lo permita.
      Saludos.

    • @namet952
      @namet952 3 ปีที่แล้ว

      @@LaGeekipediaDeErnesto grande

    • @rodrigoa.c7718
      @rodrigoa.c7718 3 ปีที่แล้ว

      @@LaGeekipediaDeErnesto debo de decirte que he aprendido mas en estos 29 videos que en toda la carrera universitaria en relacion a programacion JAVA eres el Maximo Crack

  • @elpolemxz1454
    @elpolemxz1454 4 หลายเดือนก่อน +6

    Gracias maestro Ernesto❤
    Logre hacer una calculadora basica despues de un poco de estres jaja :)❤
    Si la quieren hacer les dejo el codigo como referencia aunque no es el mejor y posiblemente tiene algunos errores jaja(no se burlen :( )
    (Guardar como Calculadorar)
    ========================================
    import javax.swing.*;
    import java.awt.event.*;
    public class Calculadorar extends JFrame implements ActionListener {
    private JButton multiplicacion, division, resta, suma, igual, punto, cerrar, borrar, uno, dos, tres, cuatro, cinco, seis, siete, ocho, nueve, cero;
    private JTextField pantalla1;
    double numUno = 0;
    double numDos = 0;
    String operacion = "";
    double resultado = 0;
    public Calculadorar() {
    setLayout(null);
    pantalla1 = new JTextField();
    pantalla1.setBounds(15,15,355,100);
    add(pantalla1);
    cero = new JButton ("0");
    cero.setBounds(105,475,85,70);
    add(cero);
    cero.addActionListener(this);
    uno = new JButton ("1");
    uno.setBounds(15,400,85,70);
    add(uno);
    uno.addActionListener(this);
    dos = new JButton("2");
    dos.setBounds(105,400,85,70);
    add(dos);
    dos.addActionListener(this);
    tres = new JButton("3");
    tres.setBounds(195,400,85,70);
    add(tres);
    tres.addActionListener(this);
    cuatro = new JButton("4");
    cuatro.setBounds(15,325,85,70);
    add(cuatro);
    cuatro.addActionListener(this);
    cinco = new JButton("5");
    cinco.setBounds(105,325,85,70);
    add(cinco);
    cinco.addActionListener(this);
    seis = new JButton("6");
    seis.setBounds(195,325,85,70);
    add(seis);
    seis.addActionListener(this);
    siete = new JButton("7");
    siete.setBounds(15,250,85,70);
    add(siete);
    siete.addActionListener(this);
    ocho = new JButton("8");
    ocho.setBounds(105,250,85,70);
    add(ocho);
    ocho.addActionListener(this);
    nueve = new JButton("9");
    nueve.setBounds(195,250,85,70);
    add(nueve);
    nueve.addActionListener(this);
    multiplicacion = new JButton("x");
    multiplicacion.setBounds(285,400,85,70);
    add(multiplicacion);
    multiplicacion.addActionListener(this);
    suma = new JButton("+");
    suma.setBounds(285,250,85,70);
    add(suma);
    suma.addActionListener(this);
    resta = new JButton("-");
    resta.setBounds(285,325,85,70);
    add(resta);
    resta.addActionListener(this);
    division = new JButton("÷");
    division.setBounds(285,175,85,70);
    add(division);
    division.addActionListener(this);
    igual = new JButton("=");
    igual.setBounds(285,475,85,70);
    add(igual);
    igual.addActionListener(this);
    punto = new JButton(".");
    punto.setBounds(195,475,85,70);
    add(punto);
    punto.addActionListener(this);
    borrar = new JButton("C");
    borrar.setBounds(195,175,85,70);
    add(borrar);
    borrar.addActionListener(this);
    cerrar = new JButton("Cerrar");
    cerrar.setBounds(15,175,100,40);
    add(cerrar);
    cerrar.addActionListener(this);
    }
    public void actionPerformed(ActionEvent e) {
    if(e.getSource() == cero){
    pantalla1.setText(pantalla1.getText() + "0");
    }
    else if(e.getSource() == uno){
    pantalla1.setText(pantalla1.getText() + "1");
    }
    else if(e.getSource() == dos){
    pantalla1.setText(pantalla1.getText() + "2");
    }
    else if(e.getSource() == tres){
    pantalla1.setText(pantalla1.getText() + "3");
    }
    else if(e.getSource() == cuatro){
    pantalla1.setText(pantalla1.getText() + "4");
    }
    else if(e.getSource() == cinco){
    pantalla1.setText(pantalla1.getText() + "5");
    }
    else if(e.getSource() == seis){
    pantalla1.setText(pantalla1.getText() + "6");
    }
    else if(e.getSource() == siete){
    pantalla1.setText(pantalla1.getText() + "7");
    }
    else if(e.getSource() == ocho){
    pantalla1.setText(pantalla1.getText() + "8");
    }
    else if(e.getSource() == nueve){
    pantalla1.setText(pantalla1.getText() + "9");
    }
    else if(e.getSource() == punto){
    pantalla1.setText(pantalla1.getText() + ".");
    }
    else if(e.getSource() == multiplicacion){
    numUno = Double.parseDouble(pantalla1.getText());
    pantalla1.setText("");
    operacion = "x";
    }
    else if(e.getSource() == suma){
    numUno = Double.parseDouble(pantalla1.getText());
    pantalla1.setText("");
    operacion = "+";
    }
    else if(e.getSource() == resta){
    numUno = Double.parseDouble(pantalla1.getText());
    pantalla1.setText("");
    operacion = "-";
    }
    else if(e.getSource() == division){
    numUno = Double.parseDouble(pantalla1.getText());
    pantalla1.setText("");
    operacion = "÷";
    }
    else if(e.getSource() == borrar){
    pantalla1.setText("");
    }
    else if(e.getSource() == cerrar){
    System.exit(0);
    }
    else if(e.getSource() == igual){
    numDos = Double.parseDouble(pantalla1.getText());
    switch(operacion){
    case "+": resultado = numUno + numDos;
    break;
    case"-": resultado = numUno - numDos;
    break;
    case"x": resultado = numUno * numDos;
    break;
    case "÷": resultado = numUno / numDos;
    break;
    }
    pantalla1.setText(resultado + "");
    }
    }
    public static void main(String args[]) {
    Calculadorar interfaz1 = new Calculadorar();
    interfaz1.setTitle("Calculadora");
    interfaz1.setBounds(0,0,400,600);
    interfaz1.setVisible(true);
    interfaz1.setLocationRelativeTo(null);
    interfaz1.setResizable(false);
    }
    }

    • @mateosancheziviglia176
      @mateosancheziviglia176 6 วันที่ผ่านมา

      Guau, te tuvo que estresar bastante pero al hacerlo lograste comprender mejor el tema ¿no es asi?

  • @anthonyauris9667
    @anthonyauris9667 6 ปีที่แล้ว +36

    que hermosos videos, enserio te pasaste, espero que puedas monetizarlo, para que no sea una "perdida de tiempo" para ti. :)

  • @GonzaloEValdiviesoB
    @GonzaloEValdiviesoB 4 ปีที่แล้ว +2

    quité el bloqueo de publicidad sólo porque este hombre se merece que yo vea esas publicidades. Gracias por tan buenos videos y no dude que cuando yo monetice mis programas le voy a hace un buena donación.

  • @jairopalacios3289
    @jairopalacios3289 4 ปีที่แล้ว +5

    Cada que avanza el curso se pone más interesante

  • @promipicode
    @promipicode 4 ปีที่แล้ว +45

    jj siempre recargo la pagina hasta que salga anuncio y lo veo completo . Es mi forma de donar

    • @maol_da
      @maol_da 3 ปีที่แล้ว

      Uno ayuda de cualquier forma cuando quiere, esto es un ejemplo, me gusta.

    • @bigotes20random86
      @bigotes20random86 3 ปีที่แล้ว

      :)

  • @huascraft4889
    @huascraft4889 4 ปีที่แล้ว +6

    Te juro que cuando trabaje de programador te dono grande!! Y gracias

    • @elgatocosmico403
      @elgatocosmico403 3 ปีที่แล้ว

      Ya trabajas de programador???

    • @charizardjunior792
      @charizardjunior792 7 หลายเดือนก่อน

      tengo la misma meta, mi 1er sueldo al profe

  • @todosMachos
    @todosMachos 4 ปีที่แล้ว +4

    PRESENTE...
    HOY, MAÑANA Y SIEMPRE!

  • @fabianortiz5946
    @fabianortiz5946 4 ปีที่แล้ว +9

    si sigue subiendo vídeos, te doy mi herencia

    • @LaGeekipediaDeErnesto
      @LaGeekipediaDeErnesto  4 ปีที่แล้ว +12

      ¡Hola Fabian!, es correcto, los vídeos se siguen publicando, actualmente vamos en el vídeo 81 del curso java intermedio. Saludos.

  • @oswaldocastanogiraldo9005
    @oswaldocastanogiraldo9005 6 ปีที่แล้ว +6

    Quiero felicitarlo por esos excelentes tutoriales , eres un gran instructor. Gracias

  • @joseoctavioinostrozaconsta4685
    @joseoctavioinostrozaconsta4685 5 ปีที่แล้ว +4

    Definitivamente me queda todo claro con tus vídeos, te felicito. Gracias.

  • @zackysh_
    @zackysh_ 4 ปีที่แล้ว +1

    Con otros tutoriales tengo la sensación de estar aprendiendo métodos engorrosos, sin embargo, tu contenido me transmite todo lo contrario :) muchas gracias!!

  • @Juegos_y_Acertijos
    @Juegos_y_Acertijos 5 ปีที่แล้ว +21

    import javax.swing.*;
    import java.awt.event.*;
    public class TextField extends JFrame implements ActionListener {
    private JTextField Campo_1;
    private JLabel Etiqueta_1;
    private JButton Pulsador_1, Pulsador_2;
    public TextField (){
    // Constructor igual a la clase por el diseño de cada uno de ellos
    setLayout (null);
    // Null para que yo le indique las coordenadas.
    Etiqueta_1 = new JLabel ("Usuario:");
    Etiqueta_1.setBounds (10,10,100,30);
    add (Etiqueta_1);
    //Caja de texto
    Campo_1 = new JTextField();
    // Se puede poner texto entre paréntesis
    Campo_1.setBounds (120,17,150,20);
    add (Campo_1);
    // Ahora programando el botón
    Pulsador_1 = new JButton("Aceptar");
    Pulsador_1.setBounds (10,80,100,30);
    add(Pulsador_1);
    Pulsador_1.addActionListener (this);
    Pulsador_2 = new JButton("Salir");
    Pulsador_2.setBounds (120,80,100,30);
    add(Pulsador_2);
    Pulsador_2.addActionListener (this);
    }
    // Parte de capturar el evento del botón
    public void actionPerformed (ActionEvent P_1) {
    if (P_1.getSource() == Pulsador_1) {
    String Texto_1 = Campo_1.getText ();
    // Obtiene el texto ingresado de Campo_1 y lo pone en Texto_1
    setTitle ("Bienvenido " + Texto_1);
    }

    if (P_1.getSource() == Pulsador_2) {
    System.exit (0);
    }
    }
    public static void main (String args []) {

    // Diseño de la interfaz
    TextField Formulario_1 = new TextField ();
    Formulario_1.setTitle("Bienvenido ");
    Formulario_1.setBounds (0,0,300,150);
    Formulario_1.setVisible (true);
    Formulario_1.setResizable (true);
    Formulario_1.setLocationRelativeTo (null);
    }
    }

  • @LaKaru
    @LaKaru 2 ปีที่แล้ว

    Ernesto, eres genial!!! He aprendido muchísimo más contigo que en la Universidad. Quiero agradecerte por esta noble enseñanza, tienes una manera excelente para enseñar!!! Super claro. Me ha servido muchísimo. Saludos desde Italia!!!

  • @NanoCelis
    @NanoCelis 3 ปีที่แล้ว

    Solo comento para darle notoriedad a este tutorial, realmente lo merece

  • @jeffreyindri
    @jeffreyindri 6 ปีที่แล้ว +7

    Excelente como siempre, Gracias nuevamente buenisimmmooo

  • @cresatyt9253
    @cresatyt9253 4 ปีที่แล้ว +7

    codigo para calculadora con inicio de sesion contraseña opcion para ir a la calculadora o a la sucesion de Fibonacci preguntadote cuantos digitos de la misma quieres y en la calculadora con maximo de 5 digitos
    import java.util.Scanner;
    public class Calculadora{
    public static void main(String args[]){
    Scanner entrada = new Scanner(System.in);
    String usuario = "", contrasena = "", usuario1 = "", contrasena1 = "";
    int opciones = 0, parametro = 0, opcion1 = 1, opcion2 = 2, i = 0, a = 0, b = 1, c = 0, num_uno = 0, num_dos = 0, num_tres = 0, num_cuatro = 0, num_cinco = 0, resultado = 0, resultado1 = 0, resultado2 = 0, resultado3 = 0, signo_uno = 0, signo_dos = 0, signo_tres = 0, signo_cuatro = 0, Fibonacci = 0;
    System.out.println("Por favor ingrese su nombre de usuario deseado:");
    usuario = entrada.nextLine();
    System.out.println("Por favor ingrese su contrasena deseada:");
    contrasena = entrada.nextLine();
    System.out.println("Por favor ingrese su nombre de usuario");
    usuario1 = entrada.nextLine();
    System.out.println("Por favor ingrese su contrasena");
    contrasena1 = entrada.nextLine();
    if(usuario.equals(usuario1) && contrasena.equals(contrasena1)){
    System.out.println("Sus datos coinciden");
    System.out.println("Quiere ingresar a la calculadora (presione 1) o a la Sucesion Fibonacci (presione 2)");
    opciones = entrada.nextInt();

    if(opciones == 1){
    System.out.println("¿Cuantos numeros desea ingresar? (maximo 5)");
    parametro = entrada.nextInt();
    switch(parametro){
    case 1: System.out.println("¿Cual es el numero que desea ingresar?");
    num_uno = entrada.nextInt();
    System.out.println("Con un numero no se puede hacer una operacion");
    break;

    case 2: System.out.println("¿Cual es el primer numero que desea ingresar?");
    num_uno = entrada.nextInt();
    System.out.println("¿Cual es el segundo numero que desea ingresar?");
    num_dos = entrada.nextInt();
    System.out.println("¿Cual es el signo de la operacion que desea hacer?(1 = suma, 2 = resta 3 = multiplicacion, 4 = division)");
    signo_uno = entrada.nextInt();
    switch(signo_uno){
    case 1: resultado = num_uno + num_dos;
    break;
    case 2: resultado = num_uno - num_dos;
    break;
    case 3: resultado = num_uno * num_dos;
    break;
    case 4: resultado = num_uno / num_dos;
    break;
    default: System.out.println("Error");
    break;
    }
    System.out.println("El resultado de tu operacion: " + resultado);
    break;
    case 3: System.out.println("¿Cual es el primer numero que desea ingresar?");
    num_uno = entrada.nextInt();
    System.out.println("¿Cual es el segundo numero que desea ingresar?");
    num_dos = entrada.nextInt();
    System.out.println("¿Cual es el tercer numero que desea ingresar?");
    num_tres = entrada.nextInt();
    System.out.println("¿Cual es el primer signo de su operacion que desea hacer?(1 = suma, 2 = resta 3 = multiplicacion, 4 = division)");
    signo_uno = entrada.nextInt();
    System.out.println("¿Cual es el segundo signo de su operacion que desea hacer?(1 = suma, 2 = resta 3 = multiplicacion, 4 = division)");
    signo_dos = entrada.nextInt();
    switch(signo_uno){
    case 1: resultado = num_uno + num_dos;
    break;
    case 2: resultado = num_uno - num_dos;
    break;
    case 3: resultado = num_uno * num_dos;
    break;
    case 4: resultado = num_uno / num_dos;
    break;
    default: System.out.println("Error");
    break;
    }
    switch(signo_dos){
    case 1: resultado1 = resultado + num_tres;
    break;
    case 2: resultado1 = resultado - num_tres;
    break;
    case 3: resultado1 = resultado * num_tres;
    break;
    case 4: resultado1 = resultado / num_tres;
    break;
    default: System.out.println("Error");
    break;
    }
    System.out.println("El resultado de tu operacion: " + resultado1);
    break;
    case 4: System.out.println("¿Cual es el primer numero que desea ingresar?");
    num_uno = entrada.nextInt();
    System.out.println("¿Cual es el segundo numero que desea ingresar?");
    num_dos = entrada.nextInt();
    System.out.println("¿Cual es el tercer numero que desea ingresar?");
    num_tres = entrada.nextInt();
    System.out.println("¿Cual es el cuarto numero que desea ingresar?");
    num_cuatro = entrada.nextInt();
    System.out.println("¿Cual es el primer signo de su operacion que desea hacer?(1 = suma, 2 = resta 3 = multiplicacion, 4 = division)");
    signo_uno = entrada.nextInt();
    System.out.println("¿Cual es el segundo signo de su operacion que desea hacer?(1 = suma, 2 = resta 3 = multiplicacion, 4 = division)");
    signo_dos = entrada.nextInt();
    System.out.println("¿Cual es el tercer signo de su operacion que desea hacer?(1 = suma, 2 = resta 3 = multiplicacion, 4 = division)");
    signo_tres = entrada.nextInt();
    switch(signo_uno){
    case 1: resultado = num_uno + num_dos;
    break;
    case 2: resultado = num_uno - num_dos;
    break;
    case 3: resultado = num_uno * num_dos;
    break;
    case 4: resultado = num_uno / num_dos;
    break;
    default: System.out.println("Error");
    break;
    }
    switch(signo_dos){
    case 1: resultado1 = resultado + num_tres;
    break;
    case 2: resultado1 = resultado - num_tres;
    break;
    case 3: resultado1 = resultado * num_tres;
    break;
    case 4: resultado1 = resultado / num_tres;
    break;
    default: System.out.println("Error");
    break;
    }
    switch(signo_tres){
    case 1: resultado2 = resultado1 + num_cuatro;
    break;
    case 2: resultado2 = resultado1 - num_cuatro;
    break;
    case 3: resultado2 = resultado1 * num_cuatro;
    break;
    case 4: resultado2 = resultado1 / num_cuatro;
    break;
    default: System.out.println("Error");
    break;
    }
    break;
    case 5: System.out.println("¿Cual es el primer numero que desea ingresar?");
    num_uno = entrada.nextInt();
    System.out.println("¿Cual es el segundo numero que desea ingresar?");
    num_dos = entrada.nextInt();
    System.out.println("¿Cual es el tercer numero que desea ingresar?");
    num_tres = entrada.nextInt();
    System.out.println("¿Cual es el cuarto numero que desea ingresar?");
    num_cuatro = entrada.nextInt();
    System.out.println("¿Cual es el quinto numero que desea ingresar?");
    num_cinco = entrada.nextInt();
    System.out.println("¿Cual es el primer signo de su operacion que desea hacer?(1 = suma, 2 = resta 3 = multiplicacion, 4 = division)");
    signo_uno = entrada.nextInt();
    System.out.println("¿Cual es el segundo signo de su operacion que desea hacer?(1 = suma, 2 = resta 3 = multiplicacion, 4 = division)");
    signo_dos = entrada.nextInt();
    System.out.println("¿Cual es el tercer signo de su operacion que desea hacer?(1 = suma, 2 = resta 3 = multiplicacion, 4 = division)");
    signo_tres = entrada.nextInt();
    System.out.println("¿Cual es el cuarto signo de su operacion que desea hacer?(1 = suma, 2 = resta 3 = multiplicacion, 4 = division)");
    signo_cuatro = entrada.nextInt();
    switch(signo_uno){
    case 1: resultado = num_uno + num_dos;
    break;
    case 2: resultado = num_uno - num_dos;
    break;
    case 3: resultado = num_uno * num_dos;
    break;
    case 4: resultado = num_uno / num_dos;
    break;
    default: System.out.println("Error");
    break;
    }
    switch(signo_dos){
    case 1: resultado1 = resultado + num_tres;
    break;
    case 2: resultado1 = resultado - num_tres;
    break;
    case 3: resultado1 = resultado * num_tres;
    break;
    case 4: resultado1 = resultado / num_tres;
    break;
    default: System.out.println("Error");
    break;
    }
    switch(signo_tres){
    case 1: resultado2 = resultado1 + num_cuatro;
    break;
    case 2: resultado2 = resultado1 - num_cuatro;
    break;
    case 3: resultado2 = resultado1 * num_cuatro;
    break;
    case 4: resultado2 = resultado1 / num_cuatro;
    break;
    default: System.out.println("Error");
    break;
    }
    switch(signo_cuatro){
    case 1: resultado3 = resultado2 + num_cinco;
    break;
    case 2: resultado3 = resultado2 - num_cinco;
    break;
    case 3: resultado3 = resultado2 * num_cinco;
    break;
    case 4: resultado3 = resultado2 / num_cinco;
    break;
    default: System.out.println("Error");
    break;
    }
    break;
    default: System.out.println("Error, numero de digitos incorrecto");
    break;
    }
    } else {
    System.out.println("Serie Fibonacci: ");
    System.out.println("Cuantos digitos de la serie Fibonacci quiere ");
    Fibonacci = entrada.nextInt();
    for(i = 0; i < Fibonacci; i++){
    if(i < Fibonacci - 1){
    System.out.print(a + ",");
    c = a + b;
    a = b;
    b = c;
    } else {
    System.out.print(a);
    }
    }
    System.out.println("");
    i = 0;
    b = 1;
    a = 0;
    c = 0;
    }

    } else {
    System.out.println("Sus datos no coinciden");
    }
    }
    }

    • @nolxbe4816
      @nolxbe4816 5 หลายเดือนก่อน

      Leelo! Quizas te de una idea para un nuevo proyecto para probar tus capacidades!
      Bro, no creo que leas, pero estoy haciendo uno parecido, solo que, el programa no pregunta cuantas variables quieres, puedes colocar hasta que quieras dejar de hacer operaciones, lo quise hacer asi pero dar la similitud de una calculadora real, cuando calculas los 2 primeros digitos, si quieres seguir pones un tercero y colocas la operacion que quieres realizar respecto al 2do, eso lo hice posible gracias a un array bidimencional en el cual, los datos que coloques se imprimen en la primera fila y los resultados en la segunda, es una rareza matematica, justo haciendo este comentario me llego otra idea para poder hacerlo quizas lo intente mas adelante.
      Respecto al apartado de sucesion de fibonacci, quise, agregarle un poco mas de complejidad y si el usuario desea empezar desde un N_esimo termino en especifico de la sucesion que asi sea, y que tenga x cantidad de terminos que el usuario desee, asi, si el usuario quiere conocer el termino 50 de la sucesion, pueda hacerlo sin tener que imprimir los 49 anteriores (Si, otro dolor de cabeza matematico), llevo en esto dos dias ajjasjak, se me ha complicado mucho la 2da parte de la secuencia.
      Dividi el proyecto en 2 partes: La calculadora, la sucesion y el apartado de inicio de sesion y la eleccion de utilidad. Cuando lo termine paso el codigo para el que le interese! Aunque no creo que lo veo alguien jaja

  • @soubakouh
    @soubakouh 3 ปีที่แล้ว +3

    Los anteriores tutos de JFrame cuestan, muy lioso todo, pero poco a poco se va entendiendo mejor la dinámica ^^

  • @feraniarodriguez1430
    @feraniarodriguez1430 3 ปีที่แล้ว +1

    Feliz porque llegue aquí :D, gracias

  • @eugenioalvez4014
    @eugenioalvez4014 6 ปีที่แล้ว

    excelente explicación, muy claro. yo loa hacia desde jFrame de netbeans sin entenderlo , pero ahora gracias a vos las cosas me quedan mucho mas claro. saludos

  • @asbleidysanchezvargas7365
    @asbleidysanchezvargas7365 3 ปีที่แล้ว

    Excelente Ernesto. Mil gracias desde Colombia. Todo muy bien explicado, todo se entiende, TODO FUNCIONA! Mil gracias por todo el esfuerzo y la dedicación. Un abrazo.

  • @ISCOYT-MX
    @ISCOYT-MX 4 ปีที่แล้ว

    Gracias por todo Ernesto ... Pude agregar usuario contraseña con sus respectivas textfield además dos botones uno de aceptar y uno para salir en base a lo que ya hemos visto muchas Gracias Ernesto Dios te bendiga 💕

  • @horizon5076
    @horizon5076 4 ปีที่แล้ว

    El mejor maestro de programación de todos

  • @josejesusbaltazar7968
    @josejesusbaltazar7968 ปีที่แล้ว

    Gracias, me han servido de mucho estas lecciones

  • @m4fx
    @m4fx 3 ปีที่แล้ว +1

    También se puede diseñar la interfaz dentro del constructor y llamarlo desde main:
    public Formulario(){
    setLayout(null);
    setBounds(0,0,300,150);
    setLocationRelativeTo(null);
    setResizable(false);
    setVisible(true);
    setDefaultCloseOperation(EXIT_ON_CLOSE);
    luego armamos los Labels, Botones, etc. Dentro del mismo constructor.
    Y luego llamamos desde main al constructor:
    public static void main(String args[]){
    new Formulario();

  • @martin085
    @martin085 3 ปีที่แล้ว

    Muy buenos videos! me ocurrió (por hacer copy paste) que me olvidé de cambiar la creación del objeto formulario, ya que le había cambiado el nombre a la clase y al constructor (consecuentemente). Entonces cuando lo corría, me creaba una ventana completamente diferente a la esperada... la del ejercicio anterior! me llevó un tiempo darme cuenta del error ya que era lógico, y son los más complicados.

  • @josepassera7692
    @josepassera7692 4 ปีที่แล้ว +1

    Sinceramente se me hace mucho mas cómodo poner las características de mi ventana en el constructor de la clase que no tiene el método main, me parece mas ordenado. :) Buenísimo el video! Como siempre! jaja

  • @nelsontique9395
    @nelsontique9395 4 ปีที่แล้ว

    Muchas gracias por excelentes clases he aprendido mucho.

  • @ALXTorresC
    @ALXTorresC 3 ปีที่แล้ว

    Excelente como siempre... nada más que decir

  • @Eduprofe
    @Eduprofe 4 ปีที่แล้ว

    No soporto los anuncios de netflix pero los veo completos para aportarte lo que puedo Ernesto :’)

  • @Boschini666
    @Boschini666 6 ปีที่แล้ว

    Muchas gracias. He aprendido mucho.

  • @aaronmartinez7769
    @aaronmartinez7769 6 ปีที่แล้ว +28

    se puede poner directamente sin necesidad de asignarlo a un objeto String
    setTitle(text.getText());
    gracias saludos!

  • @gilbertoirvingoledoenrique8830
    @gilbertoirvingoledoenrique8830 5 ปีที่แล้ว

    Hoy comencé a ver estos videos, gran trabajo.
    Gracias por compartir tu conocimiento.

    • @tvBioskoop_show
      @tvBioskoop_show 5 ปีที่แล้ว +2

      Comenzaste hoy y ya estas en la 27 waaaaaoooooooooo.
      Enseñame.

    • @carlosmorales08
      @carlosmorales08 5 ปีที่แล้ว +1

      @@tvBioskoop_show el ya debe estar en curso de android en este momento jaja

    • @cecilianavarrete712
      @cecilianavarrete712 4 ปีที่แล้ว +1

      yo me demore dos meses para llegar aqui xdxdxdxd

    • @Un-randowm
      @Un-randowm ปีที่แล้ว

      @@cecilianavarrete712 yo solo 1 semana

  • @samuelgutierrez5704
    @samuelgutierrez5704 3 ปีที่แล้ว

    el julio profe de la programación 👌

  • @zedryklopez9040
    @zedryklopez9040 6 ปีที่แล้ว +1

    como siempre excelente vídeo Ernesto.

  • @rda6899
    @rda6899 5 ปีที่แล้ว +1

    Excelentes estas clases!!!!! saludos

  • @pepemoyein5974
    @pepemoyein5974 6 ปีที่แล้ว

    Gracias por todo Ernesto

  • @charizardjunior792
    @charizardjunior792 7 หลายเดือนก่อน

    excelente clase

  • @todosMachos
    @todosMachos 4 ปีที่แล้ว +2

    Estoy creando un grupo en whatsapp, para aquellos que tengamos dudas, comentarios, opiniones, queramos aportar y/o impulsar algo.
    Si alguien gusta, busquenme. SALUDOS.

    • @joserogeliovillasenorflore2012
      @joserogeliovillasenorflore2012 4 ปีที่แล้ว +1

      YOOO

    • @todosMachos
      @todosMachos 4 ปีที่แล้ว

      @@joserogeliovillasenorflore2012 perfecto, búscame al Instagram @akaelcirco ya esta creado el grupo, te esperamos.

    • @ezequielmartinez194
      @ezequielmartinez194 ปีที่แล้ว

      sigue vivo ese grupo? medio tarde llegue

  • @kramnikgo5131
    @kramnikgo5131 3 ปีที่แล้ว

    excelentes videos,muy bueno el curso,cual seria el elemento para ccambiar el margen hacia arriba?
    para bajar mas el formulario gracias

  • @javielucho06
    @javielucho06 2 ปีที่แล้ว

    Yo lo hice un poco diferente porque le agregué unos detallitos al código y me sorprendió porque funcionó. De verdad que estoy aprendiendo. Este pana es lo máximo.
    import javax.swing.*;
    import java.awt.event.*;
    public class Usuario extends JFrame implements ActionListener{
    private JTextField textoUsuario;
    private JButton bAceptar, bCerrar;
    private JLabel label1;
    public Usuario(){
    setLayout(null);
    bAceptar = new JButton("Aceptar");
    bAceptar.setBounds(10,100,90,30);
    add(bAceptar);
    bAceptar.addActionListener(this);
    bCerrar = new JButton("Cerrar");
    bCerrar.setBounds(110,100,90,30);
    add(bCerrar);
    bCerrar.addActionListener(this);
    label1 = new JLabel("Usuario:");
    label1.setBounds(10,10,100,30);
    add(label1);
    textoUsuario = new JTextField();
    textoUsuario.setBounds(120,17,150,20);
    add(textoUsuario);
    }
    public void actionPerformed(ActionEvent e){
    if(e.getSource() == bAceptar){
    String texto = textoUsuario.getText();
    setTitle(texto);
    textoUsuario.setText("");
    }if(e.getSource() == bCerrar){
    System.exit(0);
    }
    }
    public static void main(String[] args){
    Usuario usuario1 = new Usuario();
    usuario1.setBounds(0,0,300,200);
    usuario1.setVisible(true);
    usuario1.setResizable(false);
    usuario1.setLocationRelativeTo(null);
    }
    }

  • @JuanantonioPimentel
    @JuanantonioPimentel 7 ปีที่แล้ว

    muy bien las interfaces graficas en java me encanta amigo gracia

  • @wizardtus7409
    @wizardtus7409 ปีที่แล้ว

    Que tal Ernesto, primero que nada gracias por la info! Soy nuevo en esto y estoy aprendiendo lo necesario para dar el primer paso en programacion! Por otro lado me gustaria preguntarte si puedo obtener un documento donde me diga que hace cada comando, Ej:
    getSource = Recupera la info de un espacio de memoria antes creado!
    getText =
    setVisible = Hace visible la interfas
    etc...
    Tendras algun documento con toda la info necesaria?

  • @batsheba_sherman1912
    @batsheba_sherman1912 3 ปีที่แล้ว

    genial la clase!

  • @ricardovilca7029
    @ricardovilca7029 3 ปีที่แล้ว

    Buen curso

  • @joseantoniobenlopez3240
    @joseantoniobenlopez3240 4 ปีที่แล้ว

    Excelente tutorial. ¿Hay alguna manera de que el bloc de notas tenga de manera permanente la codificación ANSI?

  • @SilicioRampante
    @SilicioRampante 5 ปีที่แล้ว +6

    no se ustedes pero yo siempre ademas de seguir todo lo que hace Ernesto, le agrego siempre un botón de salir al programa, ya que me olvidé del comando para salir desde Cmd jsjsjs

    • @sergioguzman1982
      @sergioguzman1982 5 ปีที่แล้ว

      control + c

    • @434emm
      @434emm 4 ปีที่แล้ว

      Yo También se lo hago porque me da flojera usar el ctrl + c

  • @ivanollero7058
    @ivanollero7058 4 ปีที่แล้ว +1

    Hola Ernesto, muchísimas gracias por transmitir tus conocimientos, estoy aprendiendo mucho ;)
    Tengo tres preguntas y si tienes tiempo me gustaría que me contestaras.
    1. En la pantalla CMD no me aparece correctamente la letra "ñ", tildes y otros símbolos. ¿Podrías poner un enlace o decirme como se puede configurar correctamente para solucionarlo?
    2. En la interface no me aparece el marco de la ventana creada (parte izquierda, derecha y de abajo). ¿Es porque hay algún error o porque el jdk está más actualizado al que utilizas?
    3. En este ejercicio la ventana esta perfecta y funciona correctamente pero no se puede aceptar (dar al botón) utilizando el teclado con el "enter".
    Muchas gracias de nuevo y explicas genial.

    • @gabbogames9713
      @gabbogames9713 3 ปีที่แล้ว

      hola! te respondo la 1. cuando guardás el archivo en el bloc de notas, fijate que hay una opción abajo que dice "codificación" tenes que cambiarlo a ANSI, le das guardar y ya está, te va a tomar los símbolos el cmd.

  • @hondedtij6761
    @hondedtij6761 5 ปีที่แล้ว +2

    ¿Qué diferencia hay entre guardar el texto de JTextfield en una variable para posteriormente ponerlo en setTitle("variable"); a hacerlo de manera directa con setTitle(textfield1.getText()); ?

    • @waldirmarin8210
      @waldirmarin8210 5 ปีที่แล้ว +2

      poder reutilizar la variable en otras cosas de el codigo.

    • @victormanuelgonzalezmoreno6076
      @victormanuelgonzalezmoreno6076 5 ปีที่แล้ว +3

      Para este caso puedes hacerlo asi perfectamente.En programacion se puede ir al mismo sitio por muchos caminos

  • @juancamilogomez8202
    @juancamilogomez8202 6 ปีที่แล้ว +2

    Hola, le adicione dos botones, salir y limpiar..
    import javax.swing.*;
    import java.awt.event.*;
    public class LoginInterfaz extends JFrame implements ActionListener{

    private JButton btnaceptar,btnsalir,btnlimpiar;
    private JLabel lbltexto;
    private JTextField tfcampo;
    public LoginInterfaz(){
    setLayout(null);
    lbltexto = new JLabel("Usuario:");
    lbltexto.setBounds(10,10,100,30);
    add(lbltexto);
    tfcampo = new JTextField();
    tfcampo.setBounds(120,17,180,20);
    add(tfcampo);
    btnaceptar = new JButton("Aceptar");
    btnaceptar.setBounds(10,60,80,30);
    add(btnaceptar);
    btnaceptar.addActionListener(this);
    btnsalir = new JButton("Salir");
    btnsalir.setBounds(100,60,80,30);
    add(btnsalir);
    btnsalir.addActionListener(this);
    btnlimpiar = new JButton("Limpiar");
    btnlimpiar.setBounds(195,60,80,30);
    add(btnlimpiar);
    btnlimpiar.addActionListener(this);
    }
    public void actionPerformed(ActionEvent event){
    if (event.getSource()==btnaceptar) {
    String texto = tfcampo.getText();
    setTitle(texto);
    }if (event.getSource()==btnsalir) {
    System.exit(0);
    }if (event.getSource()==btnlimpiar) {
    tfcampo.setText("");
    }
    }
    public static void main(String args[]){
    LoginInterfaz lg = new LoginInterfaz();
    lg.setBounds(0,0,400,250);
    lg.setVisible(true);
    lg.setResizable(false);
    lg.setLocationRelativeTo(null);
    }
    }

  • @josegacria8816
    @josegacria8816 4 ปีที่แล้ว

    No dejes de hacer videos , donaciones en camino

  • @gabyjb4406
    @gabyjb4406 ปีที่แล้ว

    Mi interfaz ya ejecutada no luce como la tuya Ernesto. La mia se ve muy pobre jejjeje.
    Gracias Ernesto eres muy amable.

  • @blacktoom3254
    @blacktoom3254 3 ปีที่แล้ว

    Buen Video

  • @tvBioskoop_show
    @tvBioskoop_show 5 ปีที่แล้ว +23

    SetTitle no lo has dados

    • @arq_javatachella3692
      @arq_javatachella3692 5 ปีที่แล้ว +20

      Gracias, vuelvas prontos...
      jaja lo tenia que comentar

  • @luisaioria5634
    @luisaioria5634 4 ปีที่แล้ว

    Que buen vídeo !!! Me quedó todo claro, lastima que no me apareció el JTextField en mi pantalla :(

  • @igorrodriguez5413
    @igorrodriguez5413 7 ปีที่แล้ว +1

    He entendido todo desde que empezamos a trabajar con interfaces exepto una cosa y son las coordenadas. Se que aprendere porque ahora me faltan muchos videos por ver. Pero supongamos que con lo que ya he aprendido intente crear un programa, para saber que coordena darle a lo que quiero dentro de mi interfaz, ¿deberia primero tener en cuenta las dimensiones que le dare a la interfaz verdad? Y mediante esas dimensiones calcular donde quiero que aparezca lo que va dentro de la interfaz?

    • @LaGeekipediaDeErnesto
      @LaGeekipediaDeErnesto  7 ปีที่แล้ว +4

      ¡Hola!, así es, al diseñar una interfaz gráfica, lo primero es tomar en cuenta el alto y ancho que tendrá la interfaz, para posteriormente saber en que posición colocaras cada uno de los componentes que estés utilizando, al principio es una tarea un tanto fastidiosa, pero conforme vas tomando experiencia, te ira resultado algo muy sencillo. Saludos.

    • @igorrodriguez5413
      @igorrodriguez5413 7 ปีที่แล้ว

      La Geekipedia De Ernesto Gracias. Saludos igual Ernesto.

    • @loquendoelpaps3359
      @loquendoelpaps3359 6 ปีที่แล้ว +3

      mira el primer espacio digamos (0, , , ,) es en el eje X osea horizontalmente, en el segundo espacio(0, 0, , , ) es en el eje Y osea verticalmente, en el tercer espacio (0, 0, 0, ,) es width osea ancho y en el cuarto espacio (0, 0, 0, 0) es height osea alto y hay ya lo puedes manejar las coordenadas a tu gusto quiero mi like :'v.

  • @aldoadrianturrubiatesvivan7373
    @aldoadrianturrubiatesvivan7373 6 ปีที่แล้ว +1

    hola, ernesto tengo una duda veo que a ti en el video te aparece lo que escribes en la esquina izquierda a mi lo que escribo en el cuadro me aparece en el centro de la parte superior, ¿porque ocurre esto?

  • @alvarogonzalez254
    @alvarogonzalez254 5 ปีที่แล้ว

    felicitaciones Ernesto, excelentes videos, tengo una duda, como hiciste para que el titulo te apareciera en la parte izquierda de la ventana y no centrado, gracias

  • @christianfabian2095
    @christianfabian2095 5 ปีที่แล้ว +2

    por que no uso el else despues del if ??

    • @johancastaneda4529
      @johancastaneda4529 5 ปีที่แล้ว +2

      simple muchacho porque no estas estableciendo una condicion contraria por lo tanto el else no es necesario

  • @francisrivera2790
    @francisrivera2790 6 ปีที่แล้ว

    hola ernesto tengo una duda, como se aplicaria cada elemento del video si lo dividieras en modelo, vista y controlador?

  • @HerbaVinny00
    @HerbaVinny00 2 ปีที่แล้ว

    Hola Ernesto... porque el Titulo de la ventana se muestra al centro? ya revice el listado varias veces y no encuentro el porque... Gracias de antemano.

  • @gomezmarco
    @gomezmarco 5 ปีที่แล้ว +1

    Alguien sabe como hacer para que el titulo me salga a la izquierda?, al lado del icono del café. Por defecto me sale centrado.

  • @joseantoniodiazgarcia6652
    @joseantoniodiazgarcia6652 5 ปีที่แล้ว +1

    Hola Ernesto muy buen curso tengo una duda en el tema #29 mi interfas no me aparece ni el usuario ni la etiqueta solo el botón y me aparece en el centro cheque coordenadas pero son las mismas que las tuyas me podrías ayudar saludos

    • @diego_guzman
      @diego_guzman 2 ปีที่แล้ว

      compártenos el código y miramos

  • @Usuario-Molesto
    @Usuario-Molesto 9 หลายเดือนก่อน

  • @sebastianmostazo6277
    @sebastianmostazo6277 4 ปีที่แล้ว

    Genio

  • @imyeti9483
    @imyeti9483 2 ปีที่แล้ว

    Estuve leyendo el código un buen rato y el único error era que puse punto en lugar de coms en el botón,un saludo y no sé rindan nunca

  • @arkudi95
    @arkudi95 5 ปีที่แล้ว

    Una duda Porque en el video anterior al utilizar el método .getSource no se incluyeron los paréntesis y en este video si?

  • @zn5524
    @zn5524 5 ปีที่แล้ว

    maestro

  • @gabrielwtersdgwaed1670
    @gabrielwtersdgwaed1670 3 ปีที่แล้ว

    porque no me deja usar .setBounds?

  • @daxlife1
    @daxlife1 6 ปีที่แล้ว +3

    Y si te digo que en la Universidad JAMAS me enseñaron esto ! unicamente se preocuparon por enseñarme lo que es en si la POO pero nunca recibi una clase que se tratase de interfaces graficas ! igual se que todo esto se simplifica con los asistentes que existen en los IDES pero coño pase 5 casi 6 años de mi universidad y jamas me enseñaron esto !

    • @LaGeekipediaDeErnesto
      @LaGeekipediaDeErnesto  6 ปีที่แล้ว

      ¡Hola!, lamentablemente las universidades se apegan a los programas que les establecen.
      No obstante, es un gusto saber que el contenido ha resultado de tu agrado. Saludos.

  • @felipesuazo1740
    @felipesuazo1740 4 ปีที่แล้ว

    Hola, me sale el siguiente error:
    Exception in thread "main" java.lang.NullPointerException
    at Formulario.(Formulario.java:20)
    at Formulario.main(Formulario.java:32)

  • @matiasjimenez5478
    @matiasjimenez5478 3 ปีที่แล้ว +2

    Dato curioso: Pedimos informacion al usuario sin utilizar el scanner no?

    • @Un-randowm
      @Un-randowm ปีที่แล้ว

      Pues sí pero para eso esa el GUI

  • @analiasavino8845
    @analiasavino8845 4 ปีที่แล้ว

    Hola Ernesto quiero consultar si o si siempre que estemos creando formularios con lo heredado de la carpeta JFrame debemos llamar a nuestra clase Formulario?

    • @alejandroosorio2248
      @alejandroosorio2248 4 ปีที่แล้ว +2

      la clase se puede llamar como tu quieras, pero recuerda usar el miso nombre
      siempre que invoques la clase

    • @analiasavino8845
      @analiasavino8845 4 ปีที่แล้ว

      @@alejandroosorio2248 Barbaro gracias

  • @cristiandiaz553
    @cristiandiaz553 4 ปีที่แล้ว +4

    Yo no me acuerdo de en qué vídeo vimos el setTitle :C

  • @albertojosemedinaencalada2772
    @albertojosemedinaencalada2772 4 ปีที่แล้ว

    HOLA ERNESTO NO ME APARECE LOS BOTONES NI EL JLABEL ?? POR QUE ? :(

  • @jesusgaelleijareyna9628
    @jesusgaelleijareyna9628 6 ปีที่แล้ว

    aqui mi codigo con una interfas donde le puse dos etiquetas y la segunda es interactiva junto con el boton aceptar por favor si desean aportar algun comentario acerca de comomejorarla se agradece =)
    textfield1 = new JTextField();
    textfield1.setBounds(120,17,150,20);
    add(textfield1);
    boton1 = new JButton("aceptar");
    boton1.setBounds(10,80,100,30);
    add(boton1);
    boton1.addActionListener(this);
    boton2 = new JButton("cerrar");
    boton2.setBounds(150,80,100,30);
    add(boton2);
    boton2.addActionListener(this);

    setTitle("experimentodeinterfas");
    }
    public void actionPerformed(ActionEvent e){
    if(e.getSource() == boton1){
    String texto = textfield1.getText();
    label2.setText(texto);
    }
    if(e.getSource() == boton2){
    System.exit(0);

    }
    }
    public static void main(String args[]){
    Formulario formulario1 = new Formulario();
    formulario1.setBounds(0,0,300,150);
    formulario1.setVisible(true);
    formulario1.setResizable(false);
    formulario1.setLocationRelativeTo(null);
    }
    }

  • @10meloalan
    @10meloalan 7 ปีที่แล้ว +1

    de verdad es necesario utilizar la estructura condicional si solo hay un boton?;
    yo lo probe y me funciono si el.

    • @LaGeekipediaDeErnesto
      @LaGeekipediaDeErnesto  7 ปีที่แล้ว +2

      ¡Hola!, básicamente lo que intento al utilizar las estructuras condicionales, es fomentar la validación de los eventos y controlar de manera anticipada las acciones de los componentes. Eso es lo que yo recomiendo, sin embargo, la lógica de cada programador es diferente y por supuesto que existen distintas maneras de lograr el mismo resultado. Saludos.

    • @dylanlore7745
      @dylanlore7745 6 ปีที่แล้ว

      OLLE AMIGO TU SABES PORQUE ME SALE ERROR EN ESTA PARTE DEL CODIGO. NO ENTIENDO PORQUE SI ESTA BIEN ESCRITO AQUI ES DONDE ME SALE EL ERROR
      public class Registro extends implemets ActionListener{

    • @10meloalan
      @10meloalan 6 ปีที่แล้ว +2

      Dylan Lore es ... extends JFrame ...

    • @dylanlore7745
      @dylanlore7745 6 ปีที่แล้ว

      Alan OP es cierto muchas gracias

    • @10meloalan
      @10meloalan 6 ปีที่แล้ว

      dE de nada 😀

  • @brunoconti498
    @brunoconti498 4 ปีที่แล้ว

    Alguien sabe porque me salta error en todos los symbolo, como si no los reconociera

  • @alejandrohernandezhernande3604
    @alejandrohernandezhernande3604 6 ปีที่แล้ว +5

    Para el evento al presionar la tecla enter, como lo llamo?

  • @jesusgabriel6309
    @jesusgabriel6309 6 ปีที่แล้ว +1

    Alguien me puede ayudar me sale este error:
    Formulario is not abstract and does not override abstract method actionPerformed(ActionEvent) in ActionListener
    public class Formulario extends JFrame implements ActionListener{
    ^
    1 error

    • @thezeusvg8800
      @thezeusvg8800 6 ปีที่แล้ว

      Jesus Gabriel Fijate si el método de ActionPerformed está bien escrito.

  • @leogonzalez2315
    @leogonzalez2315 3 ปีที่แล้ว

    No me jala su código en mi compu :(

  • @emiveras8092
    @emiveras8092 7 ปีที่แล้ว

    cuanto falta para hacer aplicaciones para móviles

    • @LaGeekipediaDeErnesto
      @LaGeekipediaDeErnesto  7 ปีที่แล้ว +2

      Que tal, publicare el curso de Android una vez que concluya el curso de JAVA.
      Saludos.

    • @emiveras8092
      @emiveras8092 7 ปีที่แล้ว

      La Geekipedia De Ernesto" ok y gracias ,me puedes decir en tu opinión cuanto capítulos crea que se va a llevar el curso de java "

  • @denderpernia2270
    @denderpernia2270 6 ปีที่แล้ว

    Hola Ernesto, te felicito por los cursos, todo muy clro y facil de entender, estoy intentando compilar mi código pero me arroja este error:
    javac: invalid flag: VentanaUsuario,java
    Usage: javac
    use -help for a list of possible options
    por favor ayúdame porque lo he revisado y comparado con el tuyo y otros y no logro ver el error.
    Mil Gracias de antemano.
    Dender
    Venezuela
    PD: te anexo el código:
    import javax.swing.*;
    import java.awt.event.*;
    public class VentanaUsuario extends JFrame implements ActionListener{
    private JButton boton1, boton2;
    private JLabel label1;
    private JTextField textoin;
    public VentanaUsuario(){
    setLayout(null);
    boton1 = new JButton("ACEPTAR");
    boton1.setBounds(10,80,100,30);
    add(boton1);
    boton1.addActionListener(this);
    boton2 = new JButton("SALIR");
    boton2.setBounds(110,80,100,30);
    add(boton2);
    boton2.addActionListener(this);
    label1 = new JLabel("USUARIO:");
    label1.setBounds(10,10,100,30);
    add(label1);
    textoin = new JTextField();
    textoin.setBounds(120,17,150,20);
    add(textoin);
    }
    public void actionPerformed(ActionEvent seleccion){
    if(seleccion.getSource() == boton1){
    String texto = textoin.getText();
    setTitle(texto);
    }
    if(seleccion.getSource() == boton2){
    System.exit(0);
    }
    }
    public static void main(String agrs[]){
    VentanaUsuario ventana1 = new VentanaUsuario();
    ventana1.setBounds(0,0,300,150);
    ventana1.setVisible(true);
    ventana1.setResizable(false);
    ventana1.setLocationRelativeTo(null);
    }
    }

  • @katsu7188
    @katsu7188 6 ปีที่แล้ว

    ¿Cómo hago para en vez de obtener texto y meterlo a una String con .getText, poder obtener ese texto y meterlo en un Int o en un Double?, por favor responde :(

    • @katsu7188
      @katsu7188 6 ปีที่แล้ว +1

      Solo me puse a investigar un poco y conseguí una manera:
      (variable)(nombre)=Double.parseDouble(String);
      double BsS = Double.parseDouble(Field);
      Así que guardé el texto de JTextField en un String y lo transformé de String a Double.
      Luego tenía un problema porque ese número lo quería dividir entre 100.000,00. Pero cuando la persona ingresaba 10 millones o más (10.000.000) salía 1.0E69 o algo así. Entonces tuve que investigar y conseguí una librería llamada
      import java.math.BigDecimal;
      Que era parecida a la Double pero con más espacio, según entendí el espacio es infinito, hasta donde pueda la pc antes de quedarse sin memoria o algo así :) Luego solo declaraba una variable llamada BigDecimal, con esta sintaxis:
      (variable) (nombre) = (declaración) (Valor)
      BigDecimal multiplicacion = new BigDecimal(BsS * 100000);
      Como ya había pasado el texto al Double de nombre BsS, y no sabía como pasar texto de String a BigDecimal, decidí utilizar el Double y hacer que cumpla la función que le pedí, pero almacenando todo en BigDecimal para que no haya problema.
      No es mucho pero estoy orgulloso de haber resuelto el problema por mí mismo, lo peor es que Justo me quedé sin internet cuando conseguí que import java.math.BigDecimal; era una librería, así que lo demás lo tuve que inventar. Gracias Ernesto que me ayudó a comprender como funciona java y mejorar mi lógica de programación

  • @crsspr7431
    @crsspr7431 5 ปีที่แล้ว

    Por qué no hace falta inicializar la variable texto?

  • @cristiangonzalezdiaz6777
    @cristiangonzalezdiaz6777 3 ปีที่แล้ว

    Aquí en 2021 a los 15 años, tratando de ser autodidactico, ya que la pandemia no coopera

  • @lucianotute03
    @lucianotute03 7 ปีที่แล้ว +4

    Hola ernesto! tengo un problema. primero te quiero felicitar y agradecer por compartir tu conocimiento . al agregar el sig texto a mi clase me tira error "implements ActionListener" y el programa obviamente no se ejecuta bien. te adjunto el nombre del error que me muestra eclipce: " Multiple markers at this line
    - The serializable class Formularios does not declare a static final serialVersionUID field of type long
    - The type Formularios must implement the inherited abstract method
    ActionListener.actionPerformed(ActionEvent)" espero tu respuesta gracias!

    • @slartibartfastm9714
      @slartibartfastm9714 7 ปีที่แล้ว

      A mí me salió un error parecido, y el problema fue que es escribí mal el nombre del método actionPerformed.

    • @daxlife1
      @daxlife1 6 ปีที่แล้ว

      ese error te lo lanza por que no estas invocando la interfaz o no estas implementando todos sus metodos es una de las reglas de las interfaces cuando invoques una debes implementar todos los metodos que esta contenga o si no tu clase debe ser Abstracta pero ese es otro tema !°

  • @user-fr6gn6vl2z
    @user-fr6gn6vl2z 4 ปีที่แล้ว

    les recomiendo usar visual estudio code que les guarda el archivo .java y ademas tiene una consola de previzualizaciones

    • @Un-randowm
      @Un-randowm ปีที่แล้ว

      El problema es que Ernesto dijo que usáramos bloc de notas para aprender más

    • @user-fr6gn6vl2z
      @user-fr6gn6vl2z ปีที่แล้ว

      @@Un-randowm si se, mi yo de 2020 les recomendaba eso porque asi se hacia mas rapido el trabajo. de todas formas cada uno elije como trabajar.

  • @LuisHernandez-sk3dm
    @LuisHernandez-sk3dm 6 ปีที่แล้ว +1

    Con su boton de cierre.
    import javax.swing.*;
    import java.awt.event.*;
    public class Formulario extends JFrame implements ActionListener{
    private JTextField textfield_1;
    private JLabel label_1;
    private JButton boton_1, boton_2;
    public Formulario(){
    setLayout(null);
    label_1 = new JLabel("Usuario");
    label_1.setBounds(10,10,100,30);
    add(label_1);
    textfield_1 = new JTextField();
    textfield_1.setBounds(120,17,150,20);
    add(textfield_1);
    boton_1 = new JButton("Aceptar");
    boton_1.setBounds(10,80,100,30);
    add(boton_1);
    boton_1.addActionListener(this);
    boton_2 = new JButton("Cerrar");
    boton_2.setBounds(170,80,100,30);
    add(boton_2);
    boton_2.addActionListener(this);
    }
    public void actionPerformed(ActionEvent e){
    if(e.getSource() == boton_1){
    String texto = textfield_1.getText();
    setTitle(texto);
    } else if(e.getSource() == boton_2){
    System.exit(0);
    }
    }
    public static void main(String args[]){
    Formulario formulario_1 = new Formulario();
    formulario_1.setBounds(0,0,300,150);
    formulario_1.setResizable(false);
    formulario_1.setVisible(true);
    formulario_1.setLocationRelativeTo(null);
    }
    }

    • @CANALVETERAN
      @CANALVETERAN 6 ปีที่แล้ว

      te falto un pequeño detalle no es la gran cosa pero te va gustar que tu ventana tenga un titulo
      Formulario formulario_1 = new Formulario();
      formulario_1.setTitle("Bienvenido");
      formulario_1.setBounds(0,0,300,150);
      formulario_1.setResizable(false);
      formulario_1.setVisible(true);
      formulario_1.setLocationRelativeTo(null);

    • @gomezmarco
      @gomezmarco 5 ปีที่แล้ว

      Creo que no es necesario poner else if , ya que estamos hablando de eventos independientes. Pero muy bueno, yo tambien estoy aprendiendo mucho.

  • @Luccyan_art
    @Luccyan_art 3 ปีที่แล้ว

    El código me funciona cuando lo ejecuto desde netbeans.
    Cuando trato de compilarlo desde cmd o vscode me da error . . .
    vs code: "The method getText() is undefined for the type JTextField"
    cmd : - cannot find symbol
    - method getText();
    - variable textfield1 of type JTextField

    • @ivanastorga1641
      @ivanastorga1641 2 ปีที่แล้ว

      Hola Omar, me pasa lo mismo, pudiste solucionarlo?

    • @Luccyan_art
      @Luccyan_art 2 ปีที่แล้ว

      @@ivanastorga1641 No, al final lo deje así.

  • @DiegoPerez01
    @DiegoPerez01 ปีที่แล้ว

    por que me dice que mi clase no es abstracta?:(

  • @gilbertolameiro5648
    @gilbertolameiro5648 5 ปีที่แล้ว

    like

  • @dreadsean7233
    @dreadsean7233 4 ปีที่แล้ว +2

    like si llegaste hasta aqui

  • @riandryconnor4484
    @riandryconnor4484 4 ปีที่แล้ว

    Por favor alguien que me explique por que me da un error en la clase si pongo el nombre bien .

    • @Juan-pn9zc
      @Juan-pn9zc 4 ปีที่แล้ว +1

      depronto no estas en la carpeta en la cual esta el archivo

  • @Dominic0528
    @Dominic0528 5 ปีที่แล้ว +1

    balla ! se me hace muy dificil todo lo relativo a intefaz grafica. aun no eh podido comprender nada.

    • @TZAR_TZAR
      @TZAR_TZAR 5 ปีที่แล้ว

      es cuestión de repetir, tampoco lo entendí a la primera

    • @jorgeangulovalencia4623
      @jorgeangulovalencia4623 4 ปีที่แล้ว

      Claro a la primera nadie

  • @AxelDup
    @AxelDup 6 ปีที่แล้ว +1

    no me cambia el titulo de la interfaz :S, porque?
    import javax.swing.*;
    import java.awt.event.*;
    public class Formulario extends JFrame implements ActionListener{
    public static void main(String args[]){
    Formulario formulario1 = new Formulario();
    formulario1.setTitle("Bienvenido");
    formulario1.setBounds(0,0,300,150);
    formulario1.setVisible(true);
    formulario1.setResizable(false);
    formulario1.setLocationRelativeTo(null);
    }
    private JTextField textfield1;
    private JLabel label1;
    private JButton aceptar;
    public Formulario(){
    setLayout(null);
    textfield1 = new JTextField();
    textfield1.setBounds(120,15,150,30);
    add(textfield1);
    label1 = new JLabel("Usuario:");
    label1.setBounds(15,15,100,30);
    add(label1);
    aceptar = new JButton("Aceptar");
    aceptar.setBounds(15,50,100,30);
    add(aceptar);
    }
    public void actionPerformed(ActionEvent e){
    if(e.getSource() == aceptar){
    String title = textfield1.getText();
    setTitle(title);
    }
    }
    }

    • @AllenekaFandubs
      @AllenekaFandubs 6 ปีที่แล้ว +3

      Te falto agregar esta linea dentro del constructor:
      aceptar.addActionListener(this);
      Saludos!

  • @w1sec0d
    @w1sec0d 4 ปีที่แล้ว

    Adjunto mi código, con boton exit y diferente diseño:
    import java.awt.event.*;
    import javax.swing.*;
    public class Form extends JFrame implements ActionListener{
    private JLabel label,title;
    private JTextField user;
    private JButton exit,accept;

    public Form(){
    setLayout(null);
    title = new JLabel("Log In");
    title.setBounds(125,10,50,20);
    add(title);

    label = new JLabel("User:");
    label.setBounds(25,37,100,30);
    add(label);
    exit = new JButton("Exit");
    exit.setBounds(150,80,100,30);
    exit.addActionListener(this);
    add(exit);

    accept = new JButton("Accept");
    accept.setBounds(25,80,100,30);
    accept.addActionListener(this);
    add(accept);
    user = new JTextField();
    user.setBounds(100,40,150,25);
    add(user);
    }
    public void actionPerformed(ActionEvent click){
    if(click.getSource() == exit){
    System.exit(0);
    }else if(click.getSource() == accept){
    setTitle(user.getText());
    }
    }
    public static void main(String args[]){
    Form one = new Form();
    one.setBounds(0,0,290,175);
    one.setResizable(false);
    one.setLocationRelativeTo(null);
    one.setVisible(true);
    }
    }