首先是要在JFrame窗体上画条直线,是怎么处理的?其次还有个问题是,在窗体上面添加一张背景图片,是怎么添加的?
麻烦各位抽空解决下这个问题,谢谢!

解决方案 »

  1.   

    孩子,回头是岸,学JAVA EE或者安卓吧,JAVA SE已经死了
      

  2.   

    import javax.swing.*;
    import java.awt.*;public class Hello extends JPanel {
        private Image backgroundImage = null;    public Hello() {
            String path = "/Users/Biao/Desktop/x.png"; // 背景图片的地址
            backgroundImage = new ImageIcon(path).getImage(); // 加载背景图片
        }    @Override
        protected void paintComponent(Graphics g) {
            super.paintComponent(g);        Graphics2D g2d = (Graphics2D) g;
            g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);        // 绘制背景
            g2d.drawImage(backgroundImage, 0, 0, getWidth(), getHeight(), null);        // 画线
            g2d.setColor(Color.RED);
            g2d.drawLine(0, 0, getWidth(), getHeight());
        }    private static void createGuiAndShow() {
            JFrame frame = new JFrame("");        frame.getContentPane().add(new Hello());        // Set frame's close operation and location in the screen.
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            frame.setSize(400, 400);
            frame.setLocationRelativeTo(null);
            frame.setVisible(true);
        }    public static void main(String[] args) {
            createGuiAndShow();
        }
    }
      

  3.   

    用的JLable直接在上面加图片岂不是更好
      

  4.   

    在jframe上画line 和 图片的例子
    import javax.swing.*;
    import java.io.*;
    import java.awt.image.*;
    import java.awt.*;
    import java.net.URL;
    import javax.imageio.ImageIO;public class DrawOnFrame extends JFrame
    {
    //要画的图片
    BufferedImage img = null;
    public DrawOnFrame()
    {
    setBounds(0,0,800,600);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    setVisible(true);
    //我们用URL得到二楼的头像图片,
    try
    {
    URL url = new URL("http://avatar.profile.csdn.net/0/3/5/1_leo2115339.jpg");
    img = ImageIO.read(url.openStream()); }
    catch (Exception e)
    {
    e.printStackTrace();
    } repaint();
    } //在paintComponent里面画
    @Override
    public void paint(Graphics g)
    {
    //super.paintComponent(g);
    //画直线的起点 和 终点
    if (img!=null)
    {
    g.setColor(Color.RED);
    //任意图画最先话,就是背景,和油画一样,一层一层
    g.drawImage(img,100,100,img.getWidth(),img.getHeight(),null);
    g.drawLine(100,100,300,300);
    }

    } public static void main(String[] args) 
    {
    new DrawOnFrame();
    System.out.println("Hello World!");
    }
    }
      

  5.   

    drawImage  、drawLine  建议去看swing的API
      

  6.   

    这SE还是先得学学的吧。乃不要打击人家的信心嘛。虽然我也觉得GUI没太大市场。