Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine porta Logan in un'avventura inedita, violenta e fortemente narrativa, costruita attorno alla sua natura di combattente e al difficile rapporto con il proprio passato. Insomniac Games punta su combattimenti spettacolari, progressione e personalizzazione, inserendo l'azione in un mondo segnato dalla persecuzione dei mutanti. Un viaggio intenso, che alterna mattanza, esplorazione e momenti sorprendentemente emotivi.
DJI Romo 2: tante novità lo rendono un robot completo
DJI Romo 2: tante novità lo rendono un robot completo
Romo 2 è la seconda generazione di robot lavapavimenti di DJI, un modello che si caratterizza per la precisione nel sistema di navigazione e per il funzionamento particolarmente silenzioso. Con le modifiche introdotte in questa seconda versione, e un posizionamento di prezzo più allineato alla concorrenza, rappresenta una valida alternativa sul mercato delle soluzioni di pulizia domestica
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Il primo Sony con retroilluminazione True RGB alla prova del banco di misura e dei contenuti: luminanza enorme, colori accurati in HDR e un antiriflesso molto efficace. I limiti sono due sole HDMI 2.1 e il blooming fuori asse
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 02-07-2005, 15:06   #1
V3ntuR4tz
Senior Member
 
L'Avatar di V3ntuR4tz
 
Iscritto dal: Dec 1999
Città: Torino
Messaggi: 100
[JAVA]Disperato, disperatissimo, java...

Ciao a tutti... sono sull'orlo di una crisi di nervi...
devo consegnare una prova di progetto java entro lunedi',
ho provato di tutto ma per vari motivi la mia preparazione
non e' ancora sufficiente... e non riesco a venire a capo della
situazione... vi prego aiutatemi.....

In sostanza il progetto prevede la "generazione" di una tabella
nella quale compaiono scritte e immagini. E fin qui tutto bene.
Il problema e' che dovrei far si' che il contenuto della tabella,
e quindi il numero di righe e di colonne, vari in base alla dimensione della finestra !!! Ve lo giuro ho provato di tutto ma non ce la fo' !!!

Allego il link al file .zip dove c'e' il file (FinestraZodia.java) che
mi sta facendo impazzire... non e' che qualcuno puo' darmi
due dritte ?!? Ho tempo fino a lunedi'....


http://www.webalice.it/gioriv/progetto.zip

Ultima modifica di V3ntuR4tz : 02-07-2005 alle 15:37.
V3ntuR4tz è offline   Rispondi citando il messaggio o parte di esso
Old 02-07-2005, 15:25   #2
V3ntuR4tz
Senior Member
 
L'Avatar di V3ntuR4tz
 
Iscritto dal: Dec 1999
Città: Torino
Messaggi: 100
E' una tragedia vi prego qualcuno mi aiuti......
V3ntuR4tz è offline   Rispondi citando il messaggio o parte di esso
Old 02-07-2005, 15:52   #3
V3ntuR4tz
Senior Member
 
L'Avatar di V3ntuR4tz
 
Iscritto dal: Dec 1999
Città: Torino
Messaggi: 100
se puo' aiutare....



import javax.swing.JPanel ;
import javax.swing.JFrame ;
import java.awt.Graphics ;

import java.awt.Image ;

import zodiaco.* ;


/** Questa riga inizia la definizione di una niova classe
*/
public class FinestraZodia extends JPanel {


Zodia zodiaco = new Zodia() ;

/** Inizializza il pannello che poi sarà inserito nella finestra.
*/
public FinestraZodia() {


Segno Aries = new Ariete("Aries", "img/ariete.jpg") ;
Segno Taurus = new Toro("Taurus", "img/toro.jpg") ;
Segno Gemini = new Gemelli("Gemini", "img/gemelli.jpg") ;
Segno Cancer = new Cancro("Cancer", "img/cancro.jpg") ;
Segno Leo = new Leone("Leo", "img/leone.jpg") ;
Segno Virgo = new Vergine("Virgo", "img/vergine.jpg") ;
Segno Libra = new Bilancia("Libra", "img/bilancia.jpg") ;
Segno Scorpius = new Scorpione("Scorpius", "img/scorpione.jpg") ;
Segno Sagittarius = new Sagittario("Sagittarius", "img/sagittario.jpg") ;
Segno Capricornus = new Capricorno("Capricornus", "img/capricorno.jpg") ;
Segno Acquarius = new Acquario("Acquarius", "img/acquario.jpg") ;
Segno Pesces = new Pesci("Pesces", "img/pesci.jpg") ;


zodiaco.aggiungiSegno(Aries) ;
zodiaco.aggiungiSegno(Taurus) ;
zodiaco.aggiungiSegno(Gemini) ;
zodiaco.aggiungiSegno(Cancer) ;
zodiaco.aggiungiSegno(Leo) ;
zodiaco.aggiungiSegno(Virgo) ;
zodiaco.aggiungiSegno(Libra) ;
zodiaco.aggiungiSegno(Scorpius) ;
zodiaco.aggiungiSegno(Sagittarius) ;
zodiaco.aggiungiSegno(Capricornus) ;
zodiaco.aggiungiSegno(Acquarius) ;
zodiaco.aggiungiSegno(Pesces) ;


}


/** Metodo ereditato dalla classe JPanel serve per aggiornare il pannello.
*/
public void paint(Graphics g) {

// stampa le informazioni di testo dello zodiaco.
Segno[] segni = zodiaco.elencoAnimali() ;
System.out.println("Ci sono "+segni.length+" segni:") ;
for(int i=0 ; i<segni.length ; i++) {
Segno a = segni[i] ;
System.out.println(a.dimmiNome()+", "+a.categoria()+", dice "+a.faiPredizione()) ;
}


// dati per visualizzazione delle img nella finestra

// il numero di ammagini per ogni riga
int numero_colonne = 3 ;
// larghezza forzata per le immagini
int larghezza_immagini = 100 ;
// altezza fortzata per le immagini
int altezza_immagini = 100 ;
// spazio verticale tra due immagini dove stampare il testo
int spazio_testo = 40 ;

// colonna corrente
int colonna = 100 ;
// posizione x iniziale
int start_x = 10 ;
// posizione attuale per stampare un'immagine
int x=start_x, y=spazio_testo ;

// per ogni segno faccio stampare l'img e la predizione
for(int i=0 ; i<segni.length ; i++) {
Segno a = segni[i] ;

g.drawString(a.dimmiNome()+": "+a.faiPredizione(), x, y) ;

// se non c'e' la foto, stampa un testo di default.
Image im = a.immagine() ;
if(im!=null) {
g.drawImage(im, x, y, larghezza_immagini, altezza_immagini, this) ;
} else {
g.drawString("Foto N/A", x, y+spazio_testo) ;
}


// avanza di una colonna
colonna++ ;
// se ho ragguinto il massimo delle colonne, riparto a disegbare da sinistra
if(colonna >= numero_colonne) {
x = start_x ;
y += altezza_immagini + spazio_testo ;
colonna = 0 ;
} else {
// altrimenti vado verso destra
x += 150 + larghezza_immagini ;
}


}

}


/** Metodo main che istanzia un pannello e lo inserisce in una finestra.
*/
public static void main(String[] args) {
JFrame frame = new JFrame("Graphic output");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(800, 600);
frame.getContentPane().add(new FinestraZodia());
frame.setVisible(true);
}

}
V3ntuR4tz è offline   Rispondi citando il messaggio o parte di esso
Old 02-07-2005, 16:15   #4
franksisca
Senior Member
 
L'Avatar di franksisca
 
Iscritto dal: May 2005
Città: Roma
Messaggi: 7938
SCusa, ma devi allargare o scorrere la finestra?
__________________
My gaming placement
franksisca è offline   Rispondi citando il messaggio o parte di esso
Old 02-07-2005, 22:52   #5
anx721
Senior Member
 
L'Avatar di anx721
 
Iscritto dal: Oct 2002
Città: Roma
Messaggi: 1502
Ma il requisito di mostrare tante immagini in base alla dimensione della finestra è un requisito del progetto?

perche altrimenti puoi risolvere semplicemente utilizzando un JScrollPane che ti permette di scorrere il contenuto della finestra in modo da visualizzare le parti nascoste
__________________
Sun Certified Java Programmer
EUCIP Core Level Certified

European Certification of Informatics Professionals
anx721 è offline   Rispondi citando il messaggio o parte di esso
Old 03-07-2005, 09:36   #6
franksisca
Senior Member
 
L'Avatar di franksisca
 
Iscritto dal: May 2005
Città: Roma
Messaggi: 7938
Ecco, intendevo dire anche io la stessa cosa.
Se usi un JScrollPane credo che diventi ttto più semplice.
__________________
My gaming placement
franksisca è offline   Rispondi citando il messaggio o parte di esso
Old 03-07-2005, 10:54   #7
V3ntuR4tz
Senior Member
 
L'Avatar di V3ntuR4tz
 
Iscritto dal: Dec 1999
Città: Torino
Messaggi: 100
Ecco si' penso che potrebbe andare bene !

Come posso implementare jscrollpane ?


PS: vi ricordo che di java non ne capisco una benemerita
Nel file FinestraZodia.java dove devo mettere jscrollpane ?

Mi fate un esempio ? vi preeeeeego
V3ntuR4tz è offline   Rispondi citando il messaggio o parte di esso
Old 03-07-2005, 11:00   #8
Alvaro Vitali
Member
 
L'Avatar di Alvaro Vitali
 
Iscritto dal: Apr 2005
Messaggi: 224
Dove crei la JTable:

myJScrollPane = new JScrollPane(myJTable);

nella parte di programma dove aggiungevi ad un container la myJTable ora ggiungerai l'oggetto myJScrollPane naturalmente...

vorrei cmq esortare tutti ad usare la documentazione Java così ben fatta!
Se avessi raccolto il consiglio di usare una JScrollPane e fossi andato a consultare la documentazione avresti già fatto...
Alvaro Vitali è offline   Rispondi citando il messaggio o parte di esso
Old 03-07-2005, 12:04   #9
V3ntuR4tz
Senior Member
 
L'Avatar di V3ntuR4tz
 
Iscritto dal: Dec 1999
Città: Torino
Messaggi: 100
Non ce la posso fare...
V3ntuR4tz è offline   Rispondi citando il messaggio o parte di esso
Old 03-07-2005, 12:16   #10
V3ntuR4tz
Senior Member
 
L'Avatar di V3ntuR4tz
 
Iscritto dal: Dec 1999
Città: Torino
Messaggi: 100
In piu' non riesco neanche a mettere la applet in un file html... non mi apre
l'applet... sara' che io nel file html gli ho inserito solo un file .class mentre
ce ne sono tanti altri ?
Nell'html dovrei specificare tutti i file .class o solo quello di
visualizzazione ? (FinestraZodia.class)

Mi scuso con tutti gli utenti e i moderatori per l'ESTREMA SFRONTATEZZA
con la quale sto ponendo queste domande, ma la disperazione e' massima...

Seguo il forum da tanti anni, e non lo avevo mai "imbrattato" cosi'...
chiedo venia, veramente...


PS: e grazie di cuore a chi ha risposto fin'ora
V3ntuR4tz è offline   Rispondi citando il messaggio o parte di esso
Old 03-07-2005, 13:04   #11
V3ntuR4tz
Senior Member
 
L'Avatar di V3ntuR4tz
 
Iscritto dal: Dec 1999
Città: Torino
Messaggi: 100
Se io tramite prompt dei comandi scrivo:

per compilare:

javac FinestraZodia.java

viene generato il file class.

Dopo di che scrivo: java FinestraZodia

e tutto funziona.

Quando pero' nel file html metto il tag <APPLET> e gli indico
il file .class FinestraZodia.class

mi dice che non riesce a caricare l'applet... qualche consiglio ?
V3ntuR4tz è offline   Rispondi citando il messaggio o parte di esso
Old 03-07-2005, 13:20   #12
V3ntuR4tz
Senior Member
 
L'Avatar di V3ntuR4tz
 
Iscritto dal: Dec 1999
Città: Torino
Messaggi: 100
V3ntuR4tz è offline   Rispondi citando il messaggio o parte di esso
Old 03-07-2005, 14:55   #13
anx721
Senior Member
 
L'Avatar di anx721
 
Iscritto dal: Oct 2002
Città: Roma
Messaggi: 1502
Ma per forza devi usare un'applet? IO non ne ho mai fatta una quindi non so aiutarti...

Con lo JScrollPane hai risolto o no?
__________________
Sun Certified Java Programmer
EUCIP Core Level Certified

European Certification of Informatics Professionals
anx721 è offline   Rispondi citando il messaggio o parte di esso
Old 03-07-2005, 14:57   #14
Alvaro Vitali
Member
 
L'Avatar di Alvaro Vitali
 
Iscritto dal: Apr 2005
Messaggi: 224
Proviamo qualche soluzione:

- La classe principale estende la classe JApplet ??

- Hai inserito l'applet usando i giusti tag?

<html>
<head>
<title>titolo</title>
</head>
<body>
<APPLET CODE="nomeClassePrincipale.class" height="x" width="y">
Questo programma richiede un browser abilitato per Java
</APPLET>
</body>
</html>
Alvaro Vitali è offline   Rispondi citando il messaggio o parte di esso
Old 03-07-2005, 21:11   #15
V3ntuR4tz
Senior Member
 
L'Avatar di V3ntuR4tz
 
Iscritto dal: Dec 1999
Città: Torino
Messaggi: 100
Sono commosso, grazie mille a tutti per le risposte.

Dunque ribadisco che ne capisco molto poco di java...

pero' quanto dice alvaro mi fa venire un dubbio effettivamente...

Il listato che ho postato un po' sopra mostra l'intero contenuto del
file .class (o meglio la sua versione .java) che mi interessa
integrare come applet nel file html... secondo voi in quel listato
manca qualcosa ?
O meglio manca, come dice alvaro, il comando che :

"fa estendere la classe Japplet alla classe principale" ???

E se manca, cosa diavolo dovrei inserire ?

La scadenza e' stata posticipata a martedi', quindi ho ancora domani
per lavorarci su'... vi prego aiutatemi... so che chiedo molto...
vorrei poter fare qualcosa per ricambiare....
V3ntuR4tz è offline   Rispondi citando il messaggio o parte di esso
Old 03-07-2005, 21:20   #16
anx721
Senior Member
 
L'Avatar di anx721
 
Iscritto dal: Oct 2002
Città: Roma
Messaggi: 1502
Io ho letto il tuo codice e no mipare che tua bbia implementato un'applet ma solo un'applicazione da avviare col comando

java FinestraZodia
__________________
Sun Certified Java Programmer
EUCIP Core Level Certified

European Certification of Informatics Professionals
anx721 è offline   Rispondi citando il messaggio o parte di esso
Old 03-07-2005, 21:35   #17
V3ntuR4tz
Senior Member
 
L'Avatar di V3ntuR4tz
 
Iscritto dal: Dec 1999
Città: Torino
Messaggi: 100
Quote:
Originariamente inviato da anx721
Io ho letto il tuo codice e no mipare che tua bbia implementato un'applet ma solo un'applicazione da avviare col comando

java FinestraZodia

Ah ecco ! Grande ecco dove sta l'inghippo !

Come potrei fare quindi ?
V3ntuR4tz è offline   Rispondi citando il messaggio o parte di esso
Old 03-07-2005, 21:38   #18
anx721
Senior Member
 
L'Avatar di anx721
 
Iscritto dal: Oct 2002
Città: Roma
Messaggi: 1502
Come ti ho detto no mi sono mai occupato diapplet,prova a trovare qualke guida o tutorial online
__________________
Sun Certified Java Programmer
EUCIP Core Level Certified

European Certification of Informatics Professionals
anx721 è offline   Rispondi citando il messaggio o parte di esso
Old 03-07-2005, 22:41   #19
V3ntuR4tz
Senior Member
 
L'Avatar di V3ntuR4tz
 
Iscritto dal: Dec 1999
Città: Torino
Messaggi: 100
Ci provo.... nel mentre qualcuno se sa' qualcosa.....
V3ntuR4tz è offline   Rispondi citando il messaggio o parte di esso
Old 03-07-2005, 23:29   #20
Alvaro Vitali
Member
 
L'Avatar di Alvaro Vitali
 
Iscritto dal: Apr 2005
Messaggi: 224
Premetto che anche io non ho mai realizzato applet cmq ho letto che:

La classe principale di un Applet Java deve estendere la classe javax.swing.JApplet

per far questo la tua classe (mi pare che tu ne abbia una sola) deve essere dichiarata così:

public class FinestraZodia extends javax.swing.JApplet { etc...etc... }

il problema è che la tua classe estende già la classe JPanel e Java non permette l'ereditarietà multipla.
Quindi una soluzione (forse) sarebbe creare una classe Principale che estende JApplet e che poi nel suo metodo di inizializzazione crea un oggetto della classe FinestraZodia.
Il metodo di inizializzazione è init() e viene invocato in fase di caricamento dell'applet e tu devi ridefinirlo nella tua classe Principale.
Forse dentro init() potresti metterci ciò che era nel tuo "main".

Riassumendo dovresti provare questo:


public class Principale extends javax.swing.JApplet {

public void init() {

JFrame frame = new JFrame("Graphic output");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(800, 600);
frame.getContentPane().add(new FinestraZodia());
frame.setVisible(true);


}

}

(ovviamnete mancano tutti gli "import" del caso...)
spero di esserti stato di aiuto...
Alvaro Vitali è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve Geely EX5, un mese al volante: il SUV elettrico ...
Mova Z70 Ultra Roller Complete: motore potente, rullo di lavaggio e l'IA a guidare Mova Z70 Ultra Roller Complete: motore potente, ...
La Serie A con DAZN e Amazon Prime con l...
Giochi Ubisoft su Steam senza Ubisoft Co...
Miami Beach ha autorizzato la maxi opera...
Apple regala un altro anno di funzioni s...
Alla fine è successo davvero: Vol...
Il meglio di Amazon del weekend in uno s...
Speciale TV in offerta su Amazon: Hisens...
Non c'è pace per Trezor: 347.000 e-mail ...
È un portatile Dell e li vale tut...
Apple iPhone 17 Pro Max 256GB a 1.195€ (...
GPT-6 Astra è davvero AGI o non s...
LG OLED G6S 48'' a 845€ e G6 55'' a 1368...
Mantax Otax: il malware Android che crip...
Musk incassa un altro maxi contratto IA:...
Le vendite di EV sono esplose in tutto i...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 23:17.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v