PDA

Visualizza la versione completa : compilare un programmino java semplice semplice


*silvia*
06-05-2004, 00:53
salve a tutti
per l'esame di informatica devo compilare un semplice programmino in java, solo che io sono rimasta un po' indietro e quindi non ho ancora ben in mente che cosa si potrebbe fare, ho sentito alcuni compagni che facevano il gioco del tris ma non ho idea di come si faccia, c'è qualcuno che mi può consigliare un tipo di programmino da presentare a lezione oppure che mi spieghi come si fa il tris?

grazie ciao a tutti

Bloody3000
06-05-2004, 10:06
Quali requisiti deve avere il tuo programma? Perchè senza sapere cosa deve fare al minimo è un po' difficile darti una mano...
come lo intendi il tris? Ci sono due utenti alternati che specificano ognuno che casella segnare?
Info info!!

*silvia*
06-05-2004, 13:00
ehhhh appunto è quello che non so
so solo che deve essere semplice, qualcosa del tipo il gioco del tris (tic tac toe) oppure la battaglia navale, o un calendario, tutte cose che comunque non so fare, non deve avere chissà quali requisiti , l'importante che sia molto semplice, qualcosa di base
il professore non ha dato NESSUNISSIMA informazione , anche per quello che mi trovo un po'spiazzata, ha detto di inventarci qualcosa e quindi qualsiasi cosa va bene, ovviamente non essendo io un genio non proporrei mai qualcosa di mirabolante ,, che nun ce crederebbe mai nessuno :-) ma so che altri ragazzi hanno proposto cose che io non sapevo nemmeno che potessero esistere, io posso mirare solo alla cosa più basilare :-)
anche perchè a detta del docente non è importante il programma ma il modo in cui collaborariamo con il gruppo e con i mezzi che abbiamo a disposizione (tipo internet ad esempio:-))
grazie mille

Bloody3000
06-05-2004, 14:11
Tipo chiedere delle info sui forum... uhm...
non c'è qualcosa che ti interesserebbe fare con un programma?

*silvia*
06-05-2004, 14:17
si si ci ha anche consigliato di cercare info su internet
credo ceh lo scopo del progetto sia imparare ad interagire con i mezzi , anche perchè una volta proposto il programma il docente si è detto disponibile ad aiutarci a svilupparlo, io volevo andare la con delle idee un po' precise, come un programma già fatto da studiarmi e poi rifare con lui .. qualcosa del genere
subito io avevo immeginato uno slideshow di immagini , con un tasto avanti e indietro e magari una didascalia che cambia al cambiare delle immegini ma mi sembra difficile e complicato,, cosa ne pensi?

LeleFT
06-05-2004, 15:05
Veramente non è difficilissimo. Certo, un po' di pratica in Java è utile, ma soprattutto è utile sapersi orientare nella documentazione.

Tempo fa avevo già fatto al volo una cosa così: non visualizzava immagini, ma frasi pescate da un DB Access, quindi non è difficile riadattarlo (se ho impiegato 30 minuti per farlo, credo che la cosa non sia poi così complessa).

Vediamo l'organizzazione:

1) Serve una finestra con 2 pulsanti e un pannello dove visualizzare le immagini (per semplicifare la cosa, supponiamo che il numero di immagini sia fissato dal programma)

2) Il pannello è un oggetto separato che si preoccupa di visualizzare l'immagine ogni volta che questa gli viene passata attraverso un metodo

3) I due pulsanti devono preoccuparsi di verificare a che punto della "lista" di immagini siamo arrivati, per evitare di andare a pescare immagini inesistenti. Quindi richiamare il metodo del pannello passandogli l'immagine corretta.

Tutto qui.

Prova a cominciare a riflettere su come dovrebbero essere strutturate (a grandi linee) le classi necessarie (3 classi in tutto, se non si vuole specializzare anche i pulsanti), quali metodi debbano implementare e fornire come interfaccia. Il resto stà solo nella fantasia del posizionare questi oggetti nella finestra.

In ogni caso, se proprio non ne vieni fuori, posso vedere, domani quando arrivo a casa, di fornirti almeno la struttura del progetto (non si può avere proprio tutto già fatto, nella vita ;) )


Ciao. :ciauz:

*silvia*
06-05-2004, 16:32
ma ci mancherebbe ,, io non lo voglio mica già fatto,,,se esisteva qualcosa online di già pronto in qualche tutorial per studiarmi il codice tanto meglio,, ma se no a me basta capire se è possibile farlo tanto da presentare al professore la proposta poi al massimo sarà lui ad aiutarmi,, ma io devo andare là con un idea di progetto, se tu mi fai capire che è un programma possibile lo slideshow io quasi quasi presento questa proposta, magari qualcuno mi sa dire dove posso trovare info
grazzzzziiiiieee

la struttura la so fare: inserire bottoni, dimensionare l'applet, il font delle scritte,, però richiamando l'evento alla click sul bottone come si fa a richiamare un immagine?

LeleFT
06-05-2004, 18:28
Beh... diciamo che la cosa più semplice da fare e più intuitiva sarebbe quella di fare in modo che quando il pulsante viene premuto, dice all'oggetto responsabile della visualizzazione delle immagini (il pannello) di caricare la prossima immagine. Supponiamo, quindi, di avere un numero predefinito di immagini che possono essere memorizzate in un array. O meglio, nell'array verrà memorizzato il nome del file dell'immagine.
A questo punto, quando l'utente preme il pulsante, questo chiama un metodo del pannello, passandogli il nome della prossima immagine da visualizzare (se esiste, altrimenti non fa nulla).

Sarà, quindi, il pannello che va a reperire l'immagine (grazie al nome) all'interno di una cartella prefissata, la legge e la visualizza.

Per la lettura e la visualizzazione delle immagini bisogna spulciare un po' la documentazione, perchè in definitiva, è questa la parte più difficile di tutto il lavoro, ma credo che sia anche la parte meno rilevante di tutto il progetto (nel senso che, la valutazione del tuo progetto, si baserà sull'utilizzo degli oggetti, sulla capacità di organizzare il progetto, e sull'uso dei costrutti della programmazione Object Oriented e non, specificatamente, sull'apertura e la visualizzazione dell'immagine).

Ti dò, comunque, un'infarinatura sull'apertura e la visualizzazione delle immagini, in modo da alleggerirti il lavoro:

1) Dai un'occhiata alla documentazione dell'oggetto Toolkit di AWT: http://java.sun.com/j2se/1.4.2/docs/api/java/awt/Toolkit.html

2) Dai un'occhiata al metodo paint() di Component, sempre di AWT: http://java.sun.com/j2se/1.4.2/docs/api/java/awt/Component.html

3) Guardati la documentazione dell'oggetto Graphics, sempre di AWT: http://java.sun.com/j2se/1.4.2/docs/api/java/awt/Graphics.html

4) Guardati la documentazione dell'oggetto Image di AWT: http://java.sun.com/j2se/1.4.2/docs/api/java/awt/Image.html (e qui c'è una bella parolina magica: abstract)


Per aprire un'immagine si usa la seguente "tecnica": si crea un oggetto Image e lo si istanzia utilizzando l'oggetto Toolkit, che va a prendersi il file dell'immagine e crea l'oggetto Image.


Image img;
img = Toolkit.getDefaultToolkit().createImage("nome_del_file");

Ora si dice al pannello di visualizzare l'immagine appena caricata. Per far questo si ridefinisce (si sottopone ad override) il metodo paint() e si utilizza il Graphics:


public void paint(Graphics g) {
g.drawImage(img, 0, 0, img.getWidth(), img.getHeight(), this);
}

Attenzione: ho messo in grassrtto il this! Guardati la documentazione dell'oggetto Panel(http://java.sun.com/j2se/1.4.2/docs/api/java/awt/Panel.html) e prova a capire perchè ho messo il this (fa sempre bene per una spiegazione al prof, sapergli dire questi dettagli!!).

Ora dovrebbe essere più semplice la questione delle immagini. Se hai dei dubbi chiedi pure. ;)

Ciao. :ciauz:

*silvia*
06-05-2004, 18:40
ti ringrazio veramente tanto
adesso mi ci metto d'impegno
ti saprò dire com'è andata :-)

LeleFT
06-05-2004, 19:48
Piccola correzione nel codice:


public void paint(Graphics g) {
g.drawImage(img, 0, 0, img.getWidth(this), img.getHeight(this), this);
}

Loading