Почему однострочный JtextField на полэкрана? - Java
Формулировка задачи:
У меня какая то непонятная вещь получается с текстовым полем, которое больше похоже на текстовую область(хотя активная лиш одна строка), но занята очень большая область.
Вот код:
В чем здесь может быть дело? Lаyout Manager? Может какие то границы ан текстовое поле поставить?
import javax.swing.JFrame;
import javax.swing.JTextField;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JButton;
import javax.swing.JTextArea;
import javax.swing.JScrollPane;
import javax.swing.BoxLayout;
//import javax.swing.Container;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.Component;
import java.awt.Container;
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.io.*;
public class Jr extends JFrame {
int ind;
JFrame frame;
static JLabel label;
static JPanel contentPane;
JTextArea textArea;
JTextField textField;
public Jr() {
//frame = new JFrame();
/*frame.setDefaultLookAndFeelDecorated(true);
frame.setTitle("File Indexator");
frame.setSize(400, 700);
//frame.pack();
//frame.setResizable(false);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//frame.setLayout(new GridLayout(0,1));*/
contentPane = new JPanel();
contentPane.setLayout(new BoxLayout(contentPane, BoxLayout.Y_AXIS));
this.add(contentPane);
label = new JLabel("\n");
JLabel labe2 = new JLabel("Below are the indexator xml");
//label.setAlignmentY(Component.CENTER_ALIGNMENT);
//frame.add(label);
JButton buttonInd = new JButton("Indexate");
buttonInd.setAlignmentY(Component.CENTER_ALIGNMENT);
buttonInd.setHorizontalAlignment(JButton.CENTER);
JButton convertandrender = new JButton(" Render");
JButton convertandwrite = new JButton("Writeto File");
textField=new JTextField(20);
JButton search = new JButton("Search");
textArea = new JTextArea();
textArea.setSize(400,300);
textArea.setLineWrap(true);
textArea.setEditable(true);
textArea.setVisible(true);
JScrollPane scroll = new JScrollPane (textArea);
scroll.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
scroll.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
//frame.setVisible(true);
contentPane.add(buttonInd);
contentPane.add(convertandwrite);
contentPane.add(convertandrender);
contentPane.add(label);
contentPane.add(textField);
contentPane.add(search);
contentPane.add(labe2);
contentPane.add(scroll);}
public static void main(String[] args) {
Jr frame=new Jr();
frame.setDefaultLookAndFeelDecorated(true);
frame.setTitle("File Indexator");
frame.setSize(400, 700);
//frame.pack();
//frame.setResizable(false);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
//frame.add(contentPane);
//frame.setVisible(true);
}
}Решение задачи: «Почему однострочный JtextField на полэкрана?»
textual
Листинг программы
if (JF.ind==0) {JF.label.setText("You should wright xml file");
return;
};