java画线程序drawline怎么都不管用,什么问题
发布网友
发布时间:2022-04-29 01:21
我来回答
共2个回答
热心网友
时间:2022-06-27 10:57
这程序编的乱七八糟的,对Java GUI的编程是根本没理解嘛。
思路如下:
绘图要绘在Panel(或JPanel)组件上,用Panel的paint()方法(或paintComponent()方法)绘制图形,所以这个类一般情况下继承Panel类。
程序修改如下:
import java.math.*;
import java.awt.*;
import java.util.*;
import java.awt.Graphics;
import javax.swing.*;
public class draw extends JPanel{
JFrame j;
//int x0=34,x1=48,y0=28,y1=69;
draw()
{
j=new JFrame("draw");
j.setVisible(true);
j.setSize(100, 100);
j.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
j.add(this,BorderLayout.CENTER);
}
public void paint(Graphics g) {
g.setColor(Color.black);
g.drawLine(10,10,50,50);
}
public static void main(String[] args)
{
new draw();
}
}
热心网友
时间:2022-06-27 10:57
要在jframe中加入一个jfpanel的布局
我给你看下我的列子把。
import java.awt.Graphics;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class DrawLineFrame extends JFrame {
public DrawLineFrame() {
DrawLinePanel dlp=new DrawLinePanel();
dlp.setBounds(0, 0, 600, 400);
this.add(dlp);
this.setSize(600,400);
this.setTitle("实验1");
this.setLayout(null);
this.setVisible(true);
this.setLocationRelativeTo(null);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
class DrawLinePanel extends JPanel{
public void paint(Graphics g) {
g.drawLine(70, 50, 180, 50);
g.drawLine(70, 80, 180, 70);
}
}
public static void main(String[] args){
DrawLineFrame d1=new DrawLineFrame();
}
}