2011-11-24 10 views
0

안녕하세요, 나는 어떤 pys60 UI 프로그래밍을하고 있던 노키아 5800 전화가 있습니다. 아래 코드를 사용하여 화살표를 만들었습니다. 즉, draw()는 캔버스 표면에 화살표를 그립니다. 캔버스에는 redraw_callback 및 resize_callback이 연결되어 결국 draw()를 호출합니다. 그러나 틸팅 (tilting)시 화면에 임의의 텍스트 (garbage)가 출력됩니다.쓰레기 텍스트 기울이기 화면에 그려진

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

내가 그것을 기울어 한 때 모습입니다. (landspace에서) 텍스트가있는 공간은 폭 마이너스 방향이 세로 일 때 그것이 폭의 크기입니다

Tilted

답변

1

참고. 캔버스를 가로 방향의 새로운 차원으로 크기 조정하는 것을 잊고 있습니까?

텍스트가 콘솔 출력이며, 정의되지 않고 무엇이 출력되고 있는지 확인하십시오.

+0

어떻게 당신은 전체 화면을 이용하여 크기를 조정합니까? – deostroll

0
appuifw.app.orientation = 'portrait' 

또는 :

appuifw.app.orientation = 'landscape'