• Embed Doc
  • Readcast
  • Collections
  • CommentGo Back
Download
 
Eventi generati da menubar e toolbar  ______________________________________________________ 
Consideriamo il frame creato con il codice riportato inhttp://www.scribd.com/doc/31349156/Creare-menubar-e-toolbar  
Figura 1. Un frame con menubar e toolbar 
Aggiungiamo al frame, nell’area centrale, un’area di testo come istanza della classeJTExtArea.
La classe JTextArea
La classe JtextArea consente di creare e utilizzare aree di testo editabile, non formattato.Sebbene un’area di testo pemetta di visualizzare testo con vari font, non è possibileapplicare font diversi a porzioni differenti di testo. In altre parole, tutto il testo contenuto inuna text area ha lo stesso font. La dimensione di un’area di testo è definita mediante ilnumero di righe e colonne.Per creare un’area di testo si può usare uno dei seguenti costruttori:
public
JTextArea
(String
text 
)Crea un’area di testo contenente il testo specificato. Il numero di righe e colonne èimpostato a 0.
public
JTextArea
(int
rows
, int
columns
)Crea un’area di testo vuota con il numero di righe e colonne specificato.
public
JTextArea
(String text, int rows, int columns)Crea un’area di testo contenente il testo e il numero di righe e colonne specificato.Se si desidera aggiungere una barra di scorrimento laterale (verticale e/o orizzontale) per visualizzare il testo, qualora ecceda il numero di righe prefissato, bisogna creare una
Bocchi CinziaUltimo aggiornamento: 10/11/2011
1
 
istanza della classe JscrollPane, passando come parametro al costruttore la text area.Successivamente, si dovrà aggiungere lo scroll pane al frame, invece della text area. Per esempio:
JTextArea ta =
new
JTextArea();
 
JScrollPane scroll =
new
JScrollPane(ta);
 
getContentPane().add(BorderLayout.
CENTER 
,scroll);
La barra di scorrimento sarà visualizzata automaticamente quando necessario.Nel seguito è visibile il codice del frame di figura 1, modificato con l’aggiunta della textarea.
import
java.awt.BorderLayout;
import
java.awt.event.ActionEvent;
import
java.awt.event.KeyEvent;
import
javax.swing.Icon;
import
javax.swing.ImageIcon;
import
javax.swing.JButton;
import
javax.swing.JComboBox;
import
javax.swing.JFrame;
import
javax.swing.JMenu;
import
javax.swing.JMenuBar;
import
javax.swing.JMenuItem;
import
javax.swing.JScrollPane;
import
javax.swing.JTextArea;
import
javax.swing.JToolBar;
import
javax.swing.KeyStroke;@SuppressWarnings("serial")
 public
 
class
MenuFrame
extends
JFrame {
 public
 
static
 
final
 
int
 
WIDTH 
= 350;
 public
 
static
 
final
 
int
 
HEIGHT 
= 250;
 public
MenuFrame(){//il frame
super
("Text Editor");setSize(
WIDTH 
,
HEIGHT 
);setResizable(
false
);setDefaultCloseOperation(JFrame.
EXIT_ON_CLOSE 
);//********************* MENUBAR ***********************************//componenti del menuJMenuBar menubar =
new
JMenuBar();//la menubarJMenu file =
new
JMenu("File");//menu File JMenu modifica =
new
JMenu("Modifica");//menu Modifica JMenu formato =
new
JMenu("Formato");//menu Formato JMenuItem nuovo =
new
JMenuItem("Nuovo");//item Nuovo JMenuItem apri =
new
JMenuItem("Apri");//item Apri JMenuItem salva =
new
JMenuItem("Salva");//item Salva JMenuItem chiudi =
new
JMenuItem("Chiudi");//item Chiudi JMenuItem taglia =
new
JMenuItem("Taglia");//item Taglia JMenuItem copia =
new
JMenuItem("Copia");//item Copia JMenuItem incolla =
new
JMenuItem("Incolla");//item Incolla JMenuItem carattere =
new
JMenuItem("Carattere");//item Carattere
Bocchi CinziaUltimo aggiornamento: 10/11/2011
2
 
//mnemonicfile.setMnemonic(KeyEvent.
VK_F 
);modifica.setMnemonic(KeyEvent.
VK_M 
);formato.setMnemonic(KeyEvent.
VK_R
);nuovo.setMnemonic(KeyEvent.
VK_N 
);apri.setMnemonic(KeyEvent.
VK_A 
);salva.setMnemonic(KeyEvent.
VK_S 
);chiudi.setMnemonic(KeyEvent.
VK_C 
);taglia.setMnemonic(KeyEvent.
VK_T 
);copia.setMnemonic(KeyEvent.
VK_P 
);incolla.setMnemonic(KeyEvent.
VK_I 
);carattere.setMnemonic(KeyEvent.
VK_C 
);//acceleratornuovo.setAccelerator(KeyStroke.
getKeyStroke
(KeyEvent.
VK_N 
,ActionEvent.
CTRL_MASK 
));apri.setAccelerator(KeyStroke.
getKeyStroke
(KeyEvent.
VK_A 
,ActionEvent.
CTRL_MASK 
));salva.setAccelerator(KeyStroke.
getKeyStroke
(KeyEvent.
VK_S 
,ActionEvent.
CTRL_MASK 
));chiudi.setAccelerator(KeyStroke.
getKeyStroke
(KeyEvent.
VK_C 
,ActionEvent.
CTRL_MASK 
));taglia.setAccelerator(KeyStroke.
getKeyStroke
(KeyEvent.
VK_T 
,ActionEvent.
CTRL_MASK 
));copia.setAccelerator(KeyStroke.
getKeyStroke
(KeyEvent.
VK_P 
,ActionEvent.
CTRL_MASK 
));incolla.setAccelerator(KeyStroke.
getKeyStroke
(KeyEvent.
VK_I 
,ActionEvent.
CTRL_MASK 
));carattere.setAccelerator(KeyStroke.
getKeyStroke
(KeyEvent.
VK_C 
,ActionEvent.
CTRL_MASK 
));//inserimento degli item nel menu Filefile.add(nuovo);file.add(apri);file.add(salva);file.addSeparator();file.add(chiudi);//inserimento degli item nel menu Modificamodifica.add(taglia);modifica.add(copia);modifica.add(incolla);//inserimento degli item nel menu Formatoformato.add(carattere);//inserimento dei menu nella menubarmenubar.add(file);menubar.add(modifica);menubar.add(formato);//inserimento della menubar nel framesetJMenuBar(menubar);//********************* TOOLBAR ***********************************//creazione delle iconeIcon nuovoIcon =
new
ImageIcon(getClass().getClassLoader().getResource("icons/New16.gif"));Icon apriIcon =
new
ImageIcon(getClass().getClassLoader().getResource("icons/Open16.gif"));
Bocchi CinziaUltimo aggiornamento: 10/11/2011
3
of 00

Leave a Comment

You must be to leave a comment.
Submit
Characters: ...
You must be to leave a comment.
Submit
Characters: ...