NOVINKA! E-learningové kurzy umělé inteligence. Nyní AI za nejlepší ceny. Zjisti více:
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!
Avatar
vlastajuracka:14.9.2016 15:26

Ahoj ldii mám tkový problém... Mám třídní proměnou a když chci tu proměnou použít je nulová.... Viz příklad
Mám vytvořené fxml a tadle třída je jako controller možná je to tím

public double cislo;
public class Prikad implements Initializable {
        public void nastav(double cislo) {
                this.cislo = cislo;
        }
}

Nyní když použiju metodu v nějaké třídě a nastávím tím proměnou cislo její hodnota je stále 0.... Ale když je statická vše je v pořádku moc prosím o pomoc

 
Odpovědět
14.9.2016 15:26
Avatar
pocitac770
Tvůrce
Avatar
Odpovídá na vlastajuracka
pocitac770:14.9.2016 15:52

Takhle z prvního pohledu to vypadá, že máš proměnnou deklarovanou nad třídou, ale asi jsi to spíš špatně napsal. Pokud to je normálně ve třídě, tak nevím, co by na tom nefungovalo, mohl by jsi tedy dodat více kódu?

 
Nahoru Odpovědět
14.9.2016 15:52
Avatar
Odpovídá na pocitac770
vlastajuracka:14.9.2016 17:32

Jo omlouvám se samozřejmě proměnná má být ve třídě :p Jak říkam toto je třída Controller ve které je použit fxml návrh není to tím ?

 
Nahoru Odpovědět
14.9.2016 17:32
Avatar
pocitac770
Tvůrce
Avatar
Odpovídá na vlastajuracka
pocitac770:14.9.2016 18:01

Ne, není, akorát si musíš uvědomit, že metodu voláš na instanci, tudíž si musíš předávat pořád jednu a tu samou... "aktivní", "zobrazující" instanci controlleru, kterou získáš přes this, například

public void initialize(){
        VypocetniObjekt objekt = new VypocetniObjekt(this);
}

případně pokud jde například o nějaké zobrazované číslo např v TextFieldu, tak můžeš proměnnou nabindovat přes Property, což je při práci s FXML mnohem ladnějším řešením

Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
 
Nahoru Odpovědět
14.9.2016 18:01
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 4 zpráv z 4.