2016-04-04 85 views
2

Tkinterのテキストボックス内でテキストを移動する方法があるのだろうかと思っていました。たとえば、ユーザーが間違った値を入力すると、テキストが前後に「揺れ」ます(頭を振って「いいえ」という信号を送るなど)。Tkinter Pythonでのテキストアニメーション?

ありがとうございます!

答えて

2

ここでは、キャンバスウィジェットでcreate textとmoveメソッドを使用した大まかな例を示します。値を調整することができ、コードをいくつか整理して味を調整することができます。私はあなたが「揺れ」の意味でこれを考えていると思います。

import tkinter as tk 

CORRECT_ANSWER = 'Some answer' 

def callback(): 

    if var.get() != CORRECT_ANSWER: 
     for i in range(10, 50): 
      canvas.move(text, -i if i% 2 == 0 else i, 0) 
      canvas.update() 
      canvas.move(text, i if i % 2 == 0 else -i, 0)      
      canvas.update() 

if __name__ == '__main__': 

    root = tk.Tk() 
    var = tk.StringVar() 
    canvas = tk.Canvas(root, bg="black") 
    canvas.pack(fill=tk.BOTH, expand=1) 
    text = canvas.create_text(200, 100, text='Enter the answer to this question.', 
     fill='white') 
    entry = tk.Entry(root, textvariable = var) 
    entry.pack(side=tk.LEFT, fill=tk.X, expand=1) 
    submit = tk.Button(root, text='Submit', command=callback) 
    submit.pack(side=tk.LEFT, fill=tk.X, expand=1) 
    root.mainloop() 
+0

はい!これをありがとう、ちょうど私が探していたもの! – mkel23

関連する問題