Bilgisayarda girdi birimi olarak kullanılan donanımlardan en çok kullanılanı
klavye ve faredir. QuickBasic ile kullanıcının klavye girdisi
sağlayabileceği gibi klavye tuş vuruşları da takip edilip kontrol edilebilir.
Klavyede basılan bir tuşun bir veya iki baytlık bir dize(string) değerini
verir.
Klavyeden tuşlara basıldığında tuş bilgileri klavye ara belleğine(tampon)
aktarılır.
PLAY komutunda olduğu gibi tampondaki sıraya göre tuş vuruşları bilgisayara
iletilerek değerlendirilir.
Tamponda bekleyen bir karakter yoksa INKEY$ boş olacaktır.
Tek karakterlik bir dize, klavyeden okunan gerçek tuş karakteri içerirken, iki
karakterli bir dize, ilk karakteri 0 olan genişletilmiş bir kodu belirtir.
F1-F12, imleç yön tuşları, home, end... Nümerik klavye tuşları... vb.
Tek başına basılan CTRL, ALT, SHIFT, CAPS LOCK, NUM LOCK, SCROLL LOCK
tuşlarını algılamaz.
6) Lisp ile AutoCAD komutu oluşturarak makro çalıştırma
AutoCAD'de programlama için kullanılan dillerden biri de LISP'dir. Lisp hakkında
başlangıç seviyesinde bir yazımı okumak için:
AutoLisp ile programlama: Orijine zumla
Autocad'de LISP kodlamak için AutoCAD ile birlikte kurulan
Visual Lisp for AutoCAD kullanılabilir ancak "Lisp ile AutoCAD komutu oluşturarak makro çalıştırma" için bunu kullanmayacağım. LISP kodları yazmak için Visual LISP şart
değildir. Herhangi bir metin editörü kullanılabilir.
VBA makro
kodlarının çalıştırılması için VBA içinde AutoCAD komut tanımlaması yoktur.
LISP'de ise LISP komutlarını çalıştıracak AutoCAD komut tanımlaması
yapılabiliyor. LISP'in bu özelliğinden faydalanarak oluşturduğumuz VBA
makrolara AutoCAD komutu tanımlayacağız. İşlem çok basittir. Bu iş için
LISP dillinde kodlamayı bilmek şart değildir. Eksen Çiz VBA makromuz
için LISP ile bir AutoCAD komutu oluşturacağız.
Bunun için; Bir metin editörü(Örneğin Windows Not Defteri =
notepad.exe, ya da
Notepad++) açıp aşağıdaki kodları ekleyin.
Dosyayı EksenCiz.lsp olarak kaydedin. Windows'da dosya uzantılarınız
gizli ise ayarlardan görünür yapın.
LISP kodlarındaki c:EC() Autocad komut satırından girilecek komut
adıdır(EC), alt satır ise bu komut girildiğinde buna karşılık gelen
komutu ve parametresini belirtir.
EC yerine başka bir ad
verilebilir. EKSENCIZ gibi. Lisp dosyayı AutoCAD'e yüklemek için
bir kaç yol var ancak burada en basit olanı göstereceğim. Masaüstüne
kaydettiğimiz EksenCiz.lsp dosyasını sürükleyip AutoCAD çizim alanına
bırakın. VBA makroları yüklerken olduğu gibi bir güvenlik uyarısı
gelecek. Burda Load Once tıklayın.
Bir dahakinde sormasını istemiyorsanız
Always Load tıklayın.
Artık komut satırından
EC girilerek Eksen Çiz VBA makrosu çalıştırılabilir. İlk
çalıştırmada VBA makro yüklü değilse dosyayı belleğe yükleyeceği için üstteki
gibi güvenlik uyarısı çıkabilir. Load Once tıklayın.
Eğer birden fazla VBA makro kodu varsa bunlara ayrı ayrı lsp dosya oluşturmak
şart değildir. Bir lsp dosyada tüm VBA makro kodları için ayrı ayrı
AutoCAD komutu tanımlanabilir.
Komut satırından
-VBARUN C:\Users\Mesut\Desktop\Makrolarim.dvb!EksenCiz yazmak yerine bu
kodları giren bir AutoCAD butonu oluşturarak makronun çalıştırılması
sağlanabilir. Bu işlem, makroyu çalıştırmada kolaylık sağlayacaktır.
Bunun
için; Komut satırından CUI komutu(Customize User
Interface = Özelleştirme Kullanıcı Arabirimi) verilir ya da menüden
Manage / Customization / User interface tıklanır.
Açılan
pencerede; Customize tab'ı seçili iken altındaki açılır listeden
Main Customization File(acad.cuix) seçilir. Bu AutoCAD'in kullandığı ana
özelleştirme dosyasıdır.
Kablosuz farenizin pilleri tükendi ya da fare arızalandı çalışmaz oldu. Böyle bir durumda Windows'un entegre fare tuşlarından yararlanabilirsiniz. Özelliği açmak için ALT+sol SHIFT+NUM LOCK tuş birleşimini kullanın ve açılan pencereden Evet'i tıklayın.
Aynı tuşlar özelliği devre dışı bırakmanızı da sağlıyor. Fare tuşları etkinleştirildiğinde bildirim alanında fare simgesi belirecek. Bu simge, Windows'un klavyenin sağındaki sayı tuşları üzerinden yönetilebileceğini gösteriyor.
[5] sol fare tuşunun [+] çift tıklama.
Sağ tıklama için önce [-]'ye daha sonra [5] ya da [+]ya basın. [*] ile orta tuşu etkinleştirebilirsiniz. [/] ise ilk duruma geri dönmenizi sağlar.