NOVINKA - Online rekvalifikační kurz Java programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!

Diskuze: Predavania parametrov v JavaFX

V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
Marek Šimon
Člen
Avatar
Marek Šimon:10.8.2016 21:00

Ahojte.. môže mi niektor prosím vysvetliť ten príspevok označený ako riešenie na StackOverflow ??? Akurát to potrebujem do môjho projektu (použiť vybranú položku z ListView a byť schopný preniesť ju (používať jej jedinečné atribúty) v novom okne.. to okno slúži niečo ako ZOBRAZIŤ DETAILY, ale je tam možnosť aj úpravy tých dát.. ale neveim sa k tomu dostať, keďže netuším ako presunúť ten objekt ďalej k použitiu..

 
Odpovědět
10.8.2016 21:00
Avatar
Odpovídá na Marek Šimon
Petr Štechmüller:10.8.2016 21:26

Ahoj, nestačí toto jako odpověď?

http://stackoverflow.com/a/36926522

Nahoru Odpovědět
10.8.2016 21:26
Pokud spolu kód a komentář nekorespondují, budou patrně oba chybné
Avatar
Marek Šimon
Člen
Avatar
Odpovídá na Petr Štechmüller
Marek Šimon:10.8.2016 21:37

No mne skôr sa jedná o ten princíp o to vysvetlenie.. lebo tot docela nepoberám. Neviem kde čo volať...

 
Nahoru Odpovědět
10.8.2016 21:37
Avatar
Odpovídá na Marek Šimon
Petr Štechmüller:10.8.2016 21:44

OK, hoď sem kód, kde vytváříš ten druhý formulář, do kterého chceš poslat data

Nahoru Odpovědět
10.8.2016 21:44
Pokud spolu kód a komentář nekorespondují, budou patrně oba chybné
Avatar
Marek Šimon
Člen
Avatar
Odpovídá na Petr Štechmüller
Marek Šimon:10.8.2016 22:09

Tato metoda obsluhuje tlacitko, ktore vyhodi nove okno.. je v hlavnom controllery, kde je aj ListView a ja potrebujem ziskat oznacenim nejaky objekt z listu a ked kliknes na tlacitko, tak pouzije data toho objektu a vyplnim s nim textfieldy na tom novom okne.

public void handleDetailsButton() throws IOException {
        Stage stage = new Stage();
        Parent root = FXMLLoader.load
                (getClass().getResource("DetailsDocument.fxml"));

        stage.setScene(new Scene(root));
        stage.setTitle("Detaily poznamky");
        stage.initModality(Modality.WINDOW_MODAL);
        stage.initOwner(detailsButton.getScene().getWindow());
        stage.setResizable(false);
        stage.setOnHiding( e -> refresh());

        stage.showAndWait();
    }
 
Nahoru Odpovědět
10.8.2016 22:09
Avatar
Odpovídá na Marek Šimon
Petr Štechmüller:10.8.2016 22:16

Jedu čistě podle návodu na stackoverflow.

public void handleDetailsButton() throws IOException {
        Stage stage = new Stage();
        FXMLLoader loader = new FXMLLoader(getClass().getResource("DetailsDocument.fxml"));
        Parent root = loader.load;

        // Teď příjde to důležité
        TvujKontroler controller = loader.<TvujKontroler>getControler();
        // Zde budeš volat tvojí metodu, kde budeš předávat parametry
        controller.tvojeMetoda();

        stage.setScene(new Scene(root));
        stage.setTitle("Detaily poznamky");
        stage.initModality(Modality.WINDOW_MODAL);
        stage.initOwner(detailsButton.getScene().getWindow());
        stage.setResizable(false);
        stage.setOnHiding( e -> refresh());

        stage.showAndWait();
    }

Vysvětlivky:
TvujKontroler je třída, která je definovaná v souboru DetailsDocumen­t.fxml jako fx:controller (nebo tak nějak)
Kdybys nečemu nerozuměl, nebo to nefungovalo, tak ještě napiš.

Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
Nahoru Odpovědět
10.8.2016 22:16
Pokud spolu kód a komentář nekorespondují, budou patrně oba chybné
Avatar
Marek Šimon
Člen
Avatar
Odpovídá na Petr Štechmüller
Marek Šimon:10.8.2016 22:43

Fakt moc ďakujem, pomohlo mi to veľmi. A to si postupoval podľa odpovede, čo si mi poslal alebo podľa toho riešenia pre ten thread?

 
Nahoru Odpovědět
10.8.2016 22:43
Avatar
Odpovídá na Marek Šimon
Petr Štechmüller:10.8.2016 22:46

Postupoval jsem podle toho odkazu, co jsem já posílal. Ten odkaz byl mimo jiné řešením vlákna, které jsi Ty uváděl.

Nahoru Odpovědět
10.8.2016 22:46
Pokud spolu kód a komentář nekorespondují, budou patrně oba chybné
Avatar
Marek Šimon
Člen
Avatar
Odpovídá na Petr Štechmüller
Marek Šimon:10.8.2016 22:48

Teraz keď na to pozerám znova, tak je to tak jasné :D Díky znova za čas :)

 
Nahoru Odpovědět
10.8.2016 22:48
Avatar
Odpovídá na Marek Šimon
Petr Štechmüller:10.8.2016 22:51

Tak hlavně že to pomohlo.

Nahoru Odpovědět
10.8.2016 22:51
Pokud spolu kód a komentář nekorespondují, budou patrně oba chybné
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 10 zpráv z 10.