Mesaj Önizleme 
 
Konuyu Değerlendir
  • 0 Oy - 0 Ortalama
  • 1
  • 2
  • 3
  • 4
  • 5
MDX.DLL Dersleri (Örnekli Açklamalarla)
05-07-2007, 12:16 AM (En son düzenleme: 05-24-2008 11:45 PM McKruGer.)
Mesaj: #1
MDX.DLL Dersleri (Örnekli Açklamalarla)
Gerekse toolbar yapm, gerekse MDX TreeView (Mdx Ayarlar) gibi eylerde skça kullandmz, Dialoglarmza görünüm kazandrma amaçl kullanabileceimiz bir dll dosyas olan MDX.dll'nin kullanmn zamanla burada göstermeye çalacam..

MDX.dll ile dialoglarmzn Komple rengini, dialoglarda kullanlan yazlarn (gerek normal textlerin gerekse Box da kullanlan yazlarn) renginin deitirilmesi, Dialoglarda Iconlu buton oluturma gibi bir çok ey mümkündür. Bunlar açklayc bir takm örneklerle sizlere sunmaya çalacam..


-Örnek Dialogla MDX.dll Kullanm -

Bu Kodu remoteye yerletiriyoruz. (Yani Alt+r ye basp açlan remote penceresinde bo bir sayfaya bunlar kopyalyoruz... ) Kodun çalmas 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 dosyasnn içindedir. DLL\mdx.dll yazl yeri istediin gibi deiirsin..

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 http://www.irchelper.net, 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:

[Resim: oyun.PNG]

Örnek Dialogda Kullanlan Komutlarn Açklamas:

mdx SetDialog $dname bgcolor $rgb(230,230,250) --> Bu satr Ana dialogun rengini belirleyen koddur. Bgcolor ile bunu salyoruz. Parantez içinde yer alan rakamlar ise RGB renk kod saylardr.

mdx SetColor $dname 2,4,7 textbg $rgb(230,230,250) --> Bu satr ise dialogumuzda yer alan ve ID'leri (2,4,7) belirtilen yazlarn (textlerin) arka plan rengini deitirmimize yarar. textbg ile bunu salarz..  Parantez içinde yer alan rakamlar ise RGB renk kod saylardr.

mdx SetColor $dname 2,4,7 background $rgb(230,230,250) --> Bu satr ise dialogumuzda yer alan ve ID'leri (2,4,7) belirtilen yerlere ait bölgenin tamamnn arka plannn rengini deitirmimize yarar. Parantez içinde yer alan rakamlar ise RGB renk kod saylardr.

mdx SetColor $dname 7 text $rgb(0,0,0)
mdx SetColor $dname 2,4 text $rgb(255,0,0)
Bu iki satr ise dialogumuzda yer alan ve ID'leri (2,4,7) belirtilen yazlarn rengini deitirmimize yarar. Biz 7 numaral Id ile 2 ve 4 numaral Id'imizin renklerini farkl yaptk.

mdx SetFont $dname 2 +b Turkish 28 750 Arial
mdx SetFont $dname 8 Turkish 20 600 Arial
Bu iki satr ise dialogumuzda yer alan ve ID'leri 2 ve 8 olan iki yaznn yaz tipini (yaz fontunu) deitirmimize yarar. Bunu setfont komutu ile gerçekletiririz. Bu yaztipi deiikliinde gerek büyüklük, gerek yaztipinin ne olduunu deitirmemiz mümkündür. Ayrca yazlarmz italik, BOLD ve altçizili yapmamzda da yardmc olur.

MDX.dll de kullanlabileceimiz 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 doru yazar )
+u ( alt çizili yazar )
+b ( bold-kaln yazar )

20 ve 28 saylar da font büyüklüünü ifade eder. 600 ve 750 saylar da fontu geniletme ve büyütmede kullanlr. Say arttkça, yaz da daha kaln ( bold ) hale gelir.


Not: Bu MDX.dll Kullanm ile ilgili dersleri zamanla dier ilgili bölümlerini de ekleyerek gelitireceim.

ölümü özlemeyen gerçek a$k anlayamaz...
Kullanıcının websitesini ziyaret et Bu kullanıcının gönderdiği tüm mesajları bul
Bu mesajı bir cevapta alıntı yap
07-20-2007, 12:35 AM (En son düzenleme: 05-24-2008 11:46 PM McKruGer.)
Mesaj: #2
Ynt: MDX Dersleri (Örnekli Açklamalarla)
Bir üst balkta dialoglarn Tamamnn  nasl renklendirdiimizi ve dialogda yer alan box ve textlerin (yazlarn) nasl renklendirildiini iledik..

imdi Dialoglarn Belli bir ksmnn nasl renklendirildiini ve dialoglarda yer alan Butonlarn nasl Iconlu buton haline dönütürüldüünü göreceiz.


Öncelikle unu belirteyim; dialoglarda yer alan butonlar renklendiremeyiz. Bizde buna çözüm olarak o dialogu Iconlu yapabiliriz ve böylece görünümü dahada güzelletiririz...


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 "  http://www.tmirc.com", 177, 6 19 100 8
  box "",178, 5 1 210 32

}


MDX Kodlarnn Dialoga uygulanmas:

on *:dialog:otoidentify:*:*:{
  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ü:


[Resim: otoidentify.PNG]


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


Dialogumuzda yer alan u satrlar dialogumuzda yer alan beyazms renke sahip olan yerin kodlardr.

  text "", 174, 5 4 209 28
  list 175, 170 7 25 30, size disable
  text " Otomatik Nick dentify", 176, 7 7 110 20
  text "  http://www.tmirc.com", 177, 6 19 100 8
  box "",178, 5 1 210 32

box "",178, 5 1 210 32  --> Bu satr o beyazms yeri çerçeve yapmak için kullandmz box'dur. Bu sayede daha güzel bir görünüm kazandrdk oraya.

text "", 174, 5 4 209 28 --> Önemli olan yer ite buras. Bu dialogumuzda yer alan beyazms yerin kendisini oluturur. Uzunluu 209, genilii 28 olarak ayarladk.  Çerçeveyi (Box'u) ite bunun uzunluu ve geniliine göre ayarladk...

Dialogumuzun belli bölümü olarak Soldan 5 balatarak 209 Dbu (418 pixel ) uzunluu kadar beyaz yaptk. Bu beyazln ne kadar genilikte olduunu ise bunda genilii 29 dbu (58 pixel) yaparak belirledik. Bu Beyazln dialogun üstten tam nerede balamas gerektiini ise üstten 4 olarak belirledik.

Not: Dbu büyüksel boyutta ki bir ölçü birimidir. Pixel ise Dbu'nun tam yars orannda olan daha küçüksel bir boyutta kullanabileceimiz ölçü birimidir. Dialoglarmzda pixel ölçü birimini kullanmak en mantklsdr. Çünkü o ölçü birimi ile dialogumuzun boyutlandrmasn daha ince ayarlar ile ayarlayabiliriz.

list 175, 170 7 25 30, size disable --> Bu beyazms yerde yer alan Iconun oluturan kod'dur. 

text " Otomatik Nick dentify", 176, 7 7 110 20
text "  http://www.tmirc.com", 177, 6 19 100 8
--> satrlar ise o beyazms yerde yer alan bu yazlarn kodlardr.


imdi Dialoglarda yer alan butonlar nasl Iconlu buton haline çevirebileceimizi görelim..


[COLOR="Red"]- Dialoglarda kullandmz Buton'larn Iconlu Buton olarak Yaplabilmesi -[/COLOR]

Öncelikle unu belirtmek gerekir. Normal olarak Dialoglarda Buton oluturmak için

button "Tavla", 1, 10 36 28 12  tarznda bir kod kullanrz. Ama mdx.dll ile iconlu buton yapacaksak bunun yerine button komutu deilde List komutunu kullanmamz gerekir. Bu List komutunuda kullandmz ID'lerde  SetBorderStyle komutunu uygulayarak Buton görünümünü ve Icon kullanmn birlikte kullanarak Iconlu buton yapabiliyoruz...


Butonlar Iconlu Buton haline çeviren Kod Satrlar:

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 satr 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 satrlar ise Butonlarda kullanacamz yaz tiplerini belirtir. Ben 2 Butonun yaz tipini 14 büyüklüe sahip Cyrillic dierini ise 18 büyüklüüne sahip Cyrillic yaptm.. Bununla ilgili daha ayrntl açklamalar bir üst mesajda yazmtm..

mdx SetBorderStyle 3,20,21 --> Bu satr ile buton görünümlerini Border Stil yaptk.


Gelelim en önemli yer olan Butonlarda kullanacamz iconlarn yerletirilmesi iine..
Icon yerletirirken ayn zamanda bu iconun ne kadar büyük olacan ve Iconla beraber Butonda hangi yaznn kullanlacan belirleyeceimiz kodlardr bunlar..

Mesela 3 Numaral ID Tamam yazsnn olduu Iconlu butondur.

did -i $dname 3 1 bmpsize 25 25  --> Bu satrda ID numaramz 3 olduu için yönlendirmede 3 numaral ID'i belirttik.. Icon büyüklüünü de 25 toplam genilik 25 toplam uzunluk eklinde ayarladk.

did -i $dname 3 1 setimage +nh icon small icon\tamam.ico  --> satryla iconun uzantyla beraber, icon yerletirme kodunu kullandk..

did -a $dname 3 +b 1 Tamam  --> Bu satr ile Butonda kullanacamz yaznn ne olduunu belirledik..  Bu satrla sadece butonda yer alacak yaznn ne olduu belirlenir. Unutulmamaliki bu yaznn büyüklüünü üstte gösterdiimiz  mdx SetFont $dname  3 Turkish 18 800 Cyrillic koduyla gerçekletirdik.

ölümü özlemeyen gerçek a$k anlayamaz...
Kullanıcının websitesini ziyaret et Bu kullanıcının gönderdiği tüm mesajları bul
Bu mesajı bir cevapta alıntı yap
07-30-2007, 02:48 AM
Mesaj: #3
Ynt: MDX.DLL Dersleri (Örnekli Açklamalarla)
Bu dll bana Baka Serverde Anlatmstn Smile

SpyMasteR - BerkanT
Kullanıcının websitesini ziyaret et Bu kullanıcının gönderdiği tüm mesajları bul
Bu mesajı bir cevapta alıntı yap
02-23-2008, 06:27 AM
Mesaj: #4
Ynt: MDX.DLL Dersleri (Örnekli Açklamalarla)
McKruGer Abi Neler Çektiini Tahmin Edebiliyorum : )

[center]-[ MCT TeaM ]-<br />-[ Script Coder ßy LauRéLL ]-[/center]<br />[center][img]http://img254.imageshack.us/img254/5427/mctca7.gif[/img][/center]
Kullanıcının websitesini ziyaret et Bu kullanıcının gönderdiği tüm mesajları bul
Bu mesajı bir cevapta alıntı yap
Mesaj Önizleme 




Forum izinleri
yeni konu açamazssın
cevap yazamazssın
eklenti yüklemesi yapamazssın
HTML kodu kapalı.
BBCODE kodu açık.
smilie`ler açık.
[img] kodu açık.