Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Tomáš
Člen
Avatar
Tomáš:31.8.2014 0:30

Zdravím přátelé
Předem upozorňuji že jsem začátečník a Javu se učím cca 3 měsíce z knih a tu.Přejdeme k věci,chtěl bych se zeptat jak by se dalo udělat "jakoby" menu v Java Swing.Když si představíte hru kde je Play další je setting,exit atd tohle by se dalo udělat přes tlačítka (alespoň mě by to stačilo)Zakopanej pes je v tom jak udělat aby mi při kliknutí přešlo na to příslušné okno napadlo mě toto

DalsiJFrame dalsiJFrame = new DalsiJFrame();
dalsiJFrame.set­LocationRelati­veTo(null);
dalsiJFrame.set­Visible(true);

ale tím pádem budu mít dvě okna to by se dalo vyřešit asi tímto
MenuJFrame.set­Visible(false)
Ale tím ho jen zneviditelním a to tedy nevím jestli by bylo dobré bo neni nějaký způsob jak to okno zavřít?
Nebo nějaké lepší nápady příjmám potřebuji s tím poradit a už se v tom brodím dost dlouho a nic mě nenapadá .
Všem děkuju moc za odpovědi a všechny rady Dík moc.

Editováno 31.8.2014 0:30
 
Odpovědět
31.8.2014 0:30
Avatar
Hartrik
Tvůrce
Avatar
Odpovídá na Tomáš
Hartrik:31.8.2014 12:08

Nemusíš vytvářet nová okna, lepší je mít jedno okno, a v něm měnit obsah. Ideální by asi bylo použít CardLayout. http://docs.oracle.com/…ut/card.html

 
Nahoru Odpovědět
31.8.2014 12:08
Avatar
Tomáš
Člen
Avatar
Odpovídá na Hartrik
Tomáš:31.8.2014 15:49

Děkuji strašně moc.Moc si mi pomohl :)

 
Nahoru Odpovědět
31.8.2014 15:49
Avatar
Tomáš
Člen
Avatar
Odpovídá na Hartrik
Tomáš:4.9.2014 20:42

Chtěl bych se ještě zeptat,když ve Swingu jsme použil Card Layout tak co použiji když to dělám pro android ? nebo jak se to tam řeší ? (Dělám v eclipse)

 
Nahoru Odpovědět
4.9.2014 20:42
Avatar
Hartrik
Tvůrce
Avatar
Odpovídá na Tomáš
Hartrik:5.9.2014 16:12

Tak to netuším, do Androidu nedělám :)

 
Nahoru Odpovědět
5.9.2014 16:12
Avatar
Tomáš
Člen
Avatar
Odpovídá na Hartrik
Tomáš:5.9.2014 19:13

Už jsem na to přišel sám :)) určo budou i jiný způsoby ale tohle funguje jak má tak proč to měnit :)

 
Nahoru Odpovědět
5.9.2014 19:13
Avatar
Tomáš
Člen
Avatar
Odpovídá na Hartrik
Tomáš:5.9.2014 20:56

Mám ještě dotaz :) mám generátor náhodných čísel který mi generuje čísla od 0 do počtu který si stanovím.Jenže potřeboval bych ošetřit že když si nastavím aby mi vybíral čísla třeba od 0 do 10 tak se mi strašně stává že mi třeba 3x po sobě vygeneruje stejné číslo,jak bych to měl ošetřit aby nemohlo bejt stejné ? ten generátor se zapne,když zmáčknu tlačítko a pod každým číslem mám např slovo které se ukáže jenže když spadne 3x stejné číslo tak to vypadá že to nefunguje a potřeboval bych to nějak pošéfovat.

 
Nahoru Odpovědět
5.9.2014 20:56
Avatar
Hartrik
Tvůrce
Avatar
Odpovídá na Tomáš
Hartrik:6.9.2014 14:21

Jednoduše si uložíš poslední vygenerované číslo a příště generuješ dokud nepadne něco jiného. Nové číslo si zase uložíš jako poslední.

 
Nahoru Odpovědět
6.9.2014 14:21
Avatar
Tomáš
Člen
Avatar
Odpovídá na Hartrik
Tomáš:6.9.2014 16:40

no to mě napadlo ale když mám číslo třeba i pod tím je to uložené číslo vygenerované udělám proměnnou třeba "a" do který se to přiřadí takže a = i ; tím tedy dám a hodnotu z i .Jenže když vygeneruju nové tak se rovnou zase uloží a přepíše ne ?

 
Nahoru Odpovědět
6.9.2014 16:40
Avatar
Nahoru Odpovědět
6.9.2014 19:49
Pokud neděláš chyby, nepracuješ na dostatečně těžkých problémech.
Avatar
Hartrik
Tvůrce
Avatar
Odpovídá na Tomáš
Hartrik:7.9.2014 16:44

Tak to zkus. Když s tím nebudeš moci hnout, tak ti někdo poradí.

 
Nahoru Odpovědět
7.9.2014 16:44
Avatar
Matěj Černý
Tvůrce
Avatar
Odpovídá na Tomáš
Matěj Černý:10.11.2014 19:12

Zkus tohle:)

public class GeneratorCisel {

        private int PosledniCislo;

        public int genCisla(int maxCislo){
                boolean Invalid = true;
                int vystup = 0;
                Random rand = new Random();
                while (Invalid){
                        vystup = rand.nextInt(maxCislo);
                        if(vystup != this.PosledniCislo){
                                this.PosledniCislo = vystup;
                                Invalid  = false;
                        }
                }
                return vystup;
        }
}**
Editováno 10.11.2014 19:14
 
Nahoru Odpovědět
10.11.2014 19:12
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 12 zpráv z 12.