トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS

E71:appuifw.Canvasを解説 の変更点

Top / E71:appuifw.Canvasを解説

*E71:appuifw.Canvasを解説 [#m92e3fc6]

簡単ですが、appuifw.Canvasクラスの使い方が「Python for S60_1_4_5.pdf」みてもよくわからなかったので、実際に使ってみてわかったことを書きます。

***appuifw.Canvasクラスのメソッド [#t98bd38d]
Canvasクラスが持っているメソッドは以下の通り

|メソッド名|動作|coordseaの指定値|有効なオプション|
|line(coordseq[, <options>])|線を描く|sx,sy,ex,ey|outline,width|
|polygon(coordseq[, <options>])||||
|rectangle(coordseq[, <options>])|四角を描く|sx,sy,ex,ey|outline,width,fill|
|ellipse(coordseq[, <options>])|円を描く|sx,sy,ex,ey|outline,width,fill|
|pieslice(coordseq, start, end[, <options>])||||
|arc(coordseq, start, end[, <options>])||||
|point(coordseq[, <options>])|点を描く|x,y|font|
|clear([color=0x ])||||
|text(coordseq, text[ll=0, font=None ])|テキストを描く|x,y||
※1:手抜きですが、空欄のメソッドは試してません。&br;
※2:sx,syは開始のx,y座標、ex,eyは終了のx,y座標を示します。&br;
※3:pointメソッドのx,y座標は、点の中心の座標です。&br;
※4:testメソッドのx,y座標は、テキスト開始の左下の座標です。&br;

なお、ほんと手抜きで申し訳ないんですが、以下のメソッドは、メソッドの引数が長いので表からは省略してます笑
+measure text(text[font=None, maxwidth=-1, maxadvance=-1 ])&br;
テキストの長さを測るメソッドっぽいです。
+blit(image[,target=(0,0), source=((0,0),image.size), mask=None, scale=0 ])&br;
イメージを貼り付けるメソッドっぽいです。


***appuifw.Canvasを使ってみる [#f314ae22]
上で紹介したメソッドのうち
-line
-rectangle
-ellipse
-point
-text

を使ったサンプルソースを以下に示します。

■canvastest2.py
#refpre(canvastest2.py,,1)

すると、こんな画面が表示されます。&br; 
&ref(Screenshot0095.jpg);
&ref(Screenshot0096.jpg);

***ソースの解説 [#v435c14b]
-07行目~10行目で、lineメソッドを色、太さの指定を変えて描画します。
-12行目で、pointメソッドで直径が20ピクセルの点を描画します。
-14行目~16行目で、開始x,y座標が12行目の点の中心と同じである四角、円を描画します。
-18、19行目では、外枠と中の色が違う円と四角を描画します。
-21行目では、シンプルなフォントしてのテキストを描画します。
-22行目では、わりと色々指定したフォントのテキストを描画します。