JScrollPane不会使用GroupLayout出现在JTextArea上

问题描述

我有一个解决的问题:JFrame上的JPanel,JPanel上的JLabel和JTextArea以及JTextArea上固定的JScrollPane。 JScrollPane不会出现, 下面是GroupLayout我需要的代码,它在调整JFrame的大小或在另一个屏幕分辨率下运行程序时更加灵活。请有人帮助我。

import java.awt.BorderLayout;
import java.awt.Dimension;
import javax.swing.GroupLayout;
import javax.swing.JFrame;
import static javax.swing.JFrame.EXIT_ON_CLOSE;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import static javax.swing.LayoutStyle.ComponentPlacement.RELATED;

    public class X extends JFrame {
    
        public X() {
            functie(); //cand se creeaza obiectul se creeaza si tot ce e in functia functie.  
        }
        
        
        private void functie(){
            setSize(new Dimension(1920,1200));
            setTitle("Invatacel");
            setLocationRelativeto(null);
            setDefaultCloSEOperation(EXIT_ON_CLOSE);
            
            JPanel panou_rezultate=new JPanel();
            JLabel totalL=new JLabel("De la inceput");
            
            JTextArea totalArea=new JTextArea(30,60);
            
            JScrollPane totalScrol=new JScrollPane(totalArea);
            
            panou_rezultate.add(totalScrol);
           
            this.add(panou_rezultate,BorderLayout.CENTER);
            
            GroupLayout gl= new GroupLayout(panou_rezultate);
            panou_rezultate.setLayout(gl);
            
            gl.setautocreateGaps(true);
            gl.setautocreateContainerGaps(true);       
            
            GroupLayout.SequentialGroup sg=gl.createSequentialGroup();
            
                sg.addPreferredGap(RELATED,GroupLayout.DEFAULT_SIZE,Short.MAX_VALUE);
                sg.addGroup(gl.createParallelGroup(GroupLayout.Alignment.CENTER)  //de schimbat
                        .addComponent(totalL)
                        .addComponent(totalArea)
                        );
                sg.addPreferredGap(RELATED,Short.MAX_VALUE);
                 
            gl.setHorizontalGroup(sg);
            
            GroupLayout.SequentialGroup sgv=gl.createSequentialGroup(); //secvential grup pe verticala
            
            sgv.addPreferredGap(RELATED,Short.MAX_VALUE);
            sgv.addComponent(totalL);      //de sters 
            sgv.addComponent(totalArea);   //de sters
            sgv.addPreferredGap(RELATED,25,25);
            
            gl.setVerticalGroup(sgv);
            
            panou_rezultate.setLayout(gl);
    
            String abc="";
            for(int i=0; i<1000; i++){
                abc=abc+"ea e frumoasa\n";
            }
            totalArea.setText(abc);          
        }
           
        public static void main(String[] args) {
            X ob=new X();
            ob.setVisible(true);
        }
    }

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)