1

私はpythonプロジェクトを作成しており、画面にルールを印刷する必要がありました。私は simplegui モジュールを使用しています。これが私が持っているものです。

text = """You will be given a number
    and a number of operations. The number
    on the top is the answer to the problem.
    You must fill the blanks with numbers that
    make the answer. Hit enter when you are 
    done, hit delete to go back."""
canvas.draw_text(text, (150, 250), 30, 'white')

それは私にエラーを与えました:

ValueError: text may not contain non-printing characters

このバグを修正するにはどうすればよいですか?

4

1 に答える 1

0

draw_text()関数は複数行を描画できません。線ごとに描画する必要があります。

しかし… 複数行を描画 する関数を書きました。これは CodeSkulptor の機能ではないため、モジュールをdraw_text_multi() インポートする必要があります。simplegui_lib_draw

try:
    import simplegui

    import user40_AeChfAkzlcqs3wG as simplegui_lib_draw
except ImportError:
    import SimpleGUICS2Pygame.simpleguics2pygame as simplegui

    import SimpleGUICS2Pygame.simplegui_lib as simplegui_lib_draw

def draw(canvas):
    …
    draw_text_multi(canvas,
                    """line 1
line 2
line 3""", (x, y), size, 'white', 'serif')
    …

SimpleGUICS2Pygameドキュメントのヒントセクションもお読みください。

于 2015-11-21T10:18:19.847 に答える