graphics问题,求高手啊,弄了好久还是不会。如果能详细点,就好,谢谢!
import java.awt.*;
import javax.swing.*;;
public class text extends JFrame{
private JLabel panelNorth;
private JPanel panelSouth;
private JButton but_start;
private JButton but_out;
private JPanel pan;
private BorderLayout lay;
public text()
{
setTitle("面板");
lay=new BorderLayout();
setLayout(lay);
lay.setVgap(15);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(400,100,500,550);
init();
setVisible(true);
}
public void repaintComponent(Graphics g)
{
super.paintComponents(g);
g.setColor(Color.black);
g.drawLine(50,50,100,100);
}
void init()
{
panelNorth=new JLabel("画线!");
panelNorth.setFont(new Font("楷体",30,24));
panelNorth.setForeground(Color.blue);
this.getContentPane().add(panelNorth,BorderLayout.NORTH);
panelSouth=new JPanel();
but_start=new JButton("开始");
but_out=new JButton("退出");
but_start.setFont(new Font("楷体",10,16));
but_out.setFont(new Font("楷体",10,16));
panelSouth.add(but_start);
panelSouth.add(but_out);
this.getContentPane().add(panelSouth,BorderLayout.SOUTH);
pan=new JPanel();
pan.repaint();
this.getContentPane().add(pan,BorderLayout.CENTER);
}
public static void main(String args[])
{
new text();
}
}
不知道怎么使用graphics,画线根本画不了。。。
------解决方案--------------------
改了下,自己看一下区别吧
Java code
import java.awt.*;
import javax.swing.*;
public class text extends JFrame {
private JLabel panelNorth;
private JPanel panelSouth;
private JButton but_start;
private JButton but_out;
private JPanel pan;
private BorderLayout lay;
public text() {
setTitle("面板");
lay = new BorderLayout();
setLayout(lay);
lay.setVgap(15);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(400, 100, 500, 550);
init();
setVisible(true);
}
void init() {
panelNorth = new JLabel("画线!");
panelNorth.setFont(new Font("楷体", 30, 24));
panelNorth.setForeground(Color.blue);
this.getContentPane().add(panelNorth, BorderLayout.NORTH);
panelSouth = new JPanel();
but_start = new JButton("开始");
but_out = new JButton("退出");
but_start.setFont(new Font("楷体", 10, 16));
but_out.setFont(new Font("楷体", 10, 16));
panelSouth.add(but_start);
panelSouth.add(but_out);
this.getContentPane().add(panelSouth, BorderLayout.SOUTH);
pan = new JPanel() {
@Override
public void paintComponent(Graphics g) {
super.paintComponent(g);
g.setColor(Color.black);
g.drawLine(50, 50, 100, 100);
}
};
this.getContentPane().add(pan, BorderLayout.CENTER);
}
public static void main(String args[]) {
new text();
}
}