Почему однострочный JtextField на полэкрана? - Java

Узнай цену своей работы

Формулировка задачи:

У меня какая то непонятная вещь получается с текстовым полем, которое больше похоже на текстовую область(хотя активная лиш одна строка), но занята очень большая область. Вот код:
Листинг программы
  1. import javax.swing.JFrame;
  2. import javax.swing.JTextField;
  3. import javax.swing.JLabel;
  4. import javax.swing.JPanel;
  5. import javax.swing.JButton;
  6. import javax.swing.JTextArea;
  7. import javax.swing.JScrollPane;
  8. import javax.swing.BoxLayout;
  9. //import javax.swing.Container;
  10. import java.awt.GridLayout;
  11. import java.awt.event.ActionEvent;
  12. import java.awt.event.ActionListener;
  13. import java.awt.Component;
  14. import java.awt.Container;
  15. import java.awt.BorderLayout;
  16. import java.awt.FlowLayout;
  17. import java.io.*;
  18. public class Jr extends JFrame {
  19. int ind;
  20. JFrame frame;
  21. static JLabel label;
  22. static JPanel contentPane;
  23. JTextArea textArea;
  24. JTextField textField;
  25. public Jr() {
  26. //frame = new JFrame();
  27. /*frame.setDefaultLookAndFeelDecorated(true);
  28. frame.setTitle("File Indexator");
  29. frame.setSize(400, 700);
  30. //frame.pack();
  31. //frame.setResizable(false);
  32. frame.setVisible(true);
  33. frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  34. //frame.setLayout(new GridLayout(0,1));*/
  35. contentPane = new JPanel();
  36. contentPane.setLayout(new BoxLayout(contentPane, BoxLayout.Y_AXIS));
  37. this.add(contentPane);
  38. label = new JLabel("\n");
  39. JLabel labe2 = new JLabel("Below are the indexator xml");
  40. //label.setAlignmentY(Component.CENTER_ALIGNMENT);
  41. //frame.add(label);
  42. JButton buttonInd = new JButton("Indexate");
  43. buttonInd.setAlignmentY(Component.CENTER_ALIGNMENT);
  44. buttonInd.setHorizontalAlignment(JButton.CENTER);
  45. JButton convertandrender = new JButton(" Render");
  46. JButton convertandwrite = new JButton("Writeto File");
  47. textField=new JTextField(20);
  48. JButton search = new JButton("Search");
  49. textArea = new JTextArea();
  50. textArea.setSize(400,300);
  51. textArea.setLineWrap(true);
  52. textArea.setEditable(true);
  53. textArea.setVisible(true);
  54. JScrollPane scroll = new JScrollPane (textArea);
  55. scroll.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
  56. scroll.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
  57. //frame.setVisible(true);
  58. contentPane.add(buttonInd);
  59. contentPane.add(convertandwrite);
  60. contentPane.add(convertandrender);
  61. contentPane.add(label);
  62. contentPane.add(textField);
  63. contentPane.add(search);
  64. contentPane.add(labe2);
  65. contentPane.add(scroll);}
  66. public static void main(String[] args) {
  67. Jr frame=new Jr();
  68. frame.setDefaultLookAndFeelDecorated(true);
  69. frame.setTitle("File Indexator");
  70. frame.setSize(400, 700);
  71. //frame.pack();
  72. //frame.setResizable(false);
  73. frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  74. frame.setVisible(true);
  75. //frame.add(contentPane);
  76. //frame.setVisible(true);
  77. }
  78. }
В чем здесь может быть дело? Lаyout Manager? Может какие то границы ан текстовое поле поставить?

Решение задачи: «Почему однострочный JtextField на полэкрана?»

textual
Листинг программы
  1. if (JF.ind==0) {JF.label.setText("You should wright xml file");
  2.           return;
  3.           };

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4.2 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут