POUZE DNES: Získej 90 % extra kreditů ZDARMA při dobití od 1199 kreditů s promo kódem REKVALIFIKACE90. Zjisti více:
POSLEDNÍ ŠANCE do 29. 8. 2025: Pracuj až o 60 % rychleji díky akreditovanému kurzu Specialista na AI. Nyní již od 0 Kč. Zjisti více:

Diskuze – Lekce 3 - Java GUI - událost

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
Avatar
Honza_W
Člen
Avatar
Honza_W:12.6.2017 22:04

JTextField, nezobrazuje. Zobrazuje Label, do JTextFieldu jen píšeš.

 
Odpovědět
12.6.2017 22:04
Avatar
Yveta Kršková:6.11.2023 13:46

Ahoj, tak nejnovější NetBeans 19 mi tu třídu pustí dál vnořenou jenom jako abstraktní a má k ní v knihovně nastavenou metodu actionPerformed k Overridu. Jinak to jde teď i takhle přes lambda výraz:

public Gui()
   {
      super("Kalkulačka");
      FlowLayout layout = new FlowLayout();
       setLayout(layout);
     // setLayout(new FlowLayout()); druhá možnost, ale nedá se pak volat přímo názvem

     Color barva = new Color(150,75,130);

     panel1 = new JPanel(); //komponenty v panelu nereagují na změnu velikosti okna!!
     panel1.setBackground(Color.red);//ukáže a odliší jednotlivé panely
     add(panel1);

     panel2 = new JPanel();
     panel2.setBackground(barva);
     add(panel2);

      cislo1Field = new JTextField("1. číslo", 5);
      panel1.add(cislo1Field);

      cislo2Field = new JTextField("2. číslo", 5);
      panel1.add(cislo2Field);

      sectiBut = new JButton("Sečti");
      panel1.add(sectiBut);
      sectiBut.addActionListener((ActionEvent e) -> {
          int  prvniCislo = Integer.parseInt(cislo1Field.getText());
          int druheCislo = Integer.parseInt(cislo2Field.getText());
          int vysledek = prvniCislo + druheCislo;
          vysledekLab.setText("Výsledek je: " + vysledek);
      });

      vysledekLab = new JLabel("Výsledek je: ");
      panel2.add(vysledekLab);

   }

..bez té vnořené třídy..

Odpovědět
6.11.2023 13:46
:D :D :D
Avatar
Lubor Pešek
Člen
Avatar
Lubor Pešek:21. července 12:39

Beru to, že swing (tak jako všechna destkopová technologie) je zastaralá, takže už se na tomto nepracuje, ale i tak, pokud takový tutoriál tady je, tak by se mohl aspoň aktualizovat.
Lambda syntaxí, překlepy v textech (kupříkladu se tu píše "třída" ActionListener, ne Interface atd.)

Ale říkám, tento koment je nejspíš zbytečný, protože v době, kdy se předhánějí web aplikace a mobilní appky, tak řešit nějakou desktopovou technologii je dokonce směšné.

Odpovědět
21. července 12:39
Existují dva způsoby, jak vyřešit problém. Za prvé vyhoďte počítač z okna. Za druhé vyhoďte okna z počítače.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 23.