[JAVA]Piccolo Menù

Pubblicità

elenuccia08

Nuovo Utente
Messaggi
3
Reazioni
0
Punteggio
24
Ciao a tutti ^_^ appena iscritta, non so se qui potete aiutarmi
Sto creando un piccolo jframe per settare i caratteri di un editor di testo che sto facendo per un'esame. E' a quello di notepad, ma più semplice. Con 3 jlist per scegliere dimensione, stile e font, 3 etichette, una label che mostri come viene modificato il carattere e i tasti OK e Annulla. Sono un po scarsa con la grafica, infatti quando cambio la dimensione del carattere della label i pannelli si sovrappongono, e in più non riesco a modificare la dimensione delle jlist. Questo è il codice che ho scritto, probabilmente sarà pieno di errori. Dove sbaglio? Grazie a tutti

listaDimensioni = new JList();
listaFont = new JList();
listaEffetti = new JList();

scroll1 = new JScrollPane(listaFont);
scroll2 = new JScrollPane(listaDimensioni);
scroll3 = new JScrollPane(listaEffetti);

pannelloScroll = new JPanel(new GridLayout(1, 3, 30, 20));
pannelloScrollEsterno = new JPanel();

scroll1.setPreferredSize(new Dimension(90, 100));
scroll2.setPreferredSize(new Dimension(30, 100));
scroll3.setPreferredSize(new Dimension(90, 100));

listaFont.setListData(font);
listaDimensioni.setListData(dimensioni);
listaEffetti.setListData(effetti);

pannelloScroll.add(scroll1);
pannelloScroll.add(scroll2);
pannelloScroll.add(scroll3);
pannelloScrollEsterno.add(pannelloScroll);

pannelloEtichette = new JPanel(new GridLayout(1, 3, 20, 100));

tipoCarattere = new JLabel(" Tipo di carattere");
stile = new JLabel(" Punti");
punti = new JLabel(" Stile ");

pannelloEtichette.add(tipoCarattere);
pannelloEtichette.add(stile);
pannelloEtichette.add(punti);
pannelloEtichette.setSize(10, 10);

pannelloEsempio = new JPanel(new GridLayout(2, 3, 10, 50));
pannelloEsempio2 = new JPanel();
pannelloEsempio3 = new JPanel();
pannelloEsempio4 = new JPanel();
//pannelloEsempio2, 3 e 4 sono pannelli vuoti creati come riempimento per
//far stare i pulsanti e l'etichetta in determinati punti
esempio = new JLabel("Esempio");

ok = new JButton("Ok");
annulla = new JButton("Annulla");

pannelloEsempio.add(pannelloEsempio2);
pannelloEsempio.add(esempio);
pannelloEsempio.add(pannelloEsempio3);
pannelloEsempio.add(pannelloEsempio4);
pannelloEsempio.add(ok);
pannelloEsempio.add(annulla);

menuCarattere = new JFrame("Menù Carattere");

content.setSize(100, 100);
content.add(pannelloScrollEsterno, BorderLayout.NORTH);
content.add(pannelloEtichette, BorderLayout.CENTER);
content.add(pannelloEsempio, BorderLayout.SOUTH);

menuCarattere.getContentPane().add(content);
 
Grazie gentilissimo
scusa l'ignoranza, ma intendi tutta la classe?
Cioè vuoi che scriva tutta la classe qui? Oppure invio tutta la cartella che è nella workspace di eclipse con tutte le classi?
grazie :)
 
public class MenuCarattereX extends JFrame implements ListSelectionListener, ActionListener{

JList listaFont, listaDimensioni, listaEffetti;

JPanel pannelloScroll, pannelloEtichette, pannelloScrollEsterno, pannelloEsempio,pannelloEsempio2, pannelloEsempio3,pannelloEsempio4, content, nord, centro, sud;

JLabel tipoCarattere, stile, punti, esempio;

JButton ok, annulla;

JScrollPane scroll1, scroll2, scroll3;

String font[]= {"Times New Roman","Courier", "Verdana", "System", " Roman"};
String dimensioni[]= {"1", "2", "3", "10", "11", "12", "13", "14", "15", "16", "17", "18"};
String effetti[]={"Normale", "Grassetto", "Corsivo", "Grassetto Corsivo"};
String fontPredefinito = "Times New Roman";
String effettoPredefinito = "Normale";
String dimensionePredefinita = "10";

Object sceltaFont;
Object sceltaDimensioni;
Object sceltaEffetti;

pagina p;

//TextEditor t = new TextEditor();


public MenuCarattereX() throws IOException {

super("Menù Carattere");

setBounds(100, 0, 400, 300);



content = new JPanel(new BorderLayout());
nord = createPannelloEtichette();
centro = createPannelloScroll();
sud = createPannelloEsempio();

content.add(nord, BorderLayout.NORTH);
content.add(centro, BorderLayout.CENTER);
content.add(sud, BorderLayout.SOUTH);

getContentPane().add(content);


p= new pagina();

}



protected JPanel createPannelloScroll(){


listaDimensioni = new JList();
listaFont = new JList();
listaEffetti = new JList();


listaFont.addListSelectionListener(this);
listaDimensioni.addListSelectionListener(this);
listaEffetti.addListSelectionListener(this);



scroll1 = new JScrollPane(listaFont);
scroll2 = new JScrollPane(listaDimensioni);
scroll3 = new JScrollPane(listaEffetti);

pannelloScroll = new JPanel (new GridLayout(1,3,20,20));
pannelloScrollEsterno = new JPanel();

scroll1.setPreferredSize(new Dimension(70, 100));
scroll2.setPreferredSize(new Dimension(50, 100));
scroll3.setPreferredSize(new Dimension(90, 100));


listaFont.setListData(font);
listaDimensioni.setListData(dimensioni);
listaEffetti.setListData(effetti);

pannelloScroll.add(scroll1);
pannelloScroll.add(scroll2);
pannelloScroll.add(scroll3);
pannelloScrollEsterno.add(pannelloScroll);

return pannelloScrollEsterno;

}




protected JPanel createPannelloEtichette(){


pannelloEtichette = new JPanel (new GridLayout(1,3, 20, 100));

tipoCarattere = new JLabel(" Tipo di carattere");
stile = new JLabel(" Punti");
punti = new JLabel(" Stile ");


pannelloEtichette.add(tipoCarattere);
pannelloEtichette.add(stile);
pannelloEtichette.add(punti);


return pannelloEtichette;

}



protected JPanel createPannelloEsempio(){

pannelloEsempio = new JPanel (new GridLayout(2,3, 20, 50));
pannelloEsempio2 = new JPanel();
pannelloEsempio3 = new JPanel();
pannelloEsempio4 = new JPanel();

esempio = new JLabel("Esempio");

ok = new JButton("Ok");
annulla = new JButton("Annulla");

ok.addActionListener(this);

pannelloEsempio2.setSize(10, 10);

pannelloEsempio.add(pannelloEsempio2);
pannelloEsempio.add(esempio);
pannelloEsempio.add(pannelloEsempio3);
pannelloEsempio.add(pannelloEsempio4);
pannelloEsempio.add(ok);
pannelloEsempio.add(annulla);


return pannelloEsempio;
}


ecco fatto, non ho messo il metodo per il ascoltatore per il funzionamento, quello funziona è la grafica che fa un po schifo :-)
Vedi un po che casino ho combinato:asd:
grazie mille
 
Pubblicità
Pubblicità
Indietro
Top