如何在10x10中将数字放在网格的每个部分?

时间:2014-02-19 09:03:19

标签: java applet awt

import java.awt.*;
import java.applet.*;

public class oef2ap extends Applet {

    public void paint(Graphics g){
        int x;
        int y;
        int width;
        int height;
        int teller;
        width=10;
        height=10;    
        teller= 0;
        for(x=0;x<10;x++)
        {
            for(y=0;y<10;y++)
            {
                teller = teller + 1;
                g.drawRect(x*width,y*height,width,height);
                g.drawString(String.valueOf(teller), x, y);
            }

        } 
    }
}

这是我的代码,但是g.drawstring没有给我我想要的东西,它需要在每个矩形中放置一个从1到100的有序数字。

2 个答案:

答案 0 :(得分:3)

你是否忘记了在drawString中乘以x,y?

g.drawString(String.valueOf(teller), x*width, y*height);

答案 1 :(得分:0)

几个问题:

1)在调用drawString时你不需要调整高度位置x&amp; y分别为宽度和高度:

g.drawString(String.valueOf(teller), x * width, (y * height);

2)你还需要通过高度距离再次向下调整高度,这样你的drawString就会在框中结束:

g.drawString(String.valueOf(teller), x * width, (y * height)+height);

投入使用:

public class oef2ap extends Applet {
    public void paint(Graphics g) {
        int x;
        int y;
        int width;
        int height;
        int teller;
        width = 25;
        height = 25;
        teller = 1;
        for (x = 0; x < 10; x++) {
            for (y = 0; y < 10; y++) {
                g.drawRect(x * width, y * height, width, height);
                g.drawString(String.valueOf(teller), x * width, (y * height)+height);
                teller += 1;

            }
        }
    }
}

生成此输出:

applet output