- Fórumok
- Szoftverfejlesztés
- Java programozás
- (kiemelt téma)
-
Fórumok
LOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokPROHARDVER! - hardver fórumok
Notebookok TV & Audió Digitális fényképezés Alaplapok, chipsetek, memóriák Processzorok, tuning Hűtés, házak, tápok, modding Videokártyák Monitorok Adattárolás Multimédia, életmód, 3D nyomtatás Tabletek, E-bookok Nyomtatók, szkennerek PC, mini PC, barebone, szerver Beviteli eszközök Egyéb hardverek PROHARDVER! BlogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésFÁRADT GŐZ - közösségi tér szinte bármiről
Tudomány, oktatás Sport, életmód, utazás, egészség Kultúra, művészet, média Gazdaság, jog Technika, hobbi, otthon Társadalom, közélet Egyéb Lokál PROHARDVER! interaktív
Új hozzászólás Aktív témák
-
Karma
félisten
Sziasztok!
Ha egy JPanelben ábrázolunk egy pályát, ami mezőkből áll, és a paintComponent-et így írtuk meg:
public void paintComponent(Graphics g) {
super.paintComponent(g);
setBackground(cBackground);
Graphics2D g2d = (Graphics2D)g;
int posX=X0;
int posY=Y0;
for(Field f : map.getFields()){
drawField(f, g2d, posX, posY);
posX += Field.WIDTH;
if(posX >= (map.getWidth() * Field.WIDTH)){
posX = X0;
posY += Field.HEIGHT;
}
}
A drowField 1 mezőt rajzol ki a rajta lévő dolgok alapján.Meg lehet oldani azt valahogy, hogy a JPanel repaint-je helyett csak a drowField legyen meghívva? Szeretnénk ha nem kellene mindig az összes mezőt frissíteni, elég csak azt ami változott, ha ez megvalósítható.
Köszi
Mi a motiváció mögötte? Lassú? Villódzik? Egyikse, csak optimalizálni akarsz rajta?
Egyébként igen, meg lehet oldani. Itt van egy tutorial egy teljes játékról hardveres 2D gyorsítással, van benne pár kulcsmomentum amit átvehetsz. Gondolok különösen a BufferStrategy-n keresztüli rajzolásra, meg az ablak kezelésére.
-
Dolby
senior tag
Sziasztok!
Ha egy JPanelben ábrázolunk egy pályát, ami mezőkből áll, és a paintComponent-et így írtuk meg:
public void paintComponent(Graphics g) {
super.paintComponent(g);
setBackground(cBackground);
Graphics2D g2d = (Graphics2D)g;
int posX=X0;
int posY=Y0;
for(Field f : map.getFields()){
drawField(f, g2d, posX, posY);
posX += Field.WIDTH;
if(posX >= (map.getWidth() * Field.WIDTH)){
posX = X0;
posY += Field.HEIGHT;
}
}
A drowField 1 mezőt rajzol ki a rajta lévő dolgok alapján.Meg lehet oldani azt valahogy, hogy a JPanel repaint-je helyett csak a drowField legyen meghívva? Szeretnénk ha nem kellene mindig az összes mezőt frissíteni, elég csak azt ami változott, ha ez megvalósítható.
Köszi
Köztes megoldásként az lesz valószínűleg, hogy a fieldekre boolean fogja jelezni ha változtak az utolsó paint óta, és ezt figyelve hívjuk csak meg a drawFieldet a painComponentsből
-
Karma
félisten
Szerintem ekkor semmivel se vagy előrébb annál, mintha teleszórnád System.out.println()-nel a kódot. Az elvárt működés egyébként is az, hogy stdoutra lökje ki a metódusokat, nem kell a logger cicoma. Belőni egyébként nem bonyolult, a valóságban úgyis majd lesz egy wrapper lib előtte (pl. SLF4J).
Ha elrejted a kiírást egy olyan utility osztály mögé, aminek van egy "enter" meg egy "exit" metódusa, akkor meg pláne mindegy.
IIT rulez.
-
Karma
félisten
Sziasztok!
Egy háziban szkeletont kell készíteni a kiírt programhoz, amiben azt várják, hogy a metódus hívásokat, a metódus által kapott paramétereket és a visszatérési értékeket kiírja a program 1-1 tesztelt folyamatrészletről.
Mivel nem annyira tartom szerencsésnek ha minden metódust kiegészítek külön kiírásokkal, keresgéltem és a util/logging/logger felmerült mint lehetőség, de egyenlőre a beállításaival kicsit hadakozom. A kérdésem h be lehet állítani h a fenti infókat írja csak ki? Hogy ne szenvedjek fölöslegesen ha nem is fogja tudni :-DAOP segítségével simán meg tudod egy helyről oldani minden metódus naplózását. Csak aztán meg kell indokolnod a konzulensnek.
-
Dolby
senior tag
-
Karma
félisten
Ha egy osztályba több ArrayList-em van, akkor lehet mindet egy file-ba kiírni? Amíg egy volt, addig így írtam ki:
public void exportData(String filename){
try {
ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(filename));
oos.writeObject(data.pdata);
oos.close();
importdone.setText("Exportálás sikeres!");
}
catch(Exception ex){
importdone.setText("Exportálási hiba!");
}
}
A pdata egy ArrayList, emellé került be még GroupData és PositionData szintén arraylistek.
Az importálás is ment természetesen, a (List<Person>) konvertálással olvastattam be a file-t. Viszont ha több lista van egy fileban akkor meg tudja különböztetni, hogy meddig írta az egyes listákat magától?Tegyél egymás után több writeObject/readObject hívást, a többit a Java tudni fogja. Csak figyelj oda, hogy ugyanannyi objektumot próbálj kiolvasni, mint amennyit beletettél.
-
Senhi
aktív tag
Listába pakolod a gyerek elemeket így kapsz egy fa struktúrát. Ha visszafele is akarsz lépni akkor beraksz egy hivatkozást a szülőre amit pl. a gyerek létrehozásakor konstruktorban átadsz.
Új hozzászólás Aktív témák
-
Fórumok
LOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokPROHARDVER! - hardver fórumok
Notebookok TV & Audió Digitális fényképezés Alaplapok, chipsetek, memóriák Processzorok, tuning Hűtés, házak, tápok, modding Videokártyák Monitorok Adattárolás Multimédia, életmód, 3D nyomtatás Tabletek, E-bookok Nyomtatók, szkennerek PC, mini PC, barebone, szerver Beviteli eszközök Egyéb hardverek PROHARDVER! BlogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésFÁRADT GŐZ - közösségi tér szinte bármiről
Tudomány, oktatás Sport, életmód, utazás, egészség Kultúra, művészet, média Gazdaság, jog Technika, hobbi, otthon Társadalom, közélet Egyéb Lokál PROHARDVER! interaktív
- Fórumok
- Szoftverfejlesztés
- Java programozás
- (kiemelt téma)
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Teljesen ÚJ - iPhone 17 Pro 256 GB Kártyafüggetlen - Fóliás - 0 ciklus - Apple garancia
- Intel Core ULTRA 9 285K +32GB 7600MHz Patriot Viper XTREME 5 DDR5 kit! (Bolti ár: kb 600ezer Ft!)
- RYZEN 7 5700X3D (8 mag/16 szál, 96MB L3 cache)! GARANCIA/SZÁMLA (a Te nevedre kiállítva)!
- Intel Core i3-4160, 16GB DDR3 félkonfig - Alaplap, CPU, RAM, SSD, hűtő
- 2 darab Metalica VIP Superior 2 napos jegy csere 4 darab egynaposra
- Honor Magic7 Pro 5G 512GB, Kártyafüggetlen, 1 Év Garanciával
- Apple iPhone 12 Pro Max / 128GB / Kártyafüggetlen / 12Hó Garancia / Akku:96%
- LG UltraWide UltraGear 34GN850P-B Monitor! 3440x1440 / 160Hz / 1ms / FreeSync / G-Sync
- Dell Core i5 - i7 - 8-10-11-12. gen. üzleti kategóriás notebookok számlával
- Lenovo ThinkPad P1 Gen 4 i7 32GB RAM 1TB SSD NVIDIA RTX A2000 2560X1600 400nit Garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

