2016-03-24 20 views
0

bir tuval metin eklemek nasıl Yani esasen bu çizgi var. Tkinter tuvalim üzerine rastgele seçilenleri tuval.create_text ile ayrı metin olarak koymak istiyorum.listesinden

+0

Kodu sizin için yazmamızı mı istiyorsunuz? Eğer değilse lütfen ne denediğinizi ve ne işe yaramadığını gösterin. –

cevap

2

Bıkmadan store_items üzerinde:

import random 
from tkinter import * 


store_items = random.sample(['sword','pickaxe','toothpick','hammer','torch','saw'], 5) 


root = Tk() 
canvas = Canvas(root) 
canvas.pack() 
XBASE, YBASE, DISTANCE = 10, 20, 20 
for i, word in enumerate(store_items): # <-- iterate words using `for` loop. 
    canvas.create_text(
     (XBASE, YBASE + i * DISTANCE), 
     text=word, anchor=W, fill='blue') 
root.mainloop() 

Demo screenshot

GÜNCELLEME bazı işlemi tetikleyen kelime tıklayarak yapmak için, bir bir olay (<1> veya <Button-1>) bağlamak gerekir olay işleyicisi.

import random 
from tkinter import * 


store_items = random.sample(['sword','pickaxe','toothpick','hammer','torch','saw'], 5) 


root = Tk() 
canvas = Canvas(root) 
canvas.pack() 
XBASE, YBASE, DISTANCE = 10, 20, 20 
for i, word in enumerate(store_items): # <-- iterate words using `for` loop. 
    canvas.create_text(
     (XBASE, YBASE + i * DISTANCE), 
     text=word, anchor=W) 

def onclick(e): 
    found = canvas.find_closest(e.x, e.y) 
    if found: 
     canvas.itemconfig(found[0], fill='blue') 
canvas.bind('<1>', onclick) 

root.mainloop() 
+0

Bu, ancak her bir kelimeye nasıl etiket bağları ekleyebilirim? Böylece, listeden bir kelimeyi tıklarsanız, belirli bir eylemi önceden biçimlendirirsiniz. – Daijoubu

+0

@Daijoubu, tıklamanın tıklattığını/ele alındığını (tıklanan öğenin rengini değiştirmeyi) gösteren başka bir örnek eklemek için cevabı güncelledim. Başka bir sorunuz varsa, lütfen başka bir soru gönderin. – falsetru

İlgili konular