首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JTabbedPanel与涂料

JTabbedPanel与涂料
EN

Stack Overflow用户
提问于 2014-05-01 18:11:55
回答 1查看 132关注 0票数 1

我有个小问题。总的来说,我有这样一件事:

代码语言:javascript
复制
    JTabbedPane tabsPane = new JTabbedPane();
    add(tabsPane,BorderLayout.CENTER);
    JPanel tab1Panel = new JPanel();
    JPanel tab2Panel = new JPanel();

    //DrawingWindow drawingWindow= new DrawingWindow();
    //add(drawingWindow);


    tabsPane.addTab("Animacja", tab1Panel); 
    tabsPane.addTab("Wykresy", tab2Panel);
    JButton test = new JButton("Press");
    tab2Panel.add(test);

绘图窗口类

代码语言:javascript
复制
public class DrawingWindow extends JPanel {

/**
 * 
 */
private static final long serialVersionUID = 1L;
public static Balls balls=new Balls();

public DrawingWindow() {

    MakeBall();
}




private void MakeBall()
{    
        balls=new Balls(10,205,5,10);


}

public void paint(Graphics gg){
    super.paint(gg);

    Graphics2D g = (Graphics2D) gg;    
    g.setColor(Color.GRAY);
    g.fillRect(0,70,515,410);
    g.setColor(Color.WHITE);
    g.drawLine(10, 285, 57, 265);
    g.drawLine(10, 285, 57, 305);

    g.drawLine(515, 285, 458, 265);
    g.drawLine(515, 285, 458, 305);
    for(int ii=0;ii<Parameters.numberOfCovers;ii++)
    {
        if(Parameters.whatCovers[ii]==0)
        {
            g.setColor(Color.YELLOW);
            g.fillRect(132+(57*2*ii), 205, 29+2*Parameters.cmCovers[ii], 150 );
        }
        if(Parameters.whatCovers[ii]==1)
        {
            g.setColor(Color.GREEN);
            g.fillRect(132+(57*2*ii), 205, 29+2*Parameters.cmCovers[ii], 150 );
        }
    //    Ellipse2D.Double shape = new Ellipse2D.Double(balls.getX(), balls.getY(), balls.getVelocity(),balls.getRadius());
    //    g.fill(shape);
        repaint();
    } 
}
public void funkcja()
{
    repaint();
}
}

我的问题是在取消注释//之后,我的JTabbedPanel就消失了。我想用JTab画油漆。

paint?mode=download&id=6326 <--当它被注释时

paint?mode=download&id=6327 <--在取消注释后。

我是Java的新手,所以我想得到简单的答案:P。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-01 18:56:22

嘿嘿,

替换这个

代码语言:javascript
复制
JPanel tab1Panel = new JPanel();

这样就可以了

代码语言:javascript
复制
JPanel tab1Panel = new DrawingWindow();

到目前为止,您可以将DrawingPanel添加到另一个JPanel中,但是如果要在Tab上绘图,则添加create JPanel,然后将其添加到带有addTab()JTabbedPane中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23413789

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档