2011-11-24 14 views
0

こんにちは、私はいくつかのpys60 UIプログラミングを行っていたノキア5800電話を持っています。私は矢印を作成するために以下のコードを使用しました。要するに、draw()はキャンバスサーフェス上に矢印を描画します。キャンバスにはdrawraw()を呼び出すためにredraw_callbackとresize_callbackが接続されています。しかし傾けると、画面上にランダムなテキスト(ガベージ)が出力されます。チルティング時に画面に表示されるガベージテキスト

import appuifw 
from appuifw import * 
import e32 
from graphics import * 

def up(dummy): 
    appuifw.note(u'Button 1 Clicked', 'note') 

def down(dummy): 
    appuifw.note(u'Button 2 Clicked', 'note') 

appuifw.app.screen = 'normal' 

def on_resize(dummy): 
    draw() 

def on_redraw(dummy): 
    draw() 

def on_exit(): 
    global lock 
    lock.signal() 

def draw(): 
    global canvas 
    canvas.clear() 
    canvas.polygon((20,20,20,60,40,40,20,20), fill=(255,0,0), width=10) 


canvas = appuifw.Canvas(resize_callback=on_resize, redraw_callback=on_redraw) 
lock = e32.Ao_lock() 
appuifw.exit_key_handler = on_exit 
draw() 
lock.wait() 

ここでは、電話機をまっすぐにしたときの様子を示します。ここで

Held Straight

私はそれを傾けてきたとき、それがどのように見えるかです。

Tilted

答えて

1

(landspaceで)テキストを有する空間が幅の寸法マイナス向きが縦であった場合にそれがあった幅であることに留意されたいです。あなたはキャンバスを風景の新しい次元にリサイズすることを忘れていますか?

テキストはコンソール出力ですが、定義されていないものとそこに出力されているものを確認します。

+0

は、どのようにそれがフルスクリーンを利用サイズを変更できますか? – deostroll

0
appuifw.app.orientation = 'portrait' 

かさえ:

appuifw.app.orientation = 'landscape' 
関連する問題