2. ders Autoit Değişkenler [Variables]

Değişkenler kullanımı

İyi bir programcı olmak için değişkenlerin yapısını ve nasıl kullanıldığını kavramak şarttır. Autoit programdaki komutlar  rakamlara benzetilecek olsa değişkenlerde bu rakamların birbirleriyle toplanması yada çarpmasına benzetilebilirdi. değişkenlerin Gerçekten ne olduğunu ve nasıl kullanıldığını daha iyi kavramak için örneklere başvuracağız Öncelikle dört tip değişken vardır ama biz sıklıkla ikisini kullanacağız.Bunlar Local ve Global başlıklı değişkenlerdir. 

Örneğin Global başlığı altında bir değişken atadığımızda.  Bu değişkene programın her yerinde ulaşabiliriz ama Lokal başlığı altında ( lokal kelimesinin anlamı yereldir) bir değişken atadığımızda bu değişkene sadece fonksiyon içerisinde ulaşabiliriz o yüzden lokal değişkenini geçici olarak sadece fonksiyon içerisinde kullanacağız. fonksiyonlara daha sonra değineceğiz hemen birkaç örnek yapalım

 

$saat = @hour

$dakika = @min

consolewrite($saat &" "@$dakika)

Yukarıdaki örnekte $saat değişkenine bilgisayarın saatini, $dakika değişkenine ise bilgisayarın dakikasını atadık. ve consola bu değişkenlerin içerdiği değeri yazdırdık.. başka bir örnek

 

for $a= 1 to 10

$saniye = @sec

consolewrite ("Şu anki saniye ..." & $saniye &@crlf)

sleep(1000)

next

 

 

Evet bu örnek değişkenlerin nasıl çalıştığını anlamamız için daha faydalı bir örnek ilk satırda for komutuyla ( bu komuta ilerde değil değineceğiz )10 turluk bir döngü oluşturduk ikinci satırda ise saniye değişkenine bilgisayarın saniyesini atardık üçüncü satırda ise konsola O anki saniye değişkenini yazdırdık dördüncü satır değilse bilgisayarımızı 1000 milisaniye Yani bir saniye beklettik ve son satırda Next komutuyla programınızı en başa döndürdük Burada yeni bir komut gördüğünüz O da slip komutudur slip komutu kullanımı basittir.

Programı çalıştırdığımızda konsoldaki saniyenin her turda birer arttığını göreceğiz yani her turda bizim saniye değişikenimizin içeriği değişmektedir işte değişkenlerde tamam da bu amaç için vardır bir başka örnek yapalım

$test = run("calc.exe")   ;$test değişkeni calc.exe nin çalıştırılmasına atandı
sleep(1000)
$test = WinGetTitle ( $test,"")   ; $test değişkeninin içeriği artık "Hesap Makinesi"  oldu
sleep(1000)
 WinSetTitle($test,""," Kitap Makinesi")  ;  $test in anlamı "Hesap Makinesi" olduğuna göre  PencereninAdınıDegis("Hesap Makinesi","","Kitap Makinesi")    

 

Değişkenleri anlamak açısından yukarıdaki örnek daha anlamlıdır ilk satırda Hesap makinesini başlattık ve bu başlama işlemini test değişkenine atadık. Hesap makinesi başladığında sol üstünde bilindiği üzere hesap makinesi yazıyor ikinci satırda bir saniye bekledik üçüncü satırda test değişkeni ile açtığımız programın başlığını aldık yani  "Hesap makinesi". 1nci satırda $test değişkenimizin içeriği calc.exenin başlatılması iken üçüncü satırda $test değişkenimizin içeriği programın başlığı oldu. üçüncü satırda WinGetTitle'ın içerisinde $test değişkeninin kullanılmasına dikkat edin. 

Ve son satırda ise "Hesap Makinesi" olarak atanmış $test değişkenini kullanarak calc.exe nin başlığını değiştiriyoruz 

 Local $birincisayi =10
 Local $ikincisayi = 20

    degistir($birincisayi, $ikincisayi)
    ConsoleWrite("birinci sayı ve ikinci sayının içerikleri değişti" & @CRLF & "İkinci sayının içeriği artık -- " & $ikincisayi &" --")

Func degistir(ByRef $a, ByRef $b) ;değişkenlerin içeriğini değiştirir...
    Local $t = 0
    $t = $a
    $a = $b
    $b = $t
EndFunc   ;Fonksiyon sonu

Değişkenler ile ilgili bu son örneğimizde birinci sayımızın değerli 10 ikinci sayının değeri 20 dir gördüğünüz gibi burada değiştir isminde bir fonksiyon var işte bütün işlemler bu alt fonksiyonda gerçekleşiyor. üçüncü satırdaki değiştir ile başlayan fonksiyon komutuyla program doğrudan Func değiştir() kısmına atlıyor ve bu fonksiyon içerisindeki değişkenleri birbirlerine atayarak değiştirme işlemini bitirdikten sonra sonucu konsolu yazdırıyor. eğer dikkat ederseniz programın başında $ikincisayi değişkenimizin içeriği 20 iken programın sonunda Yani konsola yazdırıldığında $ikincisayının içeriği 10 olduğunu görüyoruz Burada da değişkenlerin birbirine aktarılarak nasıl içeriğinin değiştirildiğini görmüş olduk. buradaki fonksiyon komutuna daha sonra değineceğiz.

Değişkenleri anlamamızı kolaylaştıracak bir örnek daha paylaşalım. bu örnekte $a değişkeni istanbul , $b değişkeni ise istanbul kelimesindeki harflerin toplam sayısıdır. For - Next döngüsü ile t değişkenini birden başlayarak $t değişkeni kadar tekrarlatıyoruz ve programın konsolundan değişkenlerin içeriğini takip ediyoruz.

 

$a="istanbul"
$b = stringlen($a)  ; stringlen komutu "string lenght" yani "kelime uzunlugu" anlamındadır. $b = 8 olmuştur

   for $t=1 to $b
   ConsoleWrite($t&@CRLF)
   Next

Yukarıdaki örnekte  for $t=1 to $b yerine  for $t=1 to stringlen($a) da diyebilirdik. Fakat değişkenlerle çalışmaya alışmak herzaman daha pratiktir. Özellikle bir değişkeni pekçok yerde kullanacaksak...

 

$sayi = 10     ; $sayi degişkeni bir rakamdır. değişkene sayısal değer atayacaksak tırnak kullanmıyoruz.

$sayi = "10"  $sayi değişkeni metindir. kelimedir. rakam değildir

 

 

 

Önemli not: Değişkenler tırnak içerisinde kullanılmazlar.Aşağıdaki yazılımlar yanlıştır. 

consolewrite("$a")

stringreplace("$a"," ")

 

 

#include kullanımı

include, Autoit Script Editor kütüphanelerini  kullanacağımız zaman programımızın ilk satırına yazacağımız komuttur. Örneğin ?nternet Explorer tarayıcısını kullanarak yapılan pek çok işlem vardır sekmelerde gezinti yapmaktan tuttuğunda tarayıcı sayfasındaki girilmiş Metin parçalarını kopyalamak ya da tarayıcıdaki linkleri almak ya da bu iliklere tıklatmak için bir ?nternet Explorer Kütüphanesi mevcuttur işte Bu yüzden bazı komutları kullanmak istediğimizde programın ilk satırında  o komutun içinde olduğu kütüphanede programa çağırmamız gerekmektedir bunu include komutuyla yapıyoruz

 #include <IE.au3>
_IEAction ( ByRef $oObject, $sAction )

Örneğin ekrana _ieAction()  yazıp F1 uşuna bastığımızda açılan yardım penceresinde komuta ait parametrelerde birlikte include uyarısı da gözümüze çarpıyor eğer   Biz bu include satırını programınızı almazsak Autoit Script Editor_IEAction kadındaki komutu tanımayacaktır. Ve hata mesajı verecektir. o bakımdan kullandığımız komutun include'a (kütüphaneye) ihtiyaç duymadığından emin olmamız gerekiyor. Zaten zamanla hangi komutların include istedğini ezberlemiş olacaksınız......

 

#include <IE.au3>

Local $oIE = _IECreate("http://www.autoitscript.com/forum/index.php")
Send("{TAB 12}")
Send("{ENTER}")
_IELoadWait($oIE)

 

Yukarıdaki örnekte internet explorer tarayıcısını başlatıp http adresine girmek için include satırı gereklidir..

Kategoriler: 

Etiketler: 

1 Comment

autoit örnekler

İmla hataları var

Sayfalar

Yeni yorum ekle

Filtered HTML

  • Web sayfası ve e-posta adresleri otomatik olarak bağlantıya çevrilir.
  • İzin verilen HTML etiketleri: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Satır ve paragraflar otomatik olarak bölünür.

Plain text

  • Hiç bir HTML etiketine izin verilmez
  • Web sayfası ve e-posta adresleri otomatik olarak bağlantıya çevrilir.
  • Satır ve paragraflar otomatik olarak bölünür.
CAPTCHA
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.
Resimli CAPTCHA
Resimde görünen karakterleri girin.