Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione Google Pixel 10a, si migliora poco ma è sempre un'ottima scelta
Recensione Google Pixel 10a, si migliora poco ma è sempre un'ottima scelta
Google ha appena rinnovato la sua celebre serie A con il Pixel 10a, lo smartphone della serie più conveniente se consideriamo il rapporto tra costo e prestazioni. Con il chip Tensor G4, un design raffinato soprattutto sul retro e l'integrazione profonda di Gemini, il colosso di Mountain View promette un'esperienza premium a un prezzo accessibile. E il retro non ha nessuno scalino
6G, da rete che trasporta dati a rete intelligente: Qualcomm accelera al MWC 2026
6G, da rete che trasporta dati a rete intelligente: Qualcomm accelera al MWC 2026
Al MWC Qualcomm annuncia una coalizione industriale per lanciare il 6G entro il 2029 e introduce agenti IA per la gestione autonoma della RAN. Ericsson, presente sul palco, conferma la direzione: le reti del futuro saranno IA-native fin dalla progettazione
CHUWI CoreBook Air alla prova: design premium, buona autonomia e qualche compromesso
CHUWI CoreBook Air alla prova: design premium, buona autonomia e qualche compromesso
CHUWI CoreBook Air è un ultraleggero da 1 kg con Ryzen 5 6600H, display 14" 16:10 e 16 GB LPDDR5. Offre buona portabilità, autonomia discreta e costruzione in alluminio, ma storage PCIe 3.0 e RAM saldata limitano l'espandibilità. A 549 euro sfida brand più noti nella stessa fascia di mercato.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 02-07-2005, 16: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 16:37.
V3ntuR4tz è offline   Rispondi citando il messaggio o parte di esso
Old 02-07-2005, 16: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, 16: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, 17: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, 23: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, 10: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, 11: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, 12: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, 13: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, 13: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, 14: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, 14: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, 15: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, 15: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, 22: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, 22: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, 22: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, 22: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, 23: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 04-07-2005, 00: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


Recensione Google Pixel 10a, si migliora poco ma è sempre un'ottima scelta Recensione Google Pixel 10a, si migliora poco ma...
6G, da rete che trasporta dati a rete intelligente: Qualcomm accelera al MWC 2026 6G, da rete che trasporta dati a rete intelligen...
CHUWI CoreBook Air alla prova: design premium, buona autonomia e qualche compromesso CHUWI CoreBook Air alla prova: design premium, b...
Roborock Saros 20: il robot preciso e molto sottile Roborock Saros 20: il robot preciso e molto sott...
ASUS ROG Kithara: quando HIFIMAN incontra il gaming con driver planari da 100mm ASUS ROG Kithara: quando HIFIMAN incontra il gam...
Rocket Lab ha posticipato il lancio del ...
Dalla missione Artemis IV il razzo spazi...
Una delle sonde europee di ESA Proba-3 h...
Un modder fa girare Linux su PS5: GTA V ...
MacBook Neo: nessuna sorpresa nei primi ...
La serie POCO X8 Pro è pronta al ...
Smartphone: 2026 difficile per il mercat...
Star Wars: Knights of the Old Republic R...
Huang, NVIDIA: OpenClaw ha realizzato in...
Annunciano il recupero di 4,8 milioni di...
Oggi degli ottimi auricolari Sony con ca...
Muffa in casa? Questo deumidificatore da...
Sonos Era 100: il punto d'ingresso per u...
"Non stiamo sostituendo nessuno con...
Tutti i robot in offerta ora: prezzi bas...
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: 05:50.


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