Selam arkadaşlar, bir sorum olacaktı.
Bilgisayarımdaki bir programda otomatik tuş basımları yaptırmak istiyorum, keyboard gibi kütüphaneleri denedim ama maalesef ilgili program bu girdileri algılamıyor. Araştırınca şunu farkettim, keyboard gibi kütüphaneler aslında ‘karakter bastırıyor’. Yani klavyedeki tuşa basıyormuş gibi çalışmıyor. Sadece ona verdiğim karakteri (string veriyi) bastırıyor. Benim yaptırmak istediğim ise karakterden ziyade doğrudan tuşa bastırmak. Karşılığı ne olursa olsun, sen o tuşa bas. Bunun için ise öncelikle klavyemin tuş kodlarını haritalamam gerekiyormuş. İşte tam olarak tıkandığım nokta burası, hangi araçla tarayacağımı bilmiyorum. Daha önce bu konuda uğraşmış birisi yardımcı olursa çok sevinirim.
Aslında tuş haritasını çıkarmak yerine öncelikle programa herhangi bir tuş girdisini algılatabilmek üzerine çalışmalıyım. Çünkü henüz bunu yapamıyorum, çıkardığım harita da görevin 2. aşamasında olacak
Hahhahah O kadar basit bir adımı atlamışım ki, Python’ın başka bir programa müdahale edebilmesi için kullandığım kod editörünü yönetici olarak çalıştırmam gerekiyor tabii. İlk aşamayı geçmiş oldum, şimdi 2. aşamayı biraz daha araştırabilirim.
tamam ama insanlar vaktini ayırıp sorun çözmeye başlıyor ve konu anlaşılmaz olunca vakit boşa gidebiliyor ve ortada kod da yok. Belki daha kısa ve net yazılsa konular, daha hızlı doğru cevap alınabilir.
tamam konu metin2 ise bu tarz bi kod işini görmesi lazım. linux kullandığım için kodu çalıştıramadım ama windows ta yönetici olarak çalıştırırsan çalışması lazım. hata olursa söylersin.
import pydirectinput, threading
def skill1():
while True:
pydirectinput.press("1")
def skill2():
while True:
pydirectinput.press("2")
def skill3():
while True:
pydirectinput.press("3")
def skill4():
while True:
pydirectinput.press("4")
def th():
t1 = threading.Thread(target=skill1)
t1.start()
t2 = threading.Thread(target=skill2)
t2.start()
t3 = threading.Thread(target=skill3)
t3.start()
t4 = threading.Thread(target=skill4)
t4.start()
th()