Zdravím,
narazil jsem na problémek, se kterým si se svými současnými znalosti Javy neumím poradit sám...situace je taková, že si programuju takovou menší grafickou "hru" - skládačku (obrázek rozsekanej na čtverečky, jeden čteverček chybí, různě se to rozhází a účelem je složit posouváním obrázek zpátky dohromady)...realizoval jsem to tak, že mám JPanel a v něm jsou pomocí GridBagLayoutu umístěný jednotlivý dílky - JButtony (resp. jejich drobně obohacení potomci) s obrázkem...všechno mi to funguje, krásně funguje posouvání po kliknutí, mám i automatický "míchání", ovšem co potřebuju udělat je kontrola "výhry", to jest, že jsou dílky ve správným pořadí
řešení, co se snažím realizovat je, že má každej dílek svoje "pořadový číslo" a po každým tahu se to prožene funkcí, která bude postupně koukat na dílky a porovnávat, jestli pořadové číslo odpovídá očekávanému...ovšem k tomu potřebuju to koukání - postupně po řádcích od pozice "vlevo nahoře" po pozici "vpravo dole"...a to nevím, jak se dělá...myslel jsem intuitivně, že to bude metoda "getComponentAt(x,y)", kterou JPanel (resp. JComponent) má, ovšem z toho mi lezou samý JPanely a ne instance tý tlačítkový třídy...tak buď to používám blbě a nebo to není ono
měl by někdo nějakej nápad? mě teda eště napadá udržovat si bokem číselnou tabulku s aktuálními pozicemi a kdyžtak to tak udělám, ale zas mi to nepřijde tak elegantní jako tohle
Java - Grafika - Výběr komponent "v pořadí"
- Ellrohir
- nováček
- Příspěvky: 49
- Registrován: prosinec 11
- Bydliště: Praha
- Pohlaví:
- Stav:
Offline
- Kontakt:
Java - Grafika - Výběr komponent "v pořadí"
"Zprávy mají velikost, třeba i nulovou, a mají nějaký význam, třeba i žádný."
Re: Java - Grafika - Výběr komponent "v pořadí"
S tím testováním ti moc neporadím (mrkni sem), takhle daleko jsem se v Javě ještě nedostal, ale dej si bacha na jednu věc: Loydova patnáctka se dá zamíchat do dvou stejně velkých skupin pozic, z nichž jen jedna je řešitelná! Nevím kolik dílků máš ty, ale je pravděpodobné že to bude platit i pro tebe, takže pro míchání nestačí použít generátor náhodných čísel, ale musí se buď postupně rozházet, nebo po zamíchání testovat složitelnost.
"Král Lávra má dlouhé oslí uši, král je ušatec!
(pravil K. H. Borovský o cenzuře internetu)
(pravil K. H. Borovský o cenzuře internetu)
- domitea
- Tvůrce článků
-
Level 4.5
- Příspěvky: 1971
- Registrován: červen 09
- Bydliště: Královehradecký kraj
- Pohlaví:
- Stav:
Offline
- Kontakt:
Re: Java - Grafika - Výběr komponent "v pořadí"
Co to napojit na dvourozměrné pole, kde každý díl bude mít své pořadové číslo?
--- Doplnění předchozího příspěvku (10 Pro 2011 22:04) ---
Co to napojit na dvourozměrné pole, kde každý díl bude mít své pořadové číslo?
--- Doplnění předchozího příspěvku (10 Pro 2011 22:04) ---
Co to napojit na dvourozměrné pole, kde každý díl bude mít své pořadové číslo?
- Ellrohir
- nováček
- Příspěvky: 49
- Registrován: prosinec 11
- Bydliště: Praha
- Pohlaví:
- Stav:
Offline
- Kontakt:
Re: Java - Grafika - Výběr komponent "v pořadí"
faraon: díky za upozornění, ale o tom vím a to jsem vyřešil tím, že to nemíchám nahodile, ale nechám počítač provést náhodně několik set regulérních tahů z výchozí pozice 
domitea: jo, to je to moje "alternativní řešení", který vzpomínám v druhým odstavci, ale mám za to, že nějak musí jít ke komponentě v jiný komponentě přistupovat přímo - už jenom proto, že to Java dokáže zobrazit, tak musí přeci vědět, kde která je...

domitea: jo, to je to moje "alternativní řešení", který vzpomínám v druhým odstavci, ale mám za to, že nějak musí jít ke komponentě v jiný komponentě přistupovat přímo - už jenom proto, že to Java dokáže zobrazit, tak musí přeci vědět, kde která je...

"Zprávy mají velikost, třeba i nulovou, a mají nějaký význam, třeba i žádný."
Re: Java - Grafika - Výběr komponent "v pořadí"
Určitě to nějak zjistit jde, když ten JPanel zobrazuje nějaký dilek.obrazek tak musí být možnost přečíst dilek.cislo, ale jak o tom přemýšlím, tak sledovat pozice dílků ve vlastním poli bude asi mnohonásobně rychlejší než posílat dotazy přes několik tříd tam a zase zpátky...
K těm kombinacím, ony jsou ve skutečnosti složitelné obě skupiny, ale do dvou konečných seskupení. První polovina se dá poskládat do původní Loydovy podoby:
zatímco druhá polovina musí mít "díru" na počátku:
K těm kombinacím, ony jsou ve skutečnosti složitelné obě skupiny, ale do dvou konečných seskupení. První polovina se dá poskládat do původní Loydovy podoby:
Kód: Vybrat vše
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 _
zatímco druhá polovina musí mít "díru" na počátku:
Kód: Vybrat vše
_ 1 2 3
4 5 6 7
8 9 10 11
12 13 14 15
"Král Lávra má dlouhé oslí uši, král je ušatec!
(pravil K. H. Borovský o cenzuře internetu)
(pravil K. H. Borovský o cenzuře internetu)
- Ellrohir
- nováček
- Příspěvky: 49
- Registrován: prosinec 11
- Bydliště: Praha
- Pohlaví:
- Stav:
Offline
- Kontakt:
Re: Java - Grafika - Výběr komponent "v pořadí"
udělal jsem to nakonec přes tu tabulku s pozicema...zabralo to v podstatě míň času, než kolik jsem věnoval dotazování tady
ale zas je pravda, že dokud jsem nezačal sepisovat konkrétně ten dotaz, tak mě ani nenapadlo to tak dělat 


"Zprávy mají velikost, třeba i nulovou, a mají nějaký význam, třeba i žádný."
-
- Mohlo by vás zajímat
- Odpovědi
- Zobrazení
- Poslední příspěvek
-
-
Poradí mi někdo dobré offline hry pro telefon nubia. Příloha(y)
od pidlo » 23 čer 2024 14:48 » v Mobily, tablety a jiná přenosná zařízení - 3
- 3912
-
od MrVoltz
Zobrazit poslední příspěvek
25 čer 2024 21:49
-
-
- 0
- 3523
-
od falco_dee
Zobrazit poslední příspěvek
12 led 2025 17:24
-
-
PC do 20k (pomoc s dovýběrem komponent)
od insider » 27 zář 2024 16:46 » v Rady s výběrem hw a sestavením PC - 11
- 4065
-
od insider
Zobrazit poslední příspěvek
03 říj 2024 09:03
-
-
- 1
- 1903
-
od Zivan
Zobrazit poslední příspěvek
01 pro 2024 14:44
-
- 4
- 4878
-
od Mikajl
Zobrazit poslední příspěvek
12 zář 2024 18:02
Zpět na “Programování a tvorba webu”
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 1 host