2014-05-24 25 views
8

Merhaba, bunu yapmak zorundayım çünkü bir eşleme/taklit oyunu yapıyorum ve bastığımda (mevcut oyundakilerden tamamen ayrılmış) bir buton olması gerekiyor. fareyle düğmeleri dokunmadan otomatik olarak.Tkinter/python'a dokunmadan bir düğmeye basmanın bir yolu var mı?

Düğmeye basmak için "bas" işlevi veya benzeri bir şey var mı?

Teşekkürler!

+1

Bir fare tıklatması yoksa, düğmenin basılmasına neden hangi kullanıcı girişinin neden olması gerekiyor? Programın kullanıcının bir şey yapmadan şeyleri görüntülemesini istiyorsanız, bir tuşa basmanız gerekmez; sadece düğmeye basmanın aktif hale getireceği fonksiyonu tetikleyebilirsiniz. – user2357112

+4

UI mantığını oyun mantığından biraz ayırmanızı öneriyorum. Düğmeye program aracılığıyla basmak yerine, sadece aynı geri çağrıyı ('command =' argümanında koyduğunuz şey) arayın. –

cevap

10

Joel Cornett'in bir yorumda öne sürdüğü gibi, düğmeye bastığınız geri bildirimi çağırmak daha mantıklı olabilir. Bununla birlikte, docs'da açıklandığı gibi, Button.invoke() yöntemi, düğmeye basmakla aynı etkiye sahip olacaktır (ve geri arama sonucunun sonucunu döndürecektir), ancak düğme şu anda devre dışı bırakılmışsa veya hiç etkin değilse, hiçbir etkisi olmayacaktır. geri aramak.

+1

Not: Düğmeye basıldığında, geri arama tamamlanana kadar vurgulanır ve vurgulanır. Geri çağrıyı doğrudan aradığınızda bu davranışı kaybedersiniz. –

+0

Bu, örneğin bir (Klasik) Mac OS 1983 Monkey tarzı fuzzerde kullanıcı etkinliğini simüle etmek için iyidir. – wizzwizz4

İlgili konular