Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    1,123

    [Java] Modo migliore per creare una carta da gioco

    Ciao a tutti,

    Dovrei creare delle carte da gioco (mazzo francese), e mostrarle sul tavolo...come disegnarle? con il metodo draw, oppure creo l'immagine e la mostro?

    Grazie a tutti ^^

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: [Java] Modo migliore per creare una carta da gioco

    Originariamente inviato da Patrick Jane
    Dovrei creare delle carte da gioco (mazzo francese), e mostrarle sul tavolo...come disegnarle? con il metodo draw, oppure creo l'immagine e la mostro?
    Scusa ma è un po' vaga come questione ....
    Un punto è come rappresentare in termini di oggetti i mazzi e le carte .... un altro punto è come visualizzare proprio graficamente le carte. E già solo qui ci sarebbero diversi approcci: a) Un pannello che contiene JLabel ognuno per una carta che mostrano Icon b) Un pannello che disegna tuoi componenti (estensione di JComponent o JPanel) ognuno per una carta in cui si presume si faccia del painting sul Graphics c) Un unico componente che disegna tutto quanto, tavolo e tutte le carte.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    1,123

    Re: Re: [Java] Modo migliore per creare una carta da gioco

    Originariamente inviato da andbin
    Scusa ma è un po' vaga come questione ....
    Un punto è come rappresentare in termini di oggetti i mazzi e le carte .... un altro punto è come visualizzare proprio graficamente le carte.
    Intendo la visualizzazione vera e propria delle carte.

    a) Un pannello che contiene JLabel ognuno per una carta che mostrano Icon
    b) Un pannello che disegna tuoi componenti (estensione di JComponent o JPanel) ognuno per una carta in cui si presume si faccia del painting sul Graphics

    c) Un unico componente che disegna tutto quanto, tavolo e tutte le carte.
    Il c) lo escludo; sarei più propenso al b).
    Il disegno quindi avverrebbe tramite i metodi drawXxx?

    Il tavolo lo rappresenterei con un JPanel..e poi disegnerei con il metodo appena citato le carte sul tavolo!

    Può andare come approcio?

    Grazie! ^^

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: Re: Re: [Java] Modo migliore per creare una carta da gioco

    Originariamente inviato da Patrick Jane
    sarei più propenso al b).
    Il disegno quindi avverrebbe tramite i metodi drawXxx?

    Il tavolo lo rappresenterei con un JPanel..e poi disegnerei con il metodo appena citato le carte sul tavolo!
    Ok, ogni carta è un componente (estendi JComponent o JPanel, tecnicamente ci sono delle differenze ma alla fin fine devi comunque fare l'override di paintComponent(Graphics) e disegnare quindi la carta sul componente).
    E i componenti li disponi nel pannello, in questo caso presumibilmente con il posizionamento "assoluto" (niente layout manager e uso di setBounds o setLocation+setSize).

    Attenzione: se però vuoi che delle carte possano "sovrapporsi", devi prestare attenzione alla questione dello z-order. E in questo caso sarebbe meglio usare un JLayeredPane invece che un "normale" JPanel.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    Salve a tutti,ho letto la vostra discussione e mi sono permessa di intromettermi perchè ho un problema abbastanza simile. Ecco in breve cosa sto provando a realizzare:ho creato una JFrame con 3 pannelli che rappresentano il mio tavolo da gioco,in uno di questi pannelli ho provato a disporre le carte del giocatore usando delle Jlabel contenenti ciascuna un'icon rappresentante la carta. Piccolo grande problema,non si aggiorna questo pannello con le carte ogni volta che cambio giocatore(e quindi carte)...Potete aiutarmi??
    Vi ringrazio anticipatamente

  6. #6
    Utente di HTML.it L'avatar di desa
    Registrato dal
    Oct 2008
    Messaggi
    569
    Credo che l'unico nesso con questa discussione sia in realtà il fatto che in entrambi i casi l'applicazione ha a che vedere con delle carte da gioco. Probabilmente, come da regolamento, sarebbe opportuno aprire una nuova discussione... ma questo lo dovrebbero valutare i moderatori.

    Probabilmente il tuo problema è che non aggiorni la visualizzazione del pannello a ogni cambio di giocatore... ma, senza poter vedere il codice coinvolto, la mia è solo un'ipotesi

  7. #7
    Ciao desa,grazie per aver risposto ...Ho aggiunto il mio problema a questa discussione perchè era stata suggerita una soluzione simile a quella adottata da me per risolvere la questione di visualizzazione delle carte e quindi speravo in un aiuto ... Per quanto riguarda la tua ipotesi,beh avevo già provato ad aggiornare il pannello mettendo il metodo repaint() in diversi posti ma i risultati sono abbastanza strani,passo da carte non visualizzate a JLabel aggiunte ripetendo la stessa carta ogni volta che si cambia giocatore...Non capisco cosa sbaglio ...

  8. #8
    Utente di HTML.it L'avatar di desa
    Registrato dal
    Oct 2008
    Messaggi
    569
    E' sempre opportuno postare il codice: non tutto, solo quello coinvolto nel problema che stai segnalando (o, altrimenti, una sua versione minimale). Sennò - normalmente - tutto quello che si può fare sono solo delle congetture

    Comunque, visto che molto probabilmente esegui delle add() e delle remove(), può essere che non esegui una validate() del pannello modificato?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.