Makrom yanlış yere tıklıyor: nedenleri ve çözümü
Makron tıklamaması gereken yere tıklıyorsa sebep neredeyse her zaman koordinatlardır. En yaygın nedenler, sorunu nasıl teşhis edeceğin ve bozulmasını nasıl önleyeceğin.
Bir makro kaydettin, ilk seferde çalıştı ve birkaç gün sonra hata vermeye başladı. Fare hareket ediyor ama düğmenin yanına tıklıyor. Makron yanlış yere tıklıyorsa sebep neredeyse her zaman aynıdır: kaydettiğin andakiyle artık aynı olmayan bir ekranda sabit koordinatları tekrarlıyor. Bu yazıda bunun neden olduğunu, adım adım nasıl teşhis edeceğini ve makronun bozulmasını önlemek için neler yapabileceğini göreceksin.
Belirti: makro hareket ediyor ama isabet ettiremiyor
Sorun hemen fark edilir. Makro başlar, imleç ekranda ilerler ve tıklamalar olması gereken yerin birkaç piksel üstüne, altına ya da yanına düşer.
Bazen daha da kötüdür, çünkü aralıklıdır. Bir çalıştırma işe yarar, sonraki başarısız olur, üçüncüsü yine çalışır. Bu kafa karıştırır, çünkü sanki makro ne zaman isabet ettireceğine "karar veriyor" gibidir. Aslında değişen makro değil, oynatıldığı ekrandır.
Neden olur: koordinatlar uyum sağlamaz
Geleneksel bir makro her tıklamayı ekrandaki bir nokta olarak kaydeder: soldan şu kadar piksel, yukarıdan şu kadar piksel. Oynatırken, altında ne olursa olsun tam o noktaya tıklar.
Her şey aynı kaldığı sürece bu işe yarar. Bir şey yer değiştirdiğinde işe yaramaz olur:
- Pencere aynı konumda veya boyutta değil. Kayıt sırasında tam ekrandaydıysa ve şimdi bir köşedeyse, tüm düğmeler başka bir yerdedir.
- Ekran çözünürlüğü veya ölçeklendirmesi değişti. Bir monitörden diğerine geçtiğinde ya da Windows ölçeklendirmesini değiştirdiğinde öğelerin boyutu ve konumu değişir.
- Pencere her açılışta biraz kayıyor. Bir Keyboard Maestro forumunda bir kullanıcı, bir eklenti penceresinin her açılışta yaklaşık 20 piksel, yani kabaca bir başlık çubuğu yüksekliği kadar yukarı çıktığını fark etti. Pencereye göre hesaplanan tıklamaları her seferinde aynı mesafeyle ıskalıyordu.
- Düğmelerin boyutu değişiyor. Daha uzun bir metin, bir çeviri ya da bir program güncellemesi bir düğmeyi kaydırmaya yeter.
- Listeler yeniden sıralanıyor. Aradığın öğe üçüncü satırdan beşinciye geçerse, makro üçüncüye tıklamaya devam eder.
- Öğelerin görünmesi zaman alıyor. Makro, düğme yüklenmeyi bitirmeden tıklarsa boş bir alana tıklar.
Nasıl teşhis edilir
Herhangi bir şeyi değiştirmeden önce kayda göre neyin farklı olduğunu bul. Şu listeyi gözden geçir:
- Pencere aynı konumda ve aynı boyutta mı? Kayıt yaptığın andaki hâliyle karşılaştır.
- Aynı monitörü mü kullanıyorsun? Birden fazla monitörün varsa pencerenin hangisinde açıldığını kontrol et.
- Çözünürlük ve Windows ölçeklendirmesi aynı mı? Ekran ayarlarına bak.
- Tıklamadan önce ekranın yüklenmesi bitmiş miydi? Makronun yavaş bir öğenin önüne geçip geçmediğine bak.
- İçerik değişti mi? Bir güncelleme, daha fazla öğe içeren bir liste ya da yeni bir uyarı her şeyi kaydırabilir.
Hata aralıklıysa 4. maddeye dikkat et. Bir makro bazen isabet ettirip bazen ıskalıyorsa sebep genellikle konum değil, yükleme süresidir.
Genel çözümler
Bu çözümler yalnızca bir araçla değil, her makro aracıyla işe yarar:
- Pencerelerin konumunu ve boyutunu sabitle. Oynatmadan önce programı her zaman tam ekran ya da aynı konumda aç.
- Her zaman aynı monitörü kullan ve kayıt ile oynatma arasında ekran ölçeklendirmesini değiştirme.
- Yavaş ekranların olduğu yerlere zaman payı ekle, böylece tıklama düğmeden önce gelmez.
- Yalnızca koordinatlara güvenmeyi bırak. Asıl çözüm bu. Makro "X, Y noktasına" tıklamak yerine öğeyi görüntüsüyle veya bağlamıyla aramalı ve bulduğu yere tıklamalıdır.
Keyboard Maestro forumundaki örnekte kesin çözüm tam olarak buydu. Kullanıcı pencerenin köşesine göre tıklamayı bıraktı ve ekranda bulunan bir görüntüye göre tıklamaya geçti.
Akıllı mod bunu nasıl çözüyor
Macro Quantic Pro'da bu sorun için tasarlanmış bir seçenek var: Akıllı mod. Kayıt bölümünün yakalama seçeneklerinde bulunur ve varsayılan olarak açıktır.
Akıllı mod ile kayıt yaptığında program her tıklamanın çevresinin küçük bir görüntüsünü saklar. Oynatırken, tıklamadan önce o noktadakinin görüntüye benzeyip benzemediğini kontrol eder:
- Benziyorsa, vakit kaybetmeden kaydettiğin yere tıklar.
- Benzemiyorsa, çevrede en iyi eşleşen bölgeyi arar ve tıklamayı oraya düzeltir. Yakında bulamazsa daha geniş aramalar dener; örneğin düğmenin metnini okuyup ekranda onu arar.
- Düğme henüz görünmediyse, vazgeçmeden önce kısa bir süre denemeye devam eder.
Böylece en yaygın durumları karşılar: yeri değişmiş bir pencere, boyutu değişmiş bir düğme, yeniden sıralanmış bir liste ya da görünmesi biraz gecikmiş bir düğme. Oynatma ayrıca kaydın tam ritmini, eylemler arasındaki aynı duraklamalarla korur.
Akıllı mod 7 günlük ücretsiz denemede ve Starter, Pro ve Enterprise planlarında kullanılabilir. Free plan bunu içermez: Free'de makro yalnızca kaydedilen koordinatları tekrarlar. Planları fiyatlandırma sayfasında karşılaştırabilirsin.
Dürüst sınırlar
Hiçbir yöntem her zaman isabet ettirmez, Akıllı mod da öyle. Ne zaman başarısız olabileceğini bilmekte fayda var:
- Yeterince iyi eşleşen bir şey bulamazsa risk almaz: normal bir makro gibi kaydedilen noktaya tıklar.
- İki yer neredeyse aynı görünüyorsa, örneğin bir listede neredeyse aynı iki satır, rastgele seçmez. Tıklamayı kaydedildiği yerde bırakır.
- Öğenin görünümü tamamen değişirse, saklanan görüntü onu bulmaya artık yaramaz.
- Öğenin görünmesi çok uzun sürerse, kısa bekleme yetmez. Bu durumda zaman payı eklemek veya makroyu parçalara ayırmak daha iyidir.
Bu yüzden Akıllı modu açsan bile pencereleri sabit bir yerde tutmak yine de iyi bir fikirdir. Ekran kayıttaki hâline ne kadar benzerse makro o kadar güvenilir olur.
Akıllı modu dene
Makroların değişen konumlar yüzünden başarısız oluyorsa Macro Quantic Pro'yu Microsoft Store'dan ücretsiz indirebilir ve Akıllı modu 7 günlük denemede, kart olmadan deneyebilirsin. Makro kaydedici sayfasında nasıl kaydettiğine ve oynattığına dair bir özet var.
Sık sorulan sorular
Makrom neden başka bir yere tıklıyor?
Çünkü kaydedilen koordinatları tekrarlıyor ve ekran artık aynı değil. Genellikle pencere yer değiştirmiştir, çözünürlük veya ölçeklendirme değişmiştir ya da tıklama geldiğinde düğme henüz yüklenmemiştir.
Hangisi daha iyi: koordinatlar mı, öğe tanıma mı?
Ekran hiç değişmiyorsa koordinatlar hızlı ve yeterlidir. Değişiyorsa tıklamadan önce öğeyi bulmak daha güvenilirdir. İdeali ikisini birleştirmektir: sabit bir ekran ve düğmenin nerede olduğunu kontrol eden bir araç.
Ekran çözünürlüğü makrolarımı etkiler mi?
Evet. Çözünürlüğü veya Windows ölçeklendirmesini değiştirirsen öğelerin boyutu ve konumu değişir. Yalnızca koordinatlara dayanan bir makro isabet ettirmeyi bırakabilir. En güvenlisi, kayıt yaptığın ayarlarla oynatmaktır.
Makromun bir düğmenin yüklenmesini beklemesini nasıl sağlarım?
Yavaş ekranlarda tıklamadan önce zaman payı ekle. Macro Quantic Pro'da Akıllı mod, düğme henüz yoksa kısa bir süre yeniden dener. Uzun beklemeler için, belirli bir metin göründüğünde makroyu başlatan bir OCR robotu kullanabilirsin.
Kaynaklar
- Keyboard Maestro forumu: Move and click inconsistent when repeating the macro