JScrollPane没有出现

时间:2012-08-13 15:06:53

标签: java swing jscrollpane layout-manager null-layout-manager

我想在我的面板JscrollPane中创建一个panneau jsp。但是这个JscroolPane没有出现。我认为问题在于我使用setLayoutnull

代码可能会生成这样的布局,行数和行数。文本字段的列是可变的(在构造函数中):

layout

这是我的代码:

public class Cadre_fenetreA3 extends JFrame 
{
    JButton boutonOK = new JButton ("OK");
    public Cadre_fenetreA3 (String nom,int X, int Y, int lo, int la, int nbligne,int nbcolonne,String[] nomGrpGen, int Na, File file, boolean dernier)      
    {

        super(nom);                     
        setBounds(X,Y,500,500);     
        setVisible(true);   
        setFocusable(true);

        JLabel phrase = new JLabel("<html>Veuillez indiquer l'appartenance ou non d'un attribut <br> a un groupe d'attribut du Niveau :</html>"+Na);
        JTextField[][] allField = new JTextField [nbligne][nbcolonne];
        JLabel phrases[] = new JLabel [nbligne];
        JPanel panneau = new JPanel();
        JScrollPane jsp = new JScrollPane(panneau);

        jsp.createVerticalScrollBar(); 
        jsp.createHorizontalScrollBar(); 
            jsp.setBounds(20,20, 20, 20);
        panneau.setLayout(null);

        for(int i = 0;i < nbligne;i++)
        {
            for(int j = 0;j<nbcolonne;j++)
            {
                int random = (int)(Math.random()*2);
                 allField[i][j] = new JTextField(String.valueOf(random));
                 allField[i][j].setBounds(150+j * 30, 75 + i * 30, 20, 20);
                 panneau.add(allField[i][j]);
            }

           phrases[i] = new JLabel(nomGrpGen[i]);
           phrases[i].setBounds(5, 75+ i * 30, 200, 20);

          panneau.add( phrases[i]);
        }
        phrase.setBounds(0,0,1000,50);
         panneau.add(phrase);

        boutonOK.setBounds(lo-90,la-110,60,60);
        boutonOK.addActionListener(new ecout(nbligne,nbcolonne,allField, file, dernier));
         panneau.add(boutonOK);
         add(jsp);
    }

1 个答案:

答案 0 :(得分:4)

那是因为您最后添加了panneau - 您应该添加jsp; - )

此外,请勿将LayoutManager设置为null,因为这会导致问题(除非您知道自己在做什么)。根据您的要求,您可以在Visual Guide to Layout Managers

中找到所需的一切