Vi posto il codice:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Menumio extends JFrame {
// Istanzio due menu
JMenu file = new JMenu("Menu");
JMenu log = new JMenu ("Log");
// Istanzio la barrad dei menu
JMenuBar barra = new JMenuBar();
//Item del primo menu
JMenuItem apri = new JMenuItem("Apri");
JMenuItem chiudi = new JMenuItem("Chiudi");
JMenuItem salva = new JMenuItem("Salva");
JMenuItem esci = new JMenuItem ("Esci");
//Item del secondo menu
JMenuItem LogOut = new JMenuItem ("LogOut");
JMenuItem LogIn = new JMenuItem ("LogIn");
TextArea T1 = new TextArea(20,30);
public Menumio() {
file.add(apri);
file.add(chiudi);
file.add(salva);
file.add(esci);
log.add(LogOut);
log.add(LogIn);
barra.add(file);
barra.add(log);
this.setJMenuBar(barra);
this.setSize(300,300);
Container paneFrame = this.getContentPane();
paneFrame.add(T1, FlowLayout.LEFT);
this.show();
}
public static void main(String[] args) {
Menumio menumio1 = new Menumio();
}
}
--
Ciao.
Maurizio
> Salve.
> Ho da poco intrapreso lo studio di Java, e, come tutti i novelli, mi sono
> scontrato con la parte pratica. :-(.
Anch'io
> Ho fatto una banalissima JFrame, con due menů ed una textarea.
> Tutto funziona bene, ma quando inserisco la textarea, non riesco a vedere
> il menu, ovvero, vedo il menu, ma quando vi clicco sopra, non si apre la
> tendina contenente i JMenuItem.
> Qualcuno mi puň aiutare?
>cut
Senti l'ho riscritta come piace a me (funziona) , la tua aveva i menu
nascosti dalla JTextArea:
************************
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Menusuo extends javax.swing.JFrame
{
private JMenuBar barra;
private JMenu file;
private JMenu log;
private JMenuItem apri;
private JMenuItem chiudi;
private JMenuItem salva;
private JMenuItem esci;
private JMenuItem logOut;
private JMenuItem logIn;
private JTextArea T1;
public Menusuo()
{
T1 = new JTextArea(20, 30);
JScrollPane scroll = new JScrollPane(T1);
this.getContentPane().add(scroll, BorderLayout.CENTER);
//barra
barra = new JMenuBar();
this.setJMenuBar(barra);
//inserisco nella barra
file = new JMenu("file");
barra.add(file);
log = new JMenu("log");
barra.add(log);
//inserisco gli item nei menu
//file
apri = new JMenuItem("apri");
file.add(apri);
chiudi = new JMenuItem("chiudi");
file.add(chiudi);
salva = new JMenuItem("salva");
file.add(salva);
esci = new JMenuItem("esci");
file.add(esci);
//log
logOut = new JMenuItem("log out");
log.add(logOut);
logIn = new JMenuItem("log in");
log.add(logIn);
//setto il frame
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.pack();
this.show();
}
/**
* @param args the command line arguments
*/
public static void main(String[] args)
{
new Menusuo();
}
}
********************************
Non ho visto dove fosse il tuo errore , anche perchč ci sarei dovuto stare
parecchio, cosě ho fatto prima a metterla giů come l'avrei
fatta (quasi)io .....
Cmq sarebbe meglio che tu dividessi il frame in tanti sotto metodi che
restituiscono i componenti del frame per riassemblarlo nel costruttore,
secondo me poi risulta essere piů semplice mantenerla.
--
Ciao. Fabrizio. ( icq: 241182067 )
< MISTAH KURTZ -- HE DEAD.
A penny for the Old Guy>
(T.S. Elliot: the hollow men)
>cut
>
> Non ho visto dove fosse il tuo errore , anche perchč ci sarei dovuto stare
> parecchio, cosě ho fatto prima a metterla giů come l'avrei
> fatta (quasi)io .....
Ripensandoci ho trovato l'errore, in effetti mi sembrava strano l'aspetto
della TextArea che veniva fuori a te ...... infatti usavi quell di awt e
non quella di swing ,
basterebbe correggere TextArea T1 = new TextArea(20, 30) in
JTextArea T1 = new JTextArea(20, 30);