Stránka 1 z 1

TextField

Napsal: 04 čer 2014 12:42
od Fantomas
Ahoj, asi 2 hodiny se trápím s jednou věcí - nejde mi v JavaFX přečíst z TextFieldu text. Mám metodu, kde zakládám TextField:

Kód: Vybrat vše

 private TextField firstNumber() {
        TextField text = new TextField();
        text.setMaxSize(50d, 10d);
        return text;
    }



A po každém kliknutí Button tlačítka chci, aby se mi do konzole vypsalo číslo, které jsem do TextFieldu napsal. Stále mi to píše chyby. Nevíte, jak na to?

V metodě tlacitko mám toto:

Kód: Vybrat vše

private Button tlacitko() {
        Button tlacitko = new Button("GO!");

        tlacitko.setOnMouseClicked(new EventHandler<MouseEvent>() {

            @Override
            public void handle(MouseEvent t) {
               System.out.println(firstNumber().getText());

            }
        });
        return tlacitko;
    }


Děkuji

Re: TextField

Napsal: 04 čer 2014 13:46
od domitea
Jaké chyby to jsou ?

Re: TextField

Napsal: 04 čer 2014 14:10
od Fantomas
Dobrá otázka. Chyby jsem nekonkretizoval, neboť mi to píše prázdný řádek. Ono v tom opravdu zezačátku nic není (když dám TextFieldu parametr "1", tak to vypíše 1 a pak když číslo změním v aplikaci např na číslo "2", stále to vypíše "1").

Potřebuji nějak zajistit kontrolování toho, co tam uživatel napíše.

--- Doplnění předchozího příspěvku (04 Čer 2014 14:51) ---

ale když tam dám něco jinýho, např. 2, tak to stejně napíše 1

Re: TextField

Napsal: 04 čer 2014 15:16
od omilis
Sice JavaFX neznám, ale nejspíše bude problém v tom, že firstNumber() vytváří novou instanci TextField a tu pak vrací. Takže když pak uděláš tohle
firstNumber().getText()
tak se vytvoří nová instance a getText se volá nad ní.

Re: TextField

Napsal: 04 čer 2014 15:25
od Fantomas
Děkuji mockrát. V tom je ta blbá chyba. Už to funguje.