colocando dos JMenu uno al lado del otro en JAVA
Añadí dos JMenus en un marco:
JFrame frame = new JFrame();
// Menú:
menuBar = new JMenuBar();
menu = new JMenu("Fichier");
menu2 = new JMenu("Options");
JSeparator sep = new JSeparator(SwingConstants.VERTICAL);
JButton btn = new JButton();
btn.addActionListener(MyListener);
menuBar.add(menu);
menuBar.add(sep);
menuBar.add(menu2);
frame.setJMenuBar(menuBar);
Este es el resultado que quiero:
Este es el resultado que obtengo:
Por favor, dame alguna idea de cómo se hizo este marco:
Intenté hacer esto con un JWindow y añadir un JTextArea, pero toma el tamaño de toda la ventana y ni siquiera puedo escribir en él.
Código para JWindow:
public class Fenetre extends JWindow
{
int X;
int Y;
JTextArea ta;
Fenetre()
{
setBounds(50, 50, 300, 300);
ta = new JTextArea();
JScrollPane scrollPane = new JScrollPane(ta);
add(ta);
addMouseListener(new MouseAdapter() {
public void mousePressed(MouseEvent e)
{
X = e.getX();
Y = e.getY();
}
});
addMouseMotionListener(new MouseMotionAdapter() {
public void mouseDragged(MouseEvent e)
{
Point p = getLocation();
setLocation(p.x + (e.getX() - X), p.y + (e.getY() - Y));
}
});
this.setVisible(true);
}
}
davy.ai
Para lograr el resultado deseado, puedes utilizar menús anidados
JMenus
y unJMenuItem
para “Enregistrer” y “Annuler” en lugar de utilizar un separador y unJButton
. Aquí tienes un ejemplo de código:Esto creará un submenú anidado para “Enregistrer” y “Annuler” bajo el menú “Fichier”, así como un menú separado “Options”. Puedes agregar más elementos y submenús según sea necesario.
En cuanto al
JWindow
con unJTextArea
, el problema es que elJTextArea
ocupa todo el espacio de la ventana. Puedes establecer su tamaño preferido a un valor más pequeño y agregarlo a unJScrollPane
para habilitar el desplazamiento. Aquí tienes un código actualizado:Esto creará una
JWindow
más pequeña con unJTextArea
desplazable. Puedes redimensionar la ventana según sea necesario y el área de texto se ajustará en consecuencia.