Oppure

Loading
01/02/08 17:48
filly85
Ciao spero che qualcuno mi sappia aiutare.
sto sviluppando il gioco snake...
per visualizzare la guida ho fatto una jdialog che carica da file il testo e lo mette a video.come faccio a cambiare il carattere,le dim?e poi quando il testo viene visualizzato appare il cursore il quale fa aggiungere del testo o cancellarlo.come fare x visualizzare il testo e basta?
Grazieeeeeeeeeeeee!!!
aaa
02/02/08 14:53
netarrow
per evitare che il testo sia modificato deiv usare il metodo

field.setEnabled(false)
o
field.setEditable(false)

per cambiare i font e le altre caratteristiche del testo potresti usare un JEditorPane con il content type impostato su text/html e inserire codice html per impostare l'aspetto del testo.

Qui hai un tutorial si Sun: java.sun.com/docs/books/tutorial/uiswing/components/…
Ultima modifica effettuata da netarrow 02/02/08 14:55
aaa
03/02/08 11:01
filly85
grazie.con questo metodo però il pulsante x non chiude la dialog,devo aggiungere un bottone per farla chiudere o c'è qualche altro metodo x gestire?
inoltre,per dimensionare il testo all interno della dialog come si fa?alcuni pezzi di testo non si leggono.grazieeeeee!
aaa
03/02/08 12:51
netarrow
per far chiudere la finestra con la X devi mettere il setDefaultCloseOperation:

java.sun.com/j2se/1.4.2/docs/api/javax/swing/…

Per il testo basta che scrivi dentro il JEditorPane testo in html, e automaticamente viene elaborato; se non ti stampa correttamente hai scritto codice html errato
aaa
04/02/08 8:23
filly85
ma il x setDEfaultCloseOperation devo fare un funzione a parte nella classe Jdialog oppure richiamare come funz gia esistente?il pezzo di codice della dialog è questo,dimmi come fare.grazie

public class DialogFinestraGuida extends JDialog
{
    
    private static final long serialVersionUID = 1L;
    private JTextArea areaTesto;
    private GiocoSnake giocoSnake;
    
    public DialogFinestraGuida(GiocoSnake giocoS)
    {    
        this.giocoSnake=giocoS;
        this.setModal(false);
        this.setSize(800,500);
        this.setLocation(0,0);
        this.setTitle("Guida Snake";);
        this.setEnabled(false); //toglie il cursore nell'area testo
        JPanel principale=new JPanel();
        principale.setBackground(Color.green);
        principale.setLayout(new BorderLayout());
        areaTesto=new JTextArea();
        areaTesto.setBackground(Color.green);
        areaTesto.setFont(new Font("Serif", Font.LAYOUT_LEFT_TO_RIGHT, 16));
        principale.add(areaTesto,BorderLayout.CENTER);
        areaTesto.append(giocoSnake.visualizzaGuida());
        this.getContentPane().add(principale);
        this.setVisible(true);
        
        
    }
}



Grazie!!!!
aaa
04/02/08 9:59
netarrow
no basta che richiami il metodo setDefaultCloseOperation e gli passi DISPOSE_ON_CLOSE (la costante è memorizzata come campo statico della classe JDialog)
Ultima modifica effettuata da netarrow 04/02/08 10:00
aaa
04/02/08 10:14
filly85
Grazie, avevo già provato cosi ma non si chiude la dialog.Ho provato cosi,senza this.bla bla...,setCloseOperatio(DISPOSE_ON_CLOSE);
Uffa....!un altra cosa,il testo viene tagliato poiche è + grande della finestra dialog,devo fare uno scrollpane con un pannello su con una area di testo?
grazie 1000!
aaa
04/02/08 10:35
netarrow
per le scroll devi inserire la TextArea dentro un JScrollPane.
Per la chiusura questo devi scrivere nel costruttore della jDialog:

this.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);

se no prova un HIDE_ON_CLOSE ma la JDialog sarà solo invisibile e continuerà a occupare memoria.

ah, per le scroll si potrebbe usare anche setLineWrap a true per andare a capo automaticamente
Ultima modifica effettuata da netarrow 04/02/08 10:48
aaa