IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası

IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası (https://www.ircforumlari.net/)
-   mIRC Scripting Programları (https://www.ircforumlari.net/mirc-scripting-programlari/)
-   -   Mdx.dll (https://www.ircforumlari.net/mirc-scripting-programlari/121493-mdxdll.html)

Heidi 27 Haziran 2008 19:14

Mdx.dll
 
Gerekse toolbar yapımı, gerekse MDX TreeView (Mdx Ayarlar) gibi şeylerde sıkça kullanılan, Dialoglarda görünüm kazandırma amaçlı kullanabilicek bir dll dosyası olan MDX.dll'nin kullanımını...

MDX.dll ile dialoglarımızın Komple rengini, dialoglarda kullanılan yazıların (gerek normal textlerin gerekse Box da kullanılan yazıların) renginin değiştirilmesi, Dialoglarda Iconlu buton oluşturma gibi bir çok şey mümkündür.

-Örnek Dialogla MDX.dll Kullanımı -
Bu Kodu remoteye yerleştiriyoruz. (Yani Alt+r ye basıp açılan remote penceresinde boş bir sayfaya bunları kopyalıyoruz... ) Kodun çalışması için Script remotelerinin de açık olması gerekir. Bundan da emin olmak için /remote on komutunu yazabilirsiniz..
Not: Burada MDX.dll Mirc klasörünün içinde Dll dosyasının içindedir. DLL\mdx.dll yazılı yeri istediğin gibi değişirsin..

Kod:

alias mdx { return $dll(DLL\mdx.dll,$1,$2-) }
alias oyunlar { if ($dialog(oyunlar)) { dialog -x oyunlar } | dialog -ma oyunlar oyunlar  }
dialog oyunlar {
 title " PrO mIRC - Oyunlar "
 size -1 -1 82 108
 option dbu
 icon icon\oyunlar.ico, 0
 button "Tavla", 1, 10 36 28 12
 button "Block", 3, 44 36 28 12
 box " Oyunlar ", 4, 6 25 72 46
 button "Yarış", 5, 10 54 28 12
 button "Uçak", 6, 44 54 28 12
 text
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
7, 12 95 60 8
 button "Tamam", 8, 19 75 40 14,ok cancel
 text "Oyunlar", 2, 19 7 72 15
}
on *:dialog:oyunlar:*:*:{
 if ($devent == init) {
  mdx SetMircVersion $version
  mdx MarkDialog $dname
  mdx SetDialog $dname bgcolor $rgb(230,230,250)
  mdx SetColor $dname 2,4,7 textbg $rgb(230,230,250)
  mdx SetColor $dname 2,4,7 background $rgb(230,230,250)
  mdx SetColor $dname 7 text $rgb(0,0,0)
  mdx SetColor $dname 2,4 text $rgb(255,0,0)
  mdx SetFont $dname 2 +b Turkish 28 750 Arial
  mdx SetFont $dname 8 Turkish 20 600 Arial
 }

Örnek Dialogun MDX.dll uygulanması sonucu ortaya çıkan resim:

Örnek Dialogda Kullanılan Komutların Açıklaması:
mdx SetDialog $dname bgcolor $rgb(230,230,250) --> Bu satır Ana dialogun rengini belirleyen koddur. Bgcolor ile bunu sağlıyoruz. Parantez içinde yer alan rakamlar ise RGB renk kod sayılarıdır.
mdx SetColor $dname 2,4,7 textbg $rgb(230,230,250) --> Bu satır ise dialogumuzda yer alan ve ID'leri (2,4,7) belirtilen yazıların (textlerin) arka plan rengini değiştirmimize yarar. textbg ile bunu sağlarız.. Parantez içinde yer alan rakamlar ise RGB renk kod sayılarıdır.
mdx SetColor $dname 2,4,7 background $rgb(230,230,250) --> Bu satır ise dialogumuzda yer alan ve ID'leri (2,4,7) belirtilen yerlere ait bölgenin tamamının arka planının rengini değiştirmimize yarar. Parantez içinde yer alan rakamlar ise RGB renk kod sayılarıdır.
mdx SetColor $dname 7 text $rgb(0,0,0)
mdx SetColor $dname 2,4 text $rgb(255,0,0) Bu iki satır ise dialogumuzda yer alan ve ID'leri (2,4,7) belirtilen yazıların rengini değiştirmimize yarar. Biz 7 numaralı Id ile 2 ve 4 numaralı Id'imizin renklerini farklı yaptık.
mdx SetFont $dname 2 +b Turkish 28 750 Arial
mdx SetFont $dname 8 Turkish 20 600 Arial Bu iki satır ise dialogumuzda yer alan ve ID'leri 2 ve 8 olan iki yazının yazı tipini (yazı fontunu) değiştirmimize yarar. Bunu setfont komutu ile gerçekleştiririz. Bu yazıtipi değişikliğinde gerek büyüklük, gerek yazıtipinin ne olduğunu değiştirmemiz mümkündür. Ayrıca yazılarımızı italik, BOLD ve altıçizili yapmamızda da yardımcı olur.
MDX.dll de kullanılabileceğimiz Font Tipleri (Yazı tipleri)
ANSI Symbol ShiftJIS Hangul GB2312
ChineseBig5 OEM Johab Hebrew Arabic
Greek Turkish Vietnamese Thai EastEurope
Russian Mac Baltic default unknown
+i ( italik yazar yani yana doğru yazar )
+u ( altı çizili yazar )
+b ( bold-kalın yazar )
20 ve 28 sayıları da font büyüklüğünü ifade eder. 600 ve 750 sayıları da fontu genişletme ve büyütmede kullanılır. Sayı arttıkça, yazı da daha kalın ( bold ) hale gelir.

Dialogun Belli yerinin renklendirilmesi ve Butonların Iconlu Buton olarak Yapılması

Bu Dialogların Belli bir kısmının nasıl renklendirildiğini ve dialoglarda yer alan Butonların nasıl Iconlu buton haline dönüştürüldüğü şöyle;

Öncelikle ; dialoglarda yer alan butonları renklendiremeyiz. Buna çözüm olarak o dialogu Iconlu yapıp görünümü daha düzgün hala getirebilirsiniz.


Dialog Kodu:

dialog otoidentify {
title " PrO mIRC - Otomatik Nick İdentify"
size -1 -1 220 139
option dbu
icon icon\identify.ico, 0
box "Nick Listesi", 14, 5 40 85 91
list 15, 10 51 75 75, disable
text "&Nick:", 16, 97 53 17 13
edit "", 17, 115 51 55 12, autohs
text "&Şifre:", 18, 97 69 17 13
edit "", 19, 115 67 55 12, pass autohs
list 20, 173 52 40 20
list 21, 173 68 40 20
check "&Otomatik İdentify Açık", 22, 111 92 75 13, flat
list 3, 121 117 55 30
box "Ayarlar", 1, 92 40 123 71
text "", 174, 5 4 209 28
list 175, 170 7 25 30, size disable
text " Otomatik Nick İdentify", 176, 7 7 110 20
text "
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
177, 6 19 100 8
box "",178, 5 1 210 32

}


MDX Kodlarının Dialoga uygulanması:

on *ialogtoidentify:*:*:{
if ($devent == init) {
mdx MarkDialog $dname
mdx SetBorderStyle $dname 174,176,177
mdx SetControlMDX $dname 175 toolbar flat list nodivider arrows > $bars
did -i $dname 175 1 bmpsize 38 38
mdx SetBorderStyle $dname 175
mdx SetColor $dname 175 background $rgb(245,245,245)
did -i $dname 175 1 setimage +nhd 0 icon large icon/identify.ico
did -i $dname 175 1 bwidth 250 250
did -a $dname 175 1 a
mdx SetColor $dname 174,176,177 background $rgb(245,245,245)
mdx SetColor $dname 174,176,177 textbg $rgb(245,245,245)
mdx SetFont $dname 176 19 600 Tahoma
mdx SetFont $dname 177 16 600 Tahoma
mdx SetFont $dname 1,14,16,18,22 13 600 Tahoma
mdx SetColor $dname 1,14,177 text $rgb(0,14,255)
mdx SetColor $dname 16,18 text $rgb(255,0,0)

mdx SetControlMDX $dname 3,20,21 toolbar arrows nodivider list noresize flat > $bars
mdx SetFont $dname 20,21 Turkish 14 800 Cyrillic
mdx SetFont $dname 3 Turkish 18 800 Cyrillic
mdx SetBorderStyle 3,20,21
did -i $dname 3 1 bmpsize 25 25
did -i $dname 3 1 setimage +nh icon small icon\tamam.ico
did -a $dname 3 +b 1 Tamam
did -i $dname 20 1 bmpsize 15 15
did -i $dname 20 1 setimage +nh icon small icon\sil.ico
did -a $dname 20 +b 1 Nick Ekle
did -i $dname 21 1 bmpsize 15 15
did -i $dname 21 1 setimage +nh icon small icon\ekle.ico
did -a $dname 21 +b 1 Nick Sil

}


Kod Sonucu ortaya çıkan görüntü:




- Dialogda yer alan Belli bir bölümü renklendirme -


Dialogumuzda yer alan şu satırlar dialogumuzda yer alan beyazımsı renke sahip olan yerin kodlarıdır.

text "", 174, 5 4 209 28
list 175, 170 7 25 30, size disable
text " Otomatik Nick İdentify", 176, 7 7 110 20
text "
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
177, 6 19 100 8
box "",178, 5 1 210 32

box "",178, 5 1 210 32 --> Bu satır o beyazımsı yeri çerçeve yapmak için kullandığımız box'dur. Bu sayede daha güzel bir görünüm kazandırdık oraya.

text "", 174, 5 4 209 28 --> Önemli olan yer işte burası. Bu dialogumuzda yer alan beyazımsı yerin kendisini oluşturur. Uzunluğu 209, genişliği 28 olarak ayarladık. Çerçeveyi (Box'u) işte bunun uzunluğu ve genişliğine göre ayarladık...

Dialogumuzun belli bölümü olarak Soldan 5 başlatarak 209 Dbu (418 pixel ) uzunluğu kadar beyaz yaptık. Bu beyazlığın ne kadar genişlikte olduğunu ise bunda genişliği 29 dbu (58 pixel) yaparak belirledik. Bu Beyazlığın dialogun üstten tam nerede başlaması gerektiğini ise üstten 4 olarak belirledik.

Not: Dbu büyüksel boyutta ki bir ölçü birimidir. Pixel ise Dbu'nun tam yarısı oranında olan daha küçüksel bir boyutta kullanabileceğimiz ölçü birimidir. Dialoglarımızda pixel ölçü birimini kullanmak en mantıklısıdır. Çünkü o ölçü birimi ile dialogumuzun boyutlandırmasını daha ince ayarlar ile ayarlayabiliriz.

list 175, 170 7 25 30, size disable --> Bu beyazımsı yerde yer alan Iconun oluşturan kod'dur.

text " Otomatik Nick İdentify", 176, 7 7 110 20
text "
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
177, 6 19 100 8 --> satırları ise o beyazımsı yerde yer alan bu yazıların kodlarıdır.


Dialoglarda yer alan butonları nasıl Iconlu buton haline çevirebiliriz?


- Dialoglarda kullandığımız Buton'ların Iconlu Buton olarak Yapılabilmesi -

Öncelikle şunu belirtmek gerekir. Normal olarak Dialoglarda Buton oluşturmak için

button "Tavla", 1, 10 36 28 12 tarzında bir kod kullanırız. Ama mdx.dll ile iconlu buton yapacaksak bunun yerine button komutu değilde List komutunu kullanmamız gerekir. Bu List komutunuda kullandığımız ID'lerde SetBorderStyle komutunu uygulayarak Buton görünümünü ve Icon kullanımını birlikte kullanarak Iconlu buton yapabiliyoruz...


Butonları Iconlu Buton haline çeviren Kod Satırları:

mdx SetControlMDX $dname 3,20,21 toolbar arrows nodivider list noresize flat > $bars
mdx SetFont $dname 20,21 Turkish 14 800 Cyrillic
mdx SetFont $dname 3 Turkish 18 800 Cyrillic
mdx SetBorderStyle 3,20,21
did -i $dname 3 1 bmpsize 25 25
did -i $dname 3 1 setimage +nh icon small icon\tamam.ico
did -a $dname 3 +b 1 Tamam
did -i $dname 20 1 bmpsize 15 15
did -i $dname 20 1 setimage +nh icon small icon\sil.ico
did -a $dname 20 +b 1 Nick Ekle
did -i $dname 21 1 bmpsize 15 15
did -i $dname 21 1 setimage +nh icon small icon\ekle.ico
did -a $dname 21 +b 1 Nick Sil

mdx SetControlMDX $dname 3,20,21 toolbar arrows nodivider list noresize flat > $bars --> Bu satır ile bu ID'lere (buton olacak ID'lerdir.) bazı kontrol araçları ekliyoruz..

mdx SetFont $dname 20,21 Turkish 14 800 Cyrillic
mdx SetFont $dname 3 Turkish 18 800 Cyrillic --> Bu satırlar ise Butonlarda kullanacağımız yazı tiplerini belirtir. Ben 2 Butonun yazı tipini 14 büyüklüğe sahip Cyrillic diğerini ise 18 büyüklüğüne sahip Cyrillic yaptım.. Bununla ilgili daha ayrıntılı açıklamalar bir üst mesajda yazmıştım..

mdx SetBorderStyle 3,20,21 --> Bu satır ile buton görünümlerini Border Stil yaptık.


En önemli yer olan Butonlarda kullanacağımız iconların yerleştirilmesi ..
Icon yerleştirirken aynı zamanda bu iconun ne kadar büyük olacağını ve Iconla beraber Butonda hangi yazının kullanılacağını belirleyeceğimiz kodlardır bunlar..

Mesela 3 Numaralı ID Tamam yazısının olduğu Iconlu butondur.

did -i $dname 3 1 bmpsize 25 25 --> Bu satırda ID numaramız 3 olduğu için yönlendirmede 3 numaralı ID'i belirttik.. Icon büyüklüğünü de 25 toplam genişlik 25 toplam uzunluk şeklinde ayarladık.

did -i $dname 3 1 setimage +nh icon small icon\tamam.ico --> satırıyla iconun uzantıyla beraber, icon yerleştirme kodunu kullandık..

did -a $dname 3 +b 1 Tamam --> Bu satır ile Butonda kullanacağımız yazının ne olduğunu belirledik.. Bu satırla sadece butonda yer alacak yazının ne olduğu belirlenir. Unutulmamaliki bu yazının büyüklüğünü üstte gösterilen mdx SetFont $dname 3 Turkish 18 800 Cyrillic koduyla gerçekleştirilmiştir.
alıntı

KoRTeS 02 Eylül 2008 16:47

Cevap: Mdx.dll
 
dll 'lerden nefret ediyorum :(

Duffy`DuCk 02 Eylül 2008 17:37

Cevap: Mdx.dll
 
McKruGer'e ait bi anlatım :)

Alıntı:

KoRTeS Nickli Üyeden Alıntı (Mesaj 536958)
dll 'lerden nefret ediyorum :(

Dll'ler güzeldir :D hayal gücüne bağlı dll'leri kullanman xD

KoRTeS 02 Eylül 2008 18:53

Cevap: Mdx.dll
 
addon 1000 kat daha güzel ;) dll gereksiz scriptingde bence addon varken gerek yok .

Duffy`DuCk 02 Eylül 2008 19:26

Cevap: Mdx.dll
 
Alıntı:

KoRTeS Nickli Üyeden Alıntı (Mesaj 537037)
addon 1000 kat daha güzel ;) dll gereksiz scriptingde bence addon varken gerek yok .

Dll'lerin kullanımını ögrenince anlıcaksın ne kadar güzel bişi oldugunu, Add-on 1000 kat daha güzel demişsinde (. Dll kullanılarak yabilan add-on'lar her zaman göze hoş gelmişdir. (.


Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 18:51.

Powered by vBulletin® Version 3.8.8 Beta 3
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2024 IRCForumlari.Net