UbeRbLow Hack Team

Üye Olmak İçin Tıklayınız !

 

Sitemiz Tekrar OnLine... Moderator AlımLar BaşLadı... BaşvuruLarınızı "Tim'e Başvuru" Bölümüne Yapınız. // Siray3t

    MDX TreeView ile Ayarlar Merkezi Tasarım

    Paylaş
    avatar
    Siray3t
     
     

    Cinsiyet : Erkek
    Mesaj Sayısı : 99
    Kayıt tarihi : 23/12/09
    Yaş : 22
    Nerden : İst
    İş/Hobiler : Bilgisayar
    Lakap : sec0rity

    MDX TreeView ile Ayarlar Merkezi Tasarım

    Mesaj tarafından Siray3t Bir Cuma Ara. 25, 2009 1:13 pm

    MDX TreeView (Mdx Ayarlar) Nedir?

    Bu ders MDX TreeView (Mdx Ayarlar) diye nitelendirilen, artık birçok scriptte kullanılan, profesyonel script olarak nitelendirilebilecek scriptlerde kullanılan ve birçok ayarın bu tek dialogda toplandığı (Mirc Ayarlar menüsü gibi) dialogu mdx ile nasıl yapıldığını anlatır...

    Ders zamanla güncellenecerek genişletilecektir.. zaman azlığı nedeniyle çok ayrıntıya girmeden genel olarak anlatacağım.. Burada şunu da unutmamak gerekir; bu ders daha çok belli bir takım birikimlere sahip olan arkadaşlara hitap eder.. Bu ders mirc script işlerine yeni başlayanlar için değildir...

    1.Aşama - Dersde kullanılan Dosyaların İndirilmesi ve Dosyaların Listesi
    Kodun ve Dosyaların İndirileceği Adres --> http://www.tmirc.com/old/mdxayarlar/mdxayarlar.zip


    Bu dersimizde kullandığımız dosyalar aşağıdadır.

    - mdx.dll
    - views.mdx
    - bars.mdx
    - 8 tane icon

    mdx.dll ve views.mdx dialogun kullanılmasında zorunlu olan dosyalardır... bars.mdx ise Dialogun üstünde kullanılan X Script Genel Ayarlar yazısının oluşturulmasında ve arka planının beyazımsı hale getirilmesinde kullanıldı.. Ben oraya resim koymak yerine kendimce böyle bir yol seçtim.. Dileyenler bu bölüme kendi resimlerini kullanırlar...


    2.Aşama - MDX TreeView Kodunun Hazırlanması

    Bu Kodu alt+r ye basılıp açılan Remote penceresinde boş bir sayfaya yerleştiriyorsunuz ve scriptinizin /remote on (remotelerinin açık olduğuna) olduğuna emin olunuz...


    Kod:

    on *:start: { .baglantimenusu }

    alias baglantimenusu { dialog -m ayarlar ayarlar | did -v ayarlar 8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23 }
    alias otokanal { dialog -m ayarlar ayarlar | did -v ayarlar 24,25,26,27,28,29,30,31,32,33,34,35,36 }
    alias otonick { dialog -m ayarlar ayarlar | did -v ayarlar 37,38,39,40,41,42,43,44,45,46,47,48,49 }

    dialog ayarlar {
    title " X Script - Genel Ayarlar [ Kısayol Tuşu: F6 ] "
    size -1 -1 252 200
    option dbu
    icon icon\Ayarlar.ico, 0
    ;Yan Liste
    list 1, 5 26 68 149, size extsel
    button "Tamam", 2, 139 180 50 15, OK
    button "Yardım", 3, 20 180 45 15
    ;Üst yazı
    text "", 4, 5 3 241 19
    list 5, 200 2 25 14, size disable
    text " X Script - Genel Ayarlar Merkezi", 6, 7 7 170 12
    box "",7, 5 -1 242 23
    ;Bağlantı Menüsü
    combo 8, 90 36 90 120, drop
    box "Sunucu Ayarları", 9, 78 24 168 64
    button "Ekle",10, 195 36 30 11
    button "Sil",11, 195 49 30 11
    button "Düzenle",12, 195 62 30 11
    button "IRC Servere Bağlan", 13, 102 54 55 12
    check "Yeni Sunucu Penceresi Aç", 14, 100 71 96 14, flat
    box "Bağlantı Ayarları", 15, 78 90 168 85
    edit "", 16, 135 100 90 12
    edit "", 17, 135 117 90 12
    edit "", 18, 135 135 90 12
    edit "", 19, 135 154 90 12
    text "İsim :", 20, 113 102 20 10
    text "E-Posta Adresi :", 21, 87 119 48 10
    text "Nick :", 22, 113 137 20 10
    text "Alternatif Nick:", 23, 90 156 45 10
    ;Otomatik Kanal Girişi
    box "Otomatik Kanal Ayarları", 24, 78 24 168 151
    text "Otomatik Kanal Listesi", 25, 108 38 70 12
    list 26,85 52 150 75
    check Otomatik Giriş Açık, 27, 173 160 62 11, flat
    button "Ekle", 28, 170 127 30 12
    button "Sil", 29, 170 142 30 12
    Text "Kanal :", 30, 85 129 18 11, read autohs center
    edit "#", 31, 110 127 55 12, autohs
    Text "Şifre :", 32, 85 144 16 12, read autohs center
    edit "", 33, 110 142 55 12, autohs
    Text "Server :", 34, 85 160 21 11, read autohs center
    edit "irc.", 35, 110 158 55 12, autohs
    icon 36, 85 33 100 57, icon\kanallar.ico, 0
    ;Otomatik Şifre Girişi
    box "Otomatik Şifre Ayarları", 37, 78 24 168 151
    text "Otomatik Nick İdentify", 38, 108 38 70 12
    list 39, 85 52 150 75
    check Otomatik İdentify Açık, 40, 173 160 62 11, flat
    button "Ekle", 41, 170 127 30 12
    button "Sil", 42, 170 142 30 12
    Text "Kanal :", 43, 85 129 18 11, read autohs center
    edit "#", 44, 110 127 55 12, autohs
    Text "Şifre :", 45, 85 144 16 12, read autohs center
    edit "", 46, 110 142 55 12, autohs
    Text "Server :", 47, 85 160 21 11, read autohs center
    edit "irc.", 48, 110 158 55 12, autohs
    icon 49, 85 33 100 57, icon\key.ico, 0

    }
    alias mdx return $dll($mircdir $+ \dll\mdx.dll,$1,$2-)
    alias views { return $shortfn($mircdirdll\views.mdx) }
    alias bars { return $shortfn($mircdirdll\bars.mdx) }
    alias ayarlariac {
    var %i = did -i ayarlar 1 1,%a = did -a ayarlar 1 +e
    %i iconsize normal small
    %i seticon normal 0, $+ icon\genel.ico
    %i seticon normal 0, $+ icon\kanallar.ico
    %i seticon normal 0, $+ icon\key.ico
    %i seticon normal 0, $+ icon\gorunum.ico
    %i seticon normal 0, $+ icon\s3.ico
    %i seticon normal 0, $+ icon\toolbar.ico
    %i seticon normal 0, $+ icon\simge.ico
    %i seticon normal 0, $+ icon\balon.ico
    %i cb root 1
    %a 1 1 Bağlantı Menüsü
    %i cb root last 1
    %a 2 2 Oto-Join
    %a 3 3 Oto-Identify
    %i cb root 1
    %a 4 4 Görünümler
    %i cb root last 1
    %a 5 5 Switchbar
    %a 6 6 Toolbar ve Diğer
    %a 7 7 Nicklistesi
    %a 8 8 Tray
    %i cb root 1


    }
    alias sakla1 { did -h ayarlar 8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49 }
    alias goster.baglanti { sakla1 | did -v ayarlar 8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23 }
    alias goster.otokanal { sakla1 | did -v ayarlar 24,25,26,27,28,29,30,31,32,33,34,35,36 }
    alias goster.otonick { sakla1 | did -v ayarlar 37,38,39,40,41,42,43,44,45,46,47,48,49 }

    on *:dialog:ayarlar:*:*:{
    if ($devent == init) {
    mdx SetMircVersion $version
    mdx MarkDialog $dname
    mdx SetControlMDX $dname 1 treeview hasbuttons haslines > $views
    mdx SetFont $dname 9,15,24,25,37,38 +a 14 600 Arial
    mdx SetColor $dname 9,15,24,37 text $rgb(0,14,255)
    mdx SetControlMDX $dname 26,39 ListView report grid rowselect showsel single > $views
    mdx SetFont $dname 26,39 13 600 Tahoma
    did -i $dname 26 1 headerdims 100 85 110
    did -i $dname 26 1 headertext +c Kanal $chr(9) Şifre $chr(9) Server
    did -i $dname 39 1 headerdims 100 85 110
    did -i $dname 39 1 headertext +c Nick $chr(9) Şifre $chr(9) Server
    did -i $dname 26,39 1 setbkg color $rgb(248,248,255)
    did -i $dname 26,39 1 settxt color $rgb(0,0,0)
    did -i $dname 26,39 1 settxt bgcolor $rgb(230,230,255)
    mdx SetBorderStyle $dname 4,6
    mdx SetControlMDX $dname 5 toolbar flat list nodivider arrows > $bars
    did -i $dname 5 1 bmpsize 30 30
    mdx SetBorderStyle $dname 5
    mdx SetColor $dname 5 background $rgb(245,245,245)
    did -i $dname 5 1 setimage +nhd 0 icon large icon/ayarlar.ico
    did -i $dname 5 1 bwidth 250 250
    did -a $dname 5 1 a
    mdx SetColor $dname 4,6 background $rgb(245,245,245)
    mdx SetColor $dname 4,6 textbg $rgb(245,245,245)
    mdx SetFont $dname 6 17 600 Tahoma
    ayarlariac
    sakla1
    }
    if ($devent == sclick) {
    if ($did == 1) {
    tokenize 32 $did(1,1,1)
    if ($4 == 2) {
    if (!$5) { goster.baglanti }
    if ($5 == 2) { goster.otokanal }
    if ($5 == 3) { goster.otonick }
    }
    }
    }


    Kod sonucu oluşan, MDX TreeView Resimi ise işte karşınızda








    Bu işlemleri tamamlayınca, Şimdi gelelim Kodunırayla açıklanmasına...


    3.Aşama - Kodun Açıklanması

    on *:start: { .baglantimenusu }

    Bu Komut ; Script açıldığı zaman Mdx TreeView diyalogumuzun açılmasını sağlar. Eğer bu komut olmassa Mdx TreeView açılışta açılmaz. Eğer başlangıçta Mdx TreeView menüsünün açılmasını istemiyorsanız Kodda bu bölümü çıkarınız...

    alias baglantimenusu { dialog -m ayarlar ayarlar | did -v ayarlar 8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23 }
    alias otokanal { dialog -m ayarlar ayarlar | did -v ayarlar 24,25,26,27,28,29,30,31,32,33,34,35,36 }
    alias otonick { dialog -m ayarlar ayarlar | did -v ayarlar 37,38,39,40,41,42,43,44,45,46,47,48,49 }

    satırları dialogların bölümlerini açılmasında kullanacağımız kodlardır.. Bunlar farklı şekildede hazırlanabilirdi, fakat böylesi hem daha anlaşılır hemde kodlamada daha basit bir yöntem.. Tam olarak bunların ne işe yaradığını söylersek; /baglantimenusu komutunu kullandığımızda Bağlantı menüsü olan bölümdeki id'leri içeren alias komutumuz o bölümdeki idleri ( Resim 1 - Bağlantı Menüsü ) içerdiği için sadece o bölümle alakalı idleri açar ve dialogda yer alan diğer idler gösterilmez..

    Bunun gibi /otokanal komutunda da sadece o bölümdeki id'leri içeren alias komutumuz o bölümdeki id'leri içerdiği için sadece o bölümle alakalı idleri açar ve dialogda yer alan diğer id'ler gösterilmez.. Yani Bağlantı menüsünde yer alan o idler bu bölümü açtığımızda gösterilmez, saklanır. Böylece hiç bir bölüm birbiriyle karışmaz..

    Son olarak /otonick komutunda da Otomatik identify bölümündeki id'leri içeren alias komutumuz o bölümdeki id'leri içerdiği için sadece o bölümle alakalı idleri açar ve dialogda yer alan diğer id'ler gösterilmez..

    Görüldüğü gibi böyle bir yöntemle dialogların bölümlerini açtırmak basit bir yöntem olduğu gibi, düzenlenmesi de kolaydır. Hataların düzeltilmesinde, anlaşılmasında da size kolaylık sağlar..


    Gelelim Ana dialogumuza; dialogu oluştururken bölüm bölüm başlık yerleştirdim kolaylık olması adına.. Tavsiyem sizde öyle edin.. Bu dialog oluşturma olayına pek girmiyorum ( çünkü bunun dersi zaten var ) ..

    title " X Script - Genel Ayarlar [ Kısayol Tuşu: F6 ] " --> Bu kod dialogumuzun titlesi
    size -1 -1 252 200 --> Bu dialogumuzun boyutlarını içeren kodumuz.. 252 sayısı genişliği belirtirken, 200 sayısı uzunluğunu belirtir..

    option dbu --> dialogumuzun yapımında kullandığımız konumlandırma sayların ( sağ, sol üst, alt gibi ) hesaplanacağı yol... Bunun bir diğer seçeneği option pixels 'dir. Fakat bunu kullanırsanız tüm dialogda yer alan bu sayılarla oynamanız gerekecektir.. options pixels yöntemi daha çok, ince ayar gerektiren dialoglarda kullanılır..

    icon icon\Ayarlar.ico, 0 --> Dialogumuzun Ana iconu..

    Şimdi dialogu oluşturan yerlerin açıklamasına geldik;

    yukarıdada dialoglarda yer alan bölümlere başlık koyarak işleri kolaylaştıracağız demiştik.. Burada ; Yan Liste bu başlıktır. yani komutsal anlamda hiç bir etkisi yoktur dialoga. Sadece o bölümlere giren kod bölümü nereler diye başlık başlık yaptım ben.. İsterseniz silebilirsiniz..

    ;Yan Liste
    list 1, 5 26 68 149, size extsel --> Dialogumuzun Sol Yan liste menüsüdür.

    1 Sayısı o Listenin ID numarasıdır.

    - İlk 5 Sayısı: Soldan 5
    - 26 Sayısı Üstten 26
    - 68 Sayısı genişliği
    - 149 Sayısı ise uzunluğunu belirten sayılardır..

    ;Üst yazı
    text "", 4, 5 3 241 19
    list 5, 200 2 25 14, size disable
    text " X Script - Genel Ayarlar Merkezi", 6, 7 7 170 12
    box "",7, 5 -1 242 23

    Bu satırlar dialogun üstünde olan X Script Genel Ayarlar Merkezi yazısını oluşturan ve o bölümün rengini krem-beyazımsı renk haline getiren kodlardır. Bu satırları silebilir yerine resminizi içeren bir kod satırı ekleyebilirsiniz.. Ben bir daha resim ayarlamak ile uğraşmayayım diye böyle bir yol seçtim..


    ;Bağlantı Menüsü
    combo 8, 90 36 90 120, drop
    box "Sunucu Ayarları", 9, 78 24 168 64
    button "Ekle",10, 195 36 30 11
    button "Sil",11, 195 49 30 11
    button "Düzenle",12, 195 62 30 11
    button "IRC Servere Bağlan", 13, 102 54 55 12
    check "Yeni Sunucu Penceresi Aç", 14, 100 71 96 14, flat
    box "Bağlantı Ayarları", 15, 78 90 168 85
    edit "", 16, 135 100 90 12
    edit "", 17, 135 117 90 12
    edit "", 18, 135 135 90 12
    edit "", 19, 135 154 90 12
    text "İsim :", 20, 113 102 20 10
    text "E-Posta Adresi :", 21, 87 119 48 10
    text "Nick :", 22, 113 137 20 10
    text "Alternatif Nick:", 23, 90 156 45 10
    Bu satırlar bağlantı menüsünü oluşturan kodlardır.. (Resim-1) Zaten başlıkla bu belirtilmiştir...


    ;Otomatik Kanal Girişi
    box "Otomatik Kanal Ayarları", 24, 78 24 168 151
    text "Otomatik Kanal Listesi", 25, 108 38 70 12
    list 26,85 52 150 75
    check Otomatik Giriş Açık, 27, 173 160 62 11, flat
    button "Ekle", 28, 170 127 30 12
    button "Sil", 29, 170 142 30 12
    Text "Kanal :", 30, 85 129 18 11, read autohs center
    edit "#", 31, 110 127 55 12, autohs
    Text "Şifre :", 32, 85 144 16 12, read autohs center
    edit "", 33, 110 142 55 12, autohs
    Text "Server :", 34, 85 160 21 11, read autohs center
    edit "irc.", 35, 110 158 55 12, autohs
    icon 36, 85 33 100 57, icon\kanallar.ico, 0

    Bu satırlar Otomatik Kanal girişini içeren kodlardır.. (Resim-2) Zaten başlıkla bu belirtilmiştir...


    ;Otomatik Şifre Girişi
    box "Otomatik Şifre Ayarları", 37, 78 24 168 151
    text "Otomatik Nick İdentify", 38, 108 38 70 12
    list 39, 85 52 150 75
    check Otomatik İdentify Açık, 40, 173 160 62 11, flat
    button "Ekle", 41, 170 127 30 12
    button "Sil", 42, 170 142 30 12
    Text "Kanal :", 43, 85 129 18 11, read autohs center
    edit "#", 44, 110 127 55 12, autohs
    Text "Şifre :", 45, 85 144 16 12, read autohs center
    edit "", 46, 110 142 55 12, autohs
    Text "Server :", 47, 85 160 21 11, read autohs center
    edit "irc.", 48, 110 158 55 12, autohs
    icon 49, 85 33 100 57, icon\key.ico, 0

    Bu satırlar ise Otomatik nick identify bölümünü oluşturan kodlardır... (Resim-3) Zaten başlıkla bu belirtilmiştir...


    Dialogu oluşturan kod satırlarının bölüm bölüm nasıl oluştuduğunu gösterdikten sonra, gelelim asıl mevzumuz olan bu dialoglarda yer alan kodları bölüm bölüm nasıl gösterilebilir hale getiriyoruz...

    alias mdx return $dll($mircdir $+ \dll\mdx.dll,$1,$2-)
    alias views { return $shortfn($mircdirdll\views.mdx) }
    alias bars { return $shortfn($mircdirdll\bars.mdx) }

    Bu satırlar dialogumuzu oluşturmamızda bize yardımcı olan dll dosyalarının uzantısını oluşturan kodlardır.. Buna göre uzantılarımız şu şekildedir; bu 3 dll dosyası mirc ana klasöründe "Dll" adlı bir klasörü içinde mevcuttur.. Yani X Script/dll uzantısını oluşturduk.. Karakter boşluğuda sorun çıkarmayacak şekilde o kodlar ayarlanmıştır..



    3-a- Aşama - Yan Listenin oluşturulması

    Yan Listeyi oluşturan kod bölümleri bunlardır.. Dialogumuzda kullandığımız komut; " list 1, 5 26 68 149, size extsel " idi. Bunu şekilendirmek içinde aşağıdaki kodları kullanıyoruz..

    alias ayarlariac {
    var %i = did -i ayarlar 1 1,%a = did -a ayarlar 1 +e
    %i iconsize normal small
    %i seticon normal 0, $+ icon\genel.ico
    %i seticon normal 0, $+ icon\kanallar.ico
    %i seticon normal 0, $+ icon\key.ico
    %i seticon normal 0, $+ icon\gorunum.ico
    %i seticon normal 0, $+ icon\s3.ico
    %i seticon normal 0, $+ icon\toolbar.ico
    %i seticon normal 0, $+ icon\simge.ico
    %i cb root 1
    %a 1 1 Bağlantı Menüsü
    %i cb root last 1
    %a 2 2 Oto-Join
    %a 3 3 Oto-Identify
    %i cb root 1
    %a 4 4 Görünümler
    %i cb root last 1
    %a 5 5 Switchbar
    %a 6 6 Toolbar ve Diğer
    %a 7 7 Nicklistesi
    %i cb root 1

    Yukarıdaki kodlar yan listede kullanılan menüleri ve menülerde kullanılan iconları oluşturur. Menüler ve iconlar sırayla gider..

    Mesela ; %i seticon normal 0, $+ icon\genel.ico --> icon yerleşimini sağlayan kod satırı ilk sırada ve ilk sırada yer alan menümüze koda bakarak gösterirsek şu satırdır. Bu bölüm menül bölümünü oluşturan ilk kod satırıdır.. " %a 1 1 Bağlantı Menüsü "

    Aynı şekilde 2. bölümü oluşturan kod satırı " %a 2 2 Oto-Join " ve bu kod satırının sırasına denk düşen icon kod satırı ise " %i seticon normal 0, $+ icon\kanallar.ico " ve bunun gibi diğer icon dosyalarının yerleşimi sırayla bölümlere bu şekilde yerleşmiştir.

    %i cb root 1 --> koduyla dialogumuzda ilk menü başlangıcını başlatıyoruz.. ve hemen peşine ilk oluşturmak istediğimiz menüyü hazırlıyoruz, bunuda --> %a 1 1 Bağlantı Menüsü komutuyla gerçekleştiriyoruz.. Eğer bu ilk oluşturduğumuz menünün içine yeni "alt menüler-ayarlar" eklemek istiyorsak --> %i cb root last 1 komutunu kullanıyoruz.. (Resim 1 de görüldüğü gibi Bağlantı Menüsü bölümünün alt bölümleri Oto-Join ve Oto-İdentify'dir. Bu bölüm altında açılıyorlar.. )

    Eğer bu başlık-bölüm altına yeni bir bölüm açmayacaksak o zaman " %i cb root last 1 " komutunu yazmamıza gerek yok... O zaman karşımıza çıkacak görüntü şu şekilde olur:




    Bu resimde Bağlantı menüsünün altında yeni bir ana bölüm olarak Oto-Join ve Oto-İdentify bölümleri açılmıştır. Resim-1 e baktığımız zaman ise Bağlantı Menüsünün alt bölümleri olarak açılmaktadır... Üstüne basarak tekrar belirtmek gerekirse; " %i cb root last 1 " kod satırı bir üst kod satırında yazılan Ana bölüme alt bölümler açmak için kullanılır.

    Bizim hazırladığımız Dialogda Bağlantı Menüsü ve Görünümler diye 2 Ana bölüm oluşturulmuştur.. Ve zaten koda bakarsak bu iki bölümün altına bu kod girilmiştir.;

    %i cb root 1 -> Ana bölüm oluşturmak için ilk kullanılan komut..
    %a 1 1 Bağlantı Menüsü --> 1. ANA BÖLÜM
    %i cb root last 1 --> 1. Ana bölüm altına alt bölümler açmak için kullanılan kod.
    %a 2 2 Oto-Join ---> Bağlantı menüsünün alt menüsü
    %a 3 3 Oto-Identify ---> Bağlantı menüsünün alt menüsü
    %i cb root 1 --> Bağlantı Ana menüsünü sonlandırır.
    %a 4 4 Görünümler --> 2. ANA BÖLÜM
    %i cb root last 1 --> 2. Ana bölüm altına alt bölümler açmak için kullanılan kod.
    %a 5 5 Switchbar ---> Görünümler menüsünün alt menüsü
    %a 6 6 Toolbar ve Diğer ---> Görünümler menüsünün alt menüsü
    %a 7 7 Nicklistesi ---> Görünümler menüsünün alt menüsü
    %i cb root 1 -> Görünümler ana menüsünü sonlandırır..

    Kodda yer alan "%i cb root last 1" kod satırlarını çıkardığımızda şu görüntü karşımıza çıkar ve bu komutun olmadığı zaman ne gibi bir görüntü karşımıza çıktığını ve ne işe yaradığını daha iyi anlarız:



    Bu resimde Her bir bölüm kendince ana bölüm halindedir.. .. ama resim-1 e baktığımızda; Bağlantı Menüsü ve Görünümler diye 2 ana bölüm görürüz


    3-b-Aşama - Dialogda yer alan bölümlere tıklanıldığı zaman bölümlerin bölüm bölüm açılması

    Başlıktan da az çok anlaşılacağı gibi, Biz yan Listemizde Bölüm yazılarına bastığımızda sadece o bölümlere ait yerlerin açılmasını içeren kodlar aşağıdaki satırlardır:

    alias sakla1 { did -h ayarlar 8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,2 5,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41, 42,43,44,45,46,47,48,49 }
    alias goster.baglanti { sakla1 | did -v ayarlar 8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23 }
    alias goster.otokanal { sakla1 | did -v ayarlar 24,25,26,27,28,29,30,31,32,33,34,35,36 }
    alias goster.otonick { sakla1 | did -v ayarlar 37,38,39,40,41,42,43,44,45,46,47,48,49 }

    Bu satılarda /alias sakla1 ile başlayan kod satırı dialogda saklanmasını istediğiniz bölüm ID numaralarıdır. Burada

    1,2,3,4,5,6,7 ID numaraları yoktur. Bu ID numaraları nelerde kullanılıyor öncelikle onu söyleyelim ;

    1 ID numarası --> Yan Listeyi oluştan Kod'un ID numarası
    2 ID numarası --> Tamam butonunu oluşturan Kod'un ID numarası
    3 ID numarası --> Help butonunu oluşturan Kod'un ID numarası
    4,5,6,7 ID numaraları ise --> X Script Genel Ayarlar Merkezi yazısı ve orada yer alan iconu oluşturan kodların id numaraları..

    Biz bu ID numaralarını /alias sakla1 kod satırında kullanmadık, çünkü bu id numaralarının oluşturduğu şeyleri ( YanListe, Tamam ve Help butonu, ve Üstte çıkan X Script Genel Ayarlar merkezi ve yanında olan icon ) hangi bölümü açarsak açalım gözükmesini istiyoruz.. O nedenle bu /alias sakla1 kod satırında bu ID numaralarını yazmadık. şayet Bu ID'leride o kod satırında kullansaydık; Mesela Oto-Join Bölümüne tıkladığımızda şu görüntü karşımıza çıkardı:



    Resimde görüldüğü gibi Tamam ve Help butonu o bölüme tıkladığımızda yok.. Ayrıca X Script Genel Ayarlar Merkezi ve Yanında yer alan iconda yok.. Ayrıca o yazının ve iconun olduğu yeri kremsi renk haline getirme durumuda yok..


    ÖNEMLİ NOT: /alias sakla1 kod satırında 2 numaralı ID'i KULLANAMAYIZ... kullanılırsaK yan liste diye bir şey olmaz, göremeyiz onu


    3-c-Aşama- Dialogun Mdx.dll ve Views.Mdx kullanılarak şekilendirilmesi (renklendirilmesi vs..)

    Bu başlıkta dialogumuzda kullanılan menülerin daha göze hoş gelmesi adına yazıların büyüklüğü, renkleriyle oynama, List'lerin içine yazı eklenmesi gibi ayarların yapılmasını göstereceğiz...

    mdx SetControlMDX $dname 1 treeview hasbuttons haslines > $views --> Yan Listesinin oluşmasını sağlattıran mdx komutu

    mdx SetFont $dname 9,15,24,25,37,38 +a 14 600 Arial --> Belirtilen ID'lerde yazıların fontlarını düzenleyen kod. burada yazı büyüklükleri 14 arial edilmiştir.

    mdx SetColor $dname 9,15,24,37 text $rgb(0,14,255) --> Belirtilen ID'lerdeki yazıların rengi mavi yapılmıştır.

    mdx SetControlMDX $dname 26,39 ListView report grid rowselect showsel single > $views --> Belirtilen ID'lerde olan Oto-Join ve Oto-İdentify bölümünde yer alan List leri düzenleyici kod..

    mdx SetFont $dname 26,39 13 600 Tahoma ---> Belirtilen ID'lerde yer alan List lerin içinde yer alacak yazıların font büyüklüğü.. ( Nick, Şifre, Server yazılarının büyüklüğü ve o listeye bir şey eklendiği zaman onların olacağı büyüklük)

    did -i $dname 26 1 headerdims 100 85 110 --> Belirtilen ID'de yer alan Oto-Join listesinde Listeyi 3 bölüme ayırmaya yarayan kod. 100 sayısı Kanal bölümünün genişliği, 85 sayısı Şifre bölümünün genişliği, 110 sayısı server yazısının genişliğini belirler. Bu sayıları yükselttikçe ve azaltıkça genişlikleri değişir.

    did -i $dname 26 1 headertext +c Kanal $chr(9) Şifre $chr(9) Server --> Belirtilen ID'de yer alan Oto-Join Listesinde hangi bölümleri oluşturmak istediğinizi belirleyen komut.. Biz o Listede 3 menü oluşmasını istedik o yüzden Nick şifre ve Server bölümlerini oluşturduk.. Siz 2 bölüm oluşmasını istiyorsanız:

    did -i $dname 26 1 headertext +c Kanal $chr(9) Şifre kodunu giriniz ve bir üst kod olan aşağıda tekrarını yazdığımız şu kodu
    did -i $dname 26 1 headerdims 100 85 110 şu şekle çevirmemiz gerekir --> did -i $dname 26 1 headerdims 100 85

    did -i $dname 39 1 headerdims 100 85 110
    did -i $dname 39 1 headertext +c Nick $chr(9) Şifre $chr(9) Server Bu iki kod satırı Oto-İdentify Listesinin şekillendirdiğimiz satırlardır. Bunun aynı tip uygulaması Oto-Join bölümündeki Listedir. Açıklaması yukarıdaki gibidir. Bu nedenle tekrarlamaya gerek duymuyorum..

    did -i $dname 26,39 1 setbkg color $rgb(248,248,255)
    did -i $dname 26,39 1 settxt color $rgb(0,0,0)
    did -i $dname 26,39 1 settxt bgcolor $rgb(230,230,255) Belirtili olan ID'lerdeki Listelerin renkleriyle ilgili kodlardır. Hem listelerin kendi renkleri, hem listelere bir şey eklendiği zaman yazılı olan text lerin renklerini oluşturur.

    mdx SetBorderStyle $dname 4,6
    mdx SetControlMDX $dname 5 toolbar flat list nodivider arrows > $bars
    did -i $dname 5 1 bmpsize 30 30
    mdx SetBorderStyle $dname 5
    mdx SetColor $dname 5 background $rgb(245,245,245)
    did -i $dname 5 1 setimage +nhd 0 icon large icon/ayarlar.ico
    did -i $dname 5 1 bwidth 250 250
    did -a $dname 5 1 a
    mdx SetColor $dname 4,6 background $rgb(245,245,245)
    mdx SetColor $dname 4,6 textbg $rgb(245,245,245)
    mdx SetFont $dname 6 17 600 Tahoma Bu satırlar X Script Genel Merkezler yazısı ve yanındaki icon, ve de bu yazının arka plan rengini belirleyen kodlardır.. Bu satırların oluşturduğu yere kendi resminizi de ekleyebilirsiniz.. Kendi resmini eklemek istiyorsanız bu satırları siliniz ve de dialogda yer alan şu satırları siliniz:

    ;Üst yazı
    text "", 4, 5 3 241 19
    list 5, 200 2 25 14, size disable
    text " X Script - Genel Ayarlar Merkezi", 6, 7 7 170 12
    box "",7, 5 -1 242 23

    bu bölümüde silince dialoga resim eklemek istiyorsanız dialogda yer alan o kodların yerine şu komutu ekleyiniz:

    icon 4, 5 3 241 22, icon\logo.jpg



    3-d-Aşama- Dialogda yer alan bölümlerin bölüm bölüm açılmasını sağlayan kodları aktifleştiren kodlar

    Bu bölümde Dialogumuzda yer alan bölümlerin ayrı ayrı gösterimini sağlayan kodları göstereceğiz..

    if ($devent == sclick) {
    if ($did == 1) {
    tokenize 32 $did(1,1,1)
    if ($4 == 2) {
    if (!$5) { goster.baglanti }
    if ($5 == 2) { goster.otokanal }
    if ($5 == 3) { goster.otonick }
    Bu satırda şunu hemen görürüz. Liste ID numarası 1 idi.. 1 numaralı idde 1 Ana 2 alt bölüm olmak üzere toplam 3 bölüm yer almaktadır.. Görünümler bölümünü Listede oluşturduk ama dialogda görünümler bölümünü oluşturmadığımız için bu komut yerinde görünümleri içeren kod yok..

    Eğer dialog Kodumuzda Görünümle ilgili kodlar yapılmışsa; mesela görünümler ve Switchbar bölümleri yapıldığını varsayarsak;


    alias sakla1 { did -h ayarlar 8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,2 5,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41, 42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58 ,59,60,61,62,63,64,65,66,67,68,69,70,71 }
    alias goster.baglanti { sakla1 | did -v ayarlar 8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23 }
    alias goster.otokanal { sakla1 | did -v ayarlar 24,25,26,27,28,29,30,31,32,33,34,35,36 }
    alias goster.otonick { sakla1 | did -v ayarlar 37,38,39,40,41,42,43,44,45,46,47,48,49 }

    Yukarıdaki kodların hemen altına aşağıdaki şu kodları ekledim,

    alias goster.gorunum { sakla1 | did -v ayarlar 50,51 }
    alias goster.yanbar { sakla1 | did -v ayarlar 52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68 ,69,70,71 }
    alias goster.gorunum ve alias goster.yanbar bölümleriyle adlandırdım ve bu bölümlerin bölüm bölüm gösterimini sağlamak için şu kodların altına:

    if ($devent == sclick) {
    if ($did == 1) {
    tokenize 32 $did(1,1,1)
    if ($4 == 2) {
    if (!$5) { goster.baglanti }
    if ($5 == 2) { goster.otokanal }
    if ($5 == 3) { goster.otonick }
    }

    şu kodları ekleyeceğiz:

    if ($4 == 3) {
    if (!$5) { goster.gorunum }
    if ($5 == 2) { goster.yanbar }
    }
    }

    2. Ana bölüm olan gorunumleri oluşturan goster.gorunum ve onun alt bölüöü goster.yanbar... Listenin bu eklenmiş hali resmi ise şu şekilde olur:


    avatar
    aLkiNooS
    UB Saldırı & Secruity
    UB Saldırı & Secruity

    Cinsiyet : Erkek
    Mesaj Sayısı : 123
    Kayıt tarihi : 24/12/09
    Yaş : 22
    Nerden : i$taNßLué - ßayRampa$a ßLéDiyé Arka$ı
    İş/Hobiler : $poR,ßiLqi$iyaR !
    Lakap : aLkiNooS*

    Geri: MDX TreeView ile Ayarlar Merkezi Tasarım

    Mesaj tarafından aLkiNooS Bir Salı Ara. 29, 2009 4:16 pm

    payLa$ım için Té$$éqüRLéR !

      Forum Saati Salı Eyl. 26, 2017 11:47 pm