Buongiorno a tutti
Ho già cercato nel forum e su internet, e pur avendo trovato qualcosa del genere non sono riuscito a trovare quello che mi serve
Sto cercando di creare un calendario in java con le matrici, è un esercizio che devo fare per la scuola, il progetto è ben più ampio ma mi sono arenato ad un certo punto;
Ho due classi, la SWING, si chiama Home mentre la classe della matrice si chiama appunto matrice
nella classe dove c'è la SWING ho creato questo codice:
invece nella classe Matrice ho questo:codice:public class Home extends javax.swing.JFrame { GregorianCalendar gc = new GregorianCalendar(); Eventi ev = new Eventi(); Orario or = new Orario(); Integer GG; Integer MM; Integer AA; Integer OR; Integer MN; Matrice m1; Matrice m2; Matrice m3; public Home(String s) { GG = gc.get(GregorianCalendar.DAY_OF_MONTH); MM = gc.get(GregorianCalendar.MONTH); AA = gc.get(GregorianCalendar.YEAR); OR = gc.get(GregorianCalendar.HOUR); MN = gc.get(GregorianCalendar.MINUTE); m1 = new Matrice(AA, MM, GG); m2 = new Matrice(AA, MM - 1, GG); m3 = new Matrice(AA, MM + 1, GG);
codice:public class Matrice extends AbstractTableModel { private Integer gg; private Integer nRighe = 5; private Integer nColonne = 7; private Integer[][] matrice; public Matrice(int Anno,int Mese,int Giorno) { matrice = new Integer[nRighe][nColonne]; GregorianCalendar cal = new GregorianCalendar(Anno, Mese, 0); GregorianCalendar Lun = new GregorianCalendar(30,11,2013); gg= cal.get(GregorianCalendar.DAY_OF_WEEK); Lun.roll(GregorianCalendar.DATE,-gg ); for (int i = 0; i < nRighe; i++) { for (int j = 0; j < nColonne; j++) { matrice[i][j] = cal.get(GregorianCalendar.DATE); cal.add(GregorianCalendar.DATE, 1); } }
In pratica nella SWING ho 3 calendari che servono per visualizzare, il calendario del mese corrente (m1) il calendario del mese precedente (m2) il calendario del mese successivo (m3)
ora, il problema è che i calendari sono sbagliati, e ho anche capito il motivo,
Il mio calendario funziona che trova la data del primo del mese corrente e torna indietro di tot giorni quanti bastano per visualizzarlo in modo corretto, per esempio:
30 31 1 2 3 4 5
6 7 ecc ecc..
il problema è che impostando il calendario come l'ho impostato io i giorni tolti (day_of_the_week) sono sempre 1 perché nel costruttore qualsiasi sia il mese lui riconosce come parametro il valore 1 anche se magari è mercoledì e io vorrei che mercoledì fosse segnato come valore 3 visto che se parto a contare i giorni da domenica (come fa il mio costruttore) mercoledì è appunto il giorno 3, solo che in questo progetto così come è ora io torno indietro sempre di un giorno perché lavoro sull'altro costruttore
spero di essere stato chiaro
grazie a chi proverà ad aiutarmi
Lorenzo^^


Rispondi quotando
