Приложение Frame - Java
Формулировка задачи:
Как сделать так, чтобы TextField тоже поместился в окне Frame?
Вот текст программы, заранее благодарю
package exam;
import java.io.*;
import java.awt.*;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JTextField;
public class Programm extends Frame {
public static void createGUI() {
JFrame frame = new JFrame("Test frame");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Font font = new Font("Verdana", Font.PLAIN, 11);
JMenuBar menuBar = new JMenuBar();
JMenu fileMenu = new JMenu("File");
fileMenu.setFont(font);
JMenu newMenu = new JMenu("Open");
newMenu.setFont(font);
fileMenu.add(newMenu);
JMenuItem txtFileItem = new JMenuItem("Text file");
txtFileItem.setFont(font);
newMenu.add(txtFileItem);
JMenuItem closeItem = new JMenuItem("Close");
closeItem.setFont(font);
fileMenu.add(closeItem);
fileMenu.addSeparator();
JMenuItem exitItem = new JMenuItem("Exit");
exitItem.setFont(font);
fileMenu.add(exitItem);
exitItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
menuBar.add(fileMenu);
frame.setJMenuBar(menuBar);
frame.setPreferredSize(new Dimension(270, 225));
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
private JTextField textField1 = new JTextField(20);
public Programm() {
setLayout(new FlowLayout());
add(textField1);
}
public JTextField getTextField() {
return textField1;
}
public static void main(String[] args) {
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
JFrame.setDefaultLookAndFeelDecorated(true);
createGUI();
}
});
Programm frame = new Programm();
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
}Решение задачи: «Приложение Frame»
textual
Листинг программы
package exam;
import java.awt.*;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JTextField;
public class Programm extends Frame {
public static void createGUI() {
JFrame frame = new JFrame("Test frame");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Font font = new Font("Verdana", Font.PLAIN, 11);
JMenuBar menuBar = new JMenuBar();
JMenu fileMenu = new JMenu("File");
fileMenu.setFont(font);
JMenu newMenu = new JMenu("Open");
newMenu.setFont(font);
fileMenu.add(newMenu);
JMenuItem txtFileItem = new JMenuItem("Text file");
txtFileItem.setFont(font);
newMenu.add(txtFileItem);
JMenuItem closeItem = new JMenuItem("Close");
closeItem.setFont(font);
fileMenu.add(closeItem);
fileMenu.addSeparator();
JMenuItem exitItem = new JMenuItem("Exit");
exitItem.setFont(font);
fileMenu.add(exitItem);
exitItem.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
menuBar.add(fileMenu);
frame.setJMenuBar(menuBar);
frame.setPreferredSize(new Dimension(270, 225));
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
JTextField tField = new JTextField(20); // создали текстовое поле
frame.add(tField); // добавили его к frame
}
/*public Programm() {
setLayout(new FlowLayout());
}*/
public static void main(String[] args) {
javax.swing.SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
JFrame.setDefaultLookAndFeelDecorated(true);
createGUI();
}
});
Programm frame = new Programm();
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
}