21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
} /** } display.setCurrent(canvas);//显示Canvas protected void pauseApp() { } protected void destroyApp(boolean arg0) throws MIDletStateChangeException { } * 模板Canvas */ class TempleteCanvas extends Canvas{ } /** * 画图方法 * 记录画图处理 */ protected void paint(Graphics g) { } //从这里起以下记录画图处理 //从这里起以上记录画图处理 从41行到45行记录着画图处理。
上面的source code是显示graphic的程序模板。
2.2. 画线
首先我们先在画面上试着画线。
g.drawLine(int 起点的x坐标,int 起点的y坐标,int 终点的x坐标,int终点的y坐标);
增加了一个类呀。
是的。利用Canvas时,除了主要的类之外,还需要一个显示graphic的Canvas类。 这也挺难的啊。。。
是。
画线的程序如下所示书写。
使用这个试试从(10,10)到(100,100)画线,怎么样?
根据坐标原点的不同描画的情况应该也不相同。。。
你说得对。坐标原点在画面的左上。N820的画面如下所示。 但是坐标原点在哪里呢? 恩?
应该是g.drawLine(10,10,100,100)吧。 对!
x(0,0)(240,0)左上角为原点,x轴的值向右逐渐变大,y轴的值向下逐渐变大。
y(0,255)
(240,255)
运行刚才的画线命令,如下所示。
2.3. 描画四边形
接下来我们试着画四边形。
g.drawRect(int 定点的x坐标, int 定点的y坐标, int 高度, int 宽度);
画四条线就行了吧。
呵呵,是这样的。但Java里面也准备了专门描画四边形的方法。
使用这个方法试试从(10,10)画高100宽100的正方形,应该怎么做?
应该是g.drawRect(10,10,100,100)。

