Visualizzazione dei risultati da 1 a 10 su 16

Visualizzazione discussione

  1. #3
    Utente di HTML.it
    Registrato dal
    Dec 2016
    Messaggi
    31
    Quote Originariamente inviata da Ansharja Visualizza il messaggio
    Ciao, prima di guardare bene il tuo codice ti do un consiglio: ci semplificheresti molto la vita se postassi quello che viene definito un SSCCE, soprattutto perch� il tuo problema � a livello grafico, quindi non � detto che basti dare una letta a quello che hai postato per trovare un errore.

    Per aiutarti pi� facilmente sarebbe utile poter compilare ed eseguire il codice, vedendo da noi il problema e potendo modificare il codice per vedere se funziona dopo le modifiche.
    Se per� uno deve aggiungere gli import, togliere le classi che non abbiamo a disposizione (es. DisciplinaDAO) etc... perde parecchio tempo solo a sistemare il codice.

    Questa parte falla tu: cerca di mettere solo le cose essenziali a riprodurre il problema, fornendo un esempio che sia gi� compilabile ed eseguibile (leggi il link per maggiori dettagli)
    Ciao! Allora, se ho ben capito dovrei fornirvi un codice semplificato che se compilato da solo vi permette di vedere la mia finestra e quindi di analizzare il problema senza dover importare le altre classi e avete di gran lunga ragione. Cosi' ho fatto una cosa, ho scritto la finestra senza utilizzare la classe DisciplinaDAO (che mi prende i dati dal database) ma ho inserito manualmente le discipline e non mi da' alcun problema! O.O Per cui ho pensato: l'altra classe e' praticamente identica, se non per il fatto che usa i cicli for per riempire i componenti a seconda di quanti elementi ci sono nel database. Cosi' ho lanciato la finestra dal main come prima finestra e va anche qui tutto bene. Cosi' ho capito che il problema succede quando: Il main chiama la prima finestra di benvenuto, l'utente clicca su discipline, si apre la finestra incriminata con le discipline e lo scroll sta sotto la meta' mentre voglio che parta dall'inizio.
    Ricapitolando il problema si pone solo e soltanto quando la finestra di benvenuto chiama quella delle discipline. Se apro quella delle discipline come prima direttamente dal main invece non succede.
    Ora, come posso fare?

    Io comunque la classe che ho creato manualmente ve la posto lo stesso, basta solo poi chiamarla nel main... ma e' lunga proprio perche' non ho potuto usare i for dovendo mettere tutto a mano passo passo... Per quanto riguarda le foto, vi posto sotto le tre foto e inserite il loro percorso nella stringa. Piu' di cosi' non riesco. L'unico problema e' che usando questa classe non vedrete il problema perche' come dicevo lo fa solo quando la chiamo dalla prima finestra cliccando il bottone.. Ditemi voi... Grazie mille.

    codice:
    import javax.swing.*;
    import javax.swing.border.Border;
    
    import java.awt.*;
    import java.util.*;
    
    public class Finestra extends JFrame
    {
     JButton indietro=new JButton("Indietro");
     JPanel p=new JPanel();
     JPanel s=new JPanel();
     JScrollPane scrollesterno;
     
     
     public Finestra()
     {
         super("Lista Discipline");
         Container c=this.getContentPane();
         JLabel listaIcone[]=new JLabel[3];
         JLabel costi[]=new JLabel[3];
         JTextArea areedescr[]=new JTextArea[3];
         JTextArea areetest[]=new JTextArea[3];
         Border border = BorderFactory.createLineBorder(Color.BLACK);
         JPanel sp[]=new JPanel[3];
         JPanel st[]=new JPanel[3];
         JPanel sez[]=new JPanel[3];
         int i,j,k,w;
         
         //Carico tutti i componenti, lo faccio solo con 3
             listaIcone[0]=new JLabel(new ImageIcon("Percorso immagine Atletica Leggera"));
             areedescr[0]=new JTextArea("DESCRIZIONE: L'atletica leggera � un insieme di discipline suddivise in: corse su pista e concorsi (lanci, salti in elevazione e salti in estensione). Le corse su pista  includono percorsi con o senza ostacoli, i lanci si dividono in lancio del peso, del disco, del martello e del giavellotto mentre i salti in salto con l�asta, in lungo, in alto e triplo.");
             areedescr[0].setLineWrap(true);
             areedescr[0].setBorder(border);
             areedescr[0].setEditable(false);
             areetest[0]=new JTextArea("Testimonianze: ANDREA: La pista di atletica di questo centro sportivo � qualcosa di sensazionale: davvero ben fatta. Complimenti anche agli istruttori, professionisti di alto livello che sono sempre pronti ad insegnare e a dare una mano. Sicuramente uno dei miglior centri di atletica leggera in circolazione!");
             areetest[0].setBorder(border);
             areetest[0].setLineWrap(true);
             areetest[0].setEditable(false);
             costi[0]=new JLabel("                             Il costo mensile � di � 20�)");
             
             listaIcone[1]=new JLabel(new ImageIcon("Percorso immagine Calcio"));
             areedescr[1]=new JTextArea("DESCRIZIONE: Il calcio � uno sport di squadra, praticato con un pallone su un campo di gioco rettangolare, con due porte, da due squadre composte da 11 giocatori. L'obiettivo del gioco � quello di segnare pi� punti della squadra avversaria, facendo passare il pallone fra i pali della porta avversaria entro due tempi da 45 minuti. La partita di calcio � controllata da un arbitro con piena autorit� di far rispettare le Regole del Gioco, le cui decisioni sono definitive. � uno sport fisico e tecnico e, praticato a livello professionale, ha un rilevante aspetto tattico. ");
             areedescr[1].setLineWrap(true);
             areedescr[1].setBorder(border);
             areedescr[1].setEditable(false);
             areetest[1]=new JTextArea("Testimonianze: LUCA: Ho sempre avuto una passione grandissima per il calcio e proprio per questo motivo vi ho giocato fin da bambino. Di conseguenza ho avuto modo di sperimentare vari centri sportivi e devo dire che questo mi ha lasciato davvero senza parole. L�efficienza di questo centro � superlativa: palloni sempre gonfi e ottimali per il gioco, campo sempre verde, curato e tosato regolarmente, privo di zolle o buche che possono portare i giocatori ad infortuni. Allenatore, arbitri e personale tutto eccellente. Super consigliato!");
             areetest[1].setBorder(border);
             areetest[1].setLineWrap(true);
             areetest[1].setEditable(false);
             costi[1]=new JLabel("                             Il costo mensile � di � 25�)");
             
             listaIcone[2]=new JLabel(new ImageIcon("Percorso immagine Equitazione"));
             areedescr[2]=new JTextArea("DESCRIZIONE: Il termine equitazione indica l'utilizzo sportivo del cavallo da parte dell'uomo. I cavalli creano uno stretto rapporto con i loro cavalieri e con essi si cimentano in diverse prove come ad esempio il percorso completo,, il cross-country o il salto ad ostacoli.");
             areedescr[2].setLineWrap(true);
             areedescr[2].setBorder(border);
             areedescr[2].setEditable(false);
             areetest[2]=new JTextArea("LUCIA: Quando ho scoperto che presso questo centro sportivo era possibile praticare l�equitazione, mi sono iscritta immediatamente e devo dire che ne sono davvero felice, sport emozionante!");
             areetest[2].setBorder(border);
             areetest[2].setLineWrap(true);
             areetest[2].setEditable(false);
             costi[2]=new JLabel("                             Il costo mensile � di � 30�");
         
         p.setLayout(new GridLayout(3,1,0,80));
         
         sp[0]=new JPanel(new GridLayout(1,2,20,20));
         st[0]=new JPanel(new GridLayout(1,2,20,20));
         sp[0].add(listaIcone[0]);
         sp[0].add(areedescr[0]);
         st[0].add(areetest[0]);
         st[0].add(costi[0]);
         
         sp[1]=new JPanel(new GridLayout(1,2,20,20));
         st[1]=new JPanel(new GridLayout(1,2,20,20));
         sp[1].add(listaIcone[1]);
         sp[1].add(areedescr[1]);
         st[1].add(areetest[1]);
         st[1].add(costi[1]);
         
         sp[2]=new JPanel(new GridLayout(1,2,20,20));
         st[2]=new JPanel(new GridLayout(1,2,20,20));
         sp[2].add(listaIcone[2]);
         sp[2].add(areedescr[2]);
         st[2].add(areetest[2]);
         st[2].add(costi[2]);
         
         sez[0]=new JPanel();
         BoxLayout boxsez0=new BoxLayout(sez[0],BoxLayout.Y_AXIS);
         sez[0].setLayout(boxsez0);
         sez[0].add(sp[0]);
         sez[0].add(st[0]);
         
         sez[1]=new JPanel();
         BoxLayout boxsez1=new BoxLayout(sez[1],BoxLayout.Y_AXIS);
         sez[1].setLayout(boxsez1);
         sez[1].add(sp[1]);
         sez[1].add(st[1]);
         
         sez[2]=new JPanel();
         BoxLayout boxsez2=new BoxLayout(sez[2],BoxLayout.Y_AXIS);
         sez[2].setLayout(boxsez2);
         sez[2].add(sp[2]);
         sez[2].add(st[2]);
         
         p.add(sez[0]);
         p.add(sez[1]);
         p.add(sez[2]);
        
         
         s.setLayout(new BorderLayout());
         s.add(indietro, BorderLayout.NORTH);
         s.add(p,BorderLayout.CENTER);
         
         
    
         scrollesterno = new JScrollPane(s);
         scrollesterno.getVerticalScrollBar().setUnitIncrement(7);
         c.add(scrollesterno);
         
         this.setDefaultCloseOperation(EXIT_ON_CLOSE);
         this.setSize(700,484);
         this.setLocation(300,150);
         this.setVisible(true);
         this.setResizable(false);
     }
    }

    Queste le foto che potete inserire:


    Ultima modifica di raissa95; 12-12-2016 a 17:32

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.