相关疑难解决方法(0)

如何使用jpanel与油漆(或重绘)

我是油漆/图形的新手,并想知道如何将JPanel添加到我的代码中,使得整个图形将在JPanel上,而不是在JFrame上.

换句话说,我正在尝试创建一个允许我这样做的GUI:在右侧显示左侧JPanel 上线条的良好移动,添加一个将显示的JTextArea(在JPanel上)图形的协调.

  • 这是一个更大问题的简化,但我想这里的代码更容易理解.

谢谢!!!

(下图,移动线或只是运行代码)

import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.geom.Line2D;
import javax.swing.JFrame;

public class Test extends JFrame implements Runnable  
{
    private Line2D line;

public Test()
{
    super("testing");
    this.setBounds( 500, 500, 500, 500 );
    this.setVisible( true );
}

public void paint( Graphics g ) 
{
    Graphics2D g2 = (Graphics2D) g;
    g2.draw(line); 
}

@Override
public void run()
{
    int x=50;
    while (true)
    {
        try
        {
            Thread.sleep( 50 );

            line = new Line2D.Float(100+x, 100+x, 250-x, 260+x%2);
            x++;
            repaint(); …
Run Code Online (Sandbox Code Playgroud)

java swing jpanel jframe repaint

3
推荐指数
1
解决办法
3776
查看次数

标签 统计

java ×1

jframe ×1

jpanel ×1

repaint ×1

swing ×1