Фреймы - Java
Формулировка задачи:
Нужно элементы фрейма разбить на классы, и просто добавлять их в окно через класс фрейма. Как это сделать?
Хорошо, вот код, вставьте текстовую метку в окно:
import java.awt.event.*;
import javax.swing.*;
class labl
{
labl()
{JLabel lbl=new JLabel("Text");
lbl.setBounds(10,10,30,30);
}
}
class MyFrame
{
MyFrame()
{
JFrame frame=new JFrame("Window");
frame.setSize(200,200);
frame.setLocationRelativeTo(null);
frame.setLayout(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//Вставить текстовую метку
frame.setVisible(true);
}
}
public class JavaApplication11 {
public static void main(String[] args) {
new MyFrame();
}
}Решение задачи: «Фреймы»
textual
Листинг программы
import java.awt.BorderLayout;
import javax.swing.*;
import java.awt.Color;
import java.awt.Font;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;
import java.awt.event.*;
class Menu
{
JMenuBar menu;
Menu()
{
JMenuBar menu=new JMenuBar();
JMenu program=new JMenu("Программа");
menu.add(program);
this.menu=menu;
}
}
class textField
{
JScrollPane scroll;
textField()
{
JTextArea area=new JTextArea();
area.setLineWrap(true); //Переход на новую строку
JScrollPane scroll=new JScrollPane(area,
JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
this.scroll=scroll;
}
}
class Frame
{
Frame()
{
JFrame frame=new JFrame("Текстовый редактор");
frame.setLayout(new GridBagLayout());
frame.setSize(500,500);
frame.setLocationRelativeTo(null);
frame.setResizable(false);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
textField fil=new textField();
Menu men=new Menu();
GridBagConstraints grid1=new GridBagConstraints();
grid1.gridx=0 ;
grid1.gridy=0 ;
grid1.gridheight=1;
grid1.gridwidth=(int) 0.5;
grid1.weightx=0;
grid1.weighty=0;
grid1.anchor = GridBagConstraints.SOUTH;
grid1.fill = GridBagConstraints.HORIZONTAL;
grid1.insets = new Insets(0,0,0,0);
grid1.ipadx=500;
grid1.ipady=20;
frame.add(men.menu,grid1);
GridBagConstraints grid2=new GridBagConstraints();
grid2.gridx=5 ;
grid2.gridy=5 ;
grid2.gridheight=1;
grid2.gridwidth=(int) 0.5;
grid2.weightx=0;
grid2.weighty=0;
grid2.anchor = GridBagConstraints.SOUTH;
grid2.fill = GridBagConstraints.HORIZONTAL;
grid2.insets = new Insets(0,0,0,0);
grid2.ipadx=480;
grid2.ipady=440;
frame.add(fil.scroll,grid2);
frame.setVisible(true);
}
}
public class Redactor
{
public static void main(String[] args)
{
new Frame();
}
}