Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在JTabbedPane中拆分标签_Java_Swing_Split_Layout Manager_Jtabbedpane - Fatal编程技术网

Java 在JTabbedPane中拆分标签

Java 在JTabbedPane中拆分标签,java,swing,split,layout-manager,jtabbedpane,Java,Swing,Split,Layout Manager,Jtabbedpane,我需要更改标签在JTabbedPane上的分布 我有这个: 我想这样做: 有人能帮我吗 我把代码贴在下面: tabbedResultsPane = new JTabbedPane(SwingConstants.TOP); JPanel featurePanel = new JPanel(new GridLayout(TOTAL_FEATURES, 2, 3, 3)); estadoScroll = new JScrollPane(featurePanel,

我需要更改标签在JTabbedPane上的分布

我有这个:

我想这样做: 有人能帮我吗

我把代码贴在下面:

 tabbedResultsPane = new JTabbedPane(SwingConstants.TOP);

     JPanel featurePanel = new JPanel(new GridLayout(TOTAL_FEATURES, 2, 3, 3));  
     estadoScroll = new JScrollPane(featurePanel,
                      JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,
                      JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
        lblFeatureHdr = new JLabel[TOTAL_FEATURES];
        lblFeature = new JLabel[TOTAL_FEATURES];
        for(int i=0; i<TOTAL_FEATURES; i++)
        {
           lblFeatureHdr[i] = new JLabel(strHeader[i], JLabel.RIGHT);
           lblFeatureHdr[i].setOpaque(true);  
           lblFeatureHdr[i].setBackground(new Color(220,255,220));//.lightGray);

           lblFeature[i] = new JLabel("", JLabel.LEFT);
           lblFeature[i].setForeground(Color.blue);// black); 

           featurePanel.add(lblFeatureHdr[i]);
           featurePanel.add(lblFeature[i]);                
        }            
tabbedResultsPane=新的JTabbedPane(SwingConstants.TOP);
JPanel featurePanel=新的JPanel(新的网格布局(总功能,2,3,3));
estadoScroll=新的JScrollPane(功能面板,
JScrollPane.VERTICAL\u滚动条\u根据需要,
JScrollPane.水平滚动条(根据需要);
lblFeatureHdr=新的JLabel[总功能];
lblFeature=新的JLabel[总特征];

对于(int i=0;i定义4列GridLayout(而不是现有的2列)

并更正代码,为每行添加2个标签

for(int i=0; i<TOTAL_FEATURES; i++)
    {
       lblFeatureHdr[i] = new JLabel(strHeader[i], JLabel.RIGHT);
       lblFeatureHdr[i].setOpaque(true);  
       lblFeatureHdr[i].setBackground(new Color(220,255,220));//.lightGray);

       lblFeature[i] = new JLabel("", JLabel.LEFT);
       lblFeature[i].setForeground(Color.blue);// black); 

       featurePanel.add(lblFeatureHdr[i]);
       featurePanel.add(lblFeature[i]);  
       // add 2 more lables to the same row    
       JLabel l=new JLabel(strHeader[i], JLabel.RIGHT);
       l.setBackground(new Color(220,255,220));//.lightGray);          
       featurePanel.add(l);
       featurePanel.add(new JLabel("", JLabel.LEFT));                
    }            

for(int i=0;iit很接近,但是使用您的代码,我在第三列上去掉了绿色背景,您能帮我一点忙吗?代码已更新。事实上,您可以生成所需的JLabel实例,并将所有样式应用于数组中的第一个JLabel。它不起作用,我有一列绿色,但其他列为白色“它不起作用”为了更快地获得更好的帮助,可以发布一个(最小完整的可验证示例)或(简短、自包含、正确的示例)。