При добавлении прокрутки к текстовому полю это поле исчезает - Java

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

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

Проблема в том, что когда добавляю прокрутку к текстовому полю, то оно (поле) вообще пропадает. В чем может быть проблема?
Листинг программы
  1. tArea= new JTextArea();
  2. tArea.setBounds(10, 60, 320, 220);
  3. tArea.setBackground(Color.GRAY);
  4. c.add(tArea);
  5.  
  6. scroll = new JScrollPane(tArea);
  7. scroll.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);

Решение задачи: «При добавлении прокрутки к текстовому полю это поле исчезает»

textual
Листинг программы
  1. package laba4;
  2.  
  3.  
  4. import java.awt.*;
  5. import javax.swing.*;
  6. import javax.swing.JScrollPane;
  7. import javax.swing.ScrollPaneConstants;
  8.  
  9. public class Laba4 {
  10.     public static void main(String[] args) {
  11.          {
  12.             MainFrame frame = new MainFrame();
  13.             frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  14.             frame.setTitle("hello");
  15.             frame.setVisible(true);
  16.            
  17.         }
  18.     }
  19. }
  20.  
  21. class MainFrame extends JFrame {
  22.    
  23.     private JLabel tfFunc;
  24.     private JTextArea tArea;
  25.     private JTextField tfBorderA, tfBorderB, tfStep;
  26.     private static JScrollPane scroll;
  27.     private static final int DEFAULT_WIDTH = 650;
  28.     private static final int DEFAULT_HEIGHT = 350;
  29.  
  30.     private static double borA = 0, borB = 0, dx = 0;
  31.     private static final double a = 2;
  32.     private static int step = 0;
  33.     private static double[][] mass = new double[1000][1000];
  34.    
  35.  
  36.     public MainFrame() {
  37.  
  38.         setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);
  39.         setLocationByPlatform(true);
  40.  
  41.         Container c = getContentPane();
  42.         c.setLayout(null);
  43.  
  44.         JButton massButton = new JButton("Создать массив");
  45.         massButton.setBounds(350, 120, 270, 30);
  46.         c.add(massButton);
  47.         massButton.addActionListener(e -> {
  48.             for (double i = borA; i < borB; i = i + dx)
  49.                 step++;
  50.             mass = massCreate(borA, borB, dx, step, a);
  51.             for (int i = 0; i < step; i++) {
  52.                 tArea.setText(mass[i][1] + "\n" + tArea.getText());
  53.             }
  54.         });
  55.  
  56.         tfFunc = new JLabel("Функция: y=a-в€љx * cos(ax)");
  57.         tfFunc.setBounds(350, 60, 270, 30);
  58.         c.add(tfFunc);
  59.        
  60.         JLabel aaa = new JLabel("a = 2");
  61.         aaa.setBounds(350, 85, 270, 30);
  62.         aaa.setHorizontalAlignment(JLabel.LEFT);
  63.         c.add(aaa);
  64.          
  65.  
  66.         JLabel btnBorderA = new JLabel("Граница А");
  67.         btnBorderA.setBounds(10, 10, 100, 25);
  68.         btnBorderA.setHorizontalAlignment(JLabel.CENTER);
  69.         c.add(btnBorderA);
  70.  
  71.         tfBorderA = new JTextField("0");
  72.         tfBorderA.setBounds(100, 10, 30, 25);
  73.         c.add(tfBorderA);
  74.  
  75.         JLabel btnBorderB = new JLabel("Граница B");
  76.         btnBorderB.setBounds(160, 10, 100, 25);
  77.         btnBorderB.setHorizontalAlignment(JLabel.CENTER);
  78.         c.add(btnBorderB);
  79.  
  80.         tfBorderB = new JTextField();
  81.         tfBorderB.setBounds(250, 10, 30, 25);
  82.         c.add(tfBorderB);
  83.        
  84.         JLabel btnStep = new JLabel("Шаг");
  85.         btnStep.setBounds(310, 10, 100, 25);
  86.         btnStep.setHorizontalAlignment(JLabel.CENTER);
  87.         c.add(btnStep);
  88.  
  89.         tfStep = new JTextField();
  90.         tfStep.setBounds(380, 10, 50, 25);
  91.         c.add(tfStep);
  92.        
  93.    
  94.        
  95.         tArea= new JTextArea();
  96.         tArea.setBounds(10, 60, 320, 220);
  97.         tArea.setBackground(Color.GRAY);
  98.         c.add(tArea);
  99.        
  100.        
  101.        //scroll = new JScrollPane(tArea);
  102.        //scroll.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
  103.  
  104.    
  105.         JButton btnAll = new JButton("Задать");
  106.         btnAll.setBounds(480, 10, 100, 25);
  107.         c.add(btnAll);
  108.         btnAll.addActionListener(e -> {
  109.             borA = Double.parseDouble(tfBorderA.getText());
  110.             borB = Double.parseDouble(tfBorderB.getText());
  111.             dx = Double.parseDouble(tfStep.getText());
  112.         });
  113.     }
  114.  
  115.     public static double[][] massCreate(double x1, double x2, double dx, double k, double a) {
  116.         double x = x1;
  117.         for (int i = 0; i < k; i++) {
  118.             double y;
  119.            
  120.              
  121.          y = a-(Math.sqrt(x)*Math.cos(a*x));
  122.             mass[i][0] = x;
  123.             mass[i][1] = y;
  124.             x = x + dx;
  125.         }
  126.         return mass;
  127.     }
  128.        
  129.    
  130. }

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


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

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

13   голосов , оценка 4 из 5

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

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

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