Toolbar nasıl yapılır :)

+ Yorum Gönder
Programlar ve Programlarla İlgili Sorunlarınız Bölümünden Toolbar nasıl yapılır :) ile ilgili Kısaca Bilgi
  1. 1
    By_Suprens!
    Üye
    Reklam

    Toolbar nasıl yapılır :)

    Reklam



    Toolbar nasıl yapılır :)

    Forum Alev
    Toolbar nasıl yapılır bilen var resimli anlatımı yapsın ona zahmet :)
    arkadalar cok acil iktiyacım var :)



  2. 2
    Easy
    Güncelleme
    Reklam



    Size Toolbar Hakkında Elımde Olan Bilgiler'i Aktarayım.


    Güncellemede yapılanlar:
    1- Toolbar görünüm olarak daha profesyonel hale getirildi.
    2- Toolbar'a saat kodu yerleştirildi.
    3- Ders daha sadece, anlaşılır ve ayrıntılı hale getirildi.
    4- Windows Xp ile Windows Klasik Temalardaki uyumsuzluk Tema.dll ile giderildi. (Bu özelliği ile Dünyada ilk ve tek)
    5- 11 Tane İcon dosyası eklendi.


    Toolbar Nedir? Ve nasıl Yapılır ?

    Toolbar aslında bir diyalogtur. Toolbar yapımının mantığı ise şudur; Öncelikle normal bir diyalog oluşturuyoruz, daha sonra bu diyalogumuzun üzerine mdx, rebar.dll , bar.dll ile bazı şeyler ekleriz. Yani Biz ona, bu dll dosyalarıyla şekil veriyoruz. Bu şekil vermede diyaloga icon ve yazı ekliyoruz, diyaloga renk veriyoruz. Yani diyalogumuzu ister mavi, ister gri, ister siyah, ister beyaz yapıyoruz.

    Toolbar oluşturmak için 4 dll dosyasından faydalanıyoruz. Bunlar MDX, rebar.dll, bar.dll ve Tema.dll dosyalarıdır.


    1.Aşama- Dll Dosyalarının İndirilmesi

    Burada MDX.dll, rebar.dll, bars.dll ve Tema.dll dll klasörünün içindedir. Bu dll dosyalarını aşağıdaki linkten indirebilirsiniz. ( Yani Toolbarı yapabilmemiz için bize lazım olan dll dosyaları diyelim buna. )

    http://www.tmirc.com/old/toolbar/dll.zip



    2.Aşama-İcon dosyalarının indirilmesi ve hazırlanması

    Toolbarı oluşturmak için elimizde bazı iconların olması gerekir. Vereceğim linkteki iconlar toolbar kodunda kullanılan 11 icon'dur. Kod buna göre hazırlanmıştır. İsimlerde ona göre belirlenmiştir.

    http://www.tmirc.com/old/toolbar/icon.zip

    Eğer farklı icon kullanmak istiyorsanız, şu adresten bedava icon indirebilirsiniz.

    http://www.iconempire.com/iconlibs.htm

    veya http://www.google.com.tr adresine girip, Aranacak kelimeye icon yazıyoruz ve arattırıyoruz ve göreceksiniz ki internette bir sürü icon dosyaları mevcuttur.



    3.Aşama - Toolbar Kodununun hazırlanması

    Bu Kodu alt+r ye basılıp açılan Remote penceresinde boş bir sayfaya yerleştiriyorsunuz.



    PHP- Kodu:
    on *:start: { dialog -m toolbar toolbar }
     
    alias Temadene { echo -a Temam$iif($temabul,XP Teması,Klasik Windows Teması) }
    alias Temabul { .comreg dll/Tema.dll | .comopen toolbar Tema.buL | var %komut $com(toolbar,TemaBul,1) | var %komut $com(toolbar).result | .comclose toolbar | .comreg -u dll/Tema.dll | return %komut }
    alias mdx { return $dll(DLL\mdx.dll,$1,$2-) }
    alias rebar dll DLL\rebar.dll $$1- }
    alias bars { return DLL\bars.mdx }
     
    on *:connect: {
    update.toolbar
    }
    on *:disconnect: {
    update.toolbar
    }
    on *:close:*: {
    update.toolbar
    }
    alias saat { if ($dialog(toolbar)) { did -a toolbar $1 $time } }
     
     
    alias update.toolbar {
    if (!
    $dialog(toolbar)) { halt }
    else {
    scid $activecid
    if ( $scid($activecid).status connecting || $scid($activecid).status connected ) { 
    did -o toolbar 1 3 +a 2 $chr(32Bağlantıyı Kes $chr(9) $+ IRC Serverle Bağlantınızı Koparır
    }
    else {
    did -o toolbar 1 3 +a 1 $chr(32Servere Bağlan $chr(9) $+ IRC Servere Bağlantı Kurar.
    }
    }
    }
     
    dialog toolbar {
    title "x"
    size 0 0 550 $iif($temabul,14,17)
    option dbu
    list 4-2 550 17size
    list 10 4 550 17size
    text 
    ""2464 6 45 16center
    text 
    ""3467 10 39 11center
    }
    on *:dialog:toolbar:init:0: {
    mdx MarkDialog $dname
    mdx SetDialog $dname style 
    mdx SetFont $dname 1 Turkish 14 800 Cyrillic
    mdx SetColor $dname 1
    ,2,3,4 background $rgb(113,188,255)
    mdx SetColor $dname 3 text $rgb(0,0,0)
    mdx SetFont $dname 3 +a 20 600 arial
    mdx SetColor $dname 2
    ,3 textbg $rgb(113,188,255)
    .
    timersaat 0 1 saat 3
     
    rebar HideToolbar 
    .
    rebar Dock $dialog(toolbar).hwnd top
    mdx SetControlMDX $dname 1
    ,3,4 Progressbar smooth $ctl
    mdx SetControlMDX $dname 1
    ,4 ToolBar flat wrap arrows nodivider $bars
    mdx SetControlMDX $dname 1,4 ToolBar flat arrows nodivider wrap $aux.mdx(bars)
    mdx SetBorderStyle 1
    did 
    -i $dname 1 1 setscheme $rgb(163,163,163$rgb(163,163,163)
    did -i $dname 1 1 bmpsize 27 27 
    did 
    -i $dname 1 1 setimage icon large icon\baglan.ico
    did 
    -i $dname 1 1 setimage icon large icon\kes.ico
    did 
    -i $dname 1 1 setimage icon large icon\Ayarlar.ico
    did 
    -i $dname 1 1 setimage icon large icon\kanal.ico
    did 
    -i $dname 1 1 setimage icon large icon\korumalar.ico
    did 
    -i $dname 1 1 setimage icon large icon\kontrolpanel.ico
    did 
    -i $dname 1 1 setimage icon large icon\gorunum.ico
    did 
    -i $dname 1 1 setimage icon large icon\liste.ico
    did 
    -i $dname 1 1 setimage icon large icon\oyunlar.ico
    did 
    -i $dname 1 1 setimage icon large icon\internet.ico
    did 
    -i $dname 1 1 setimage icon large icon\yardım.ico
    did 
    -a $dname 1 +-
    did -a $dname 1 +a 1 $chr(32Server Bağlan $chr(9) $+ IRC Servere Bağlantı Kurar.
    did -a $dname 1 +-
    did -a $dname 1 +a 3 $chr(32Bağlantı $chr(9) $+ Bağlantı Ayarlarını Yapar.
    did -a $dname 1 +-
    did -a $dname 1 +a 4 $chr(32Kanallar $chr(9) $+ Kanallara Giriş Penceresini Açar.
    did -a $dname 1 +-
    did -a $dname 1 +a 5 $chr(32Korumalar $chr(9) $+ Kanal ve Kişisel Korumaları Açar.
    did -a $dname 1 +-
    did -a $dname 1 +a 6 $chr(32Kontrol Panel $chr(9) $+ Scriptinizle İlgili Tüm Ayarları Açar.
    did -a $dname 1 +-
    did -a $dname 1 +a 7 $chr(32Görünümler $chr(9) $+ Scriptinizin Görünümüyle İlgili Ayarları Açar.
    did -a $dname 1 +-
    did -a $dname 1 +a 8 $chr(32Listeler $chr(9) $+ Scriptinizdeki NotifyDüşman Listesi Gibi Ayarları Açar.
    did -a $dname 1 +-
    did -a $dname 1 +a 9 $chr(32Oyunlar $chr(9) $+ Scriptinizin Oyunlarıyla İlgili Diyalogu Açar.
    did -a $dname 1 +-
    did -a $dname 1 +a 10 $chr(32Internet $chr(9) $+ Internet Adreslerinin Olduğu Diyalogu Açar.
    did -a $dname 1 +-
    did -a $dname 1 +a 11 $chr(32Yardım $chr(9) $+ Scriptinizin Yardım Dosyasını Açar.
    did -a $dname 1 +-
    }
     
    on *:dialog:toolbar:*:*: {
    if 
    $devent == sclick {
    if 
    $did == {
    if (
    $did($dname,1).sel 3) {
    if (
    $scid($activecid).status connecting || $scid($activecid).status connected ) { scid $activecid disconnect }
    else {
    scid $activecid server
    }
    update.toolbar
    did 
    -f $dname 1
    scid $activecid window 
    -"status window"
    }
    if (
    $did($dname,1).sel 5) {
    Ayarlar
    }
    if (
    $did($dname,1).sel 7) {
    Kanallar
    }
    if (
    $did($dname,1).sel 9) {
    Korumalar
    }
    if (
    $did($dname,1).sel 11) {
    kontrolpanel
    }
    if (
    $did($dname,1).sel 13) {
    gorunumler
    }
    if (
    $did($dname,1).sel 15) {
    listeler 
    }
    if (
    $did($dname,1).sel 17) {
    oyunlar
    }
    if (
    $did($dname,1).sel 19) {
    internet
    }
    if (
    $did($dname,1).sel 21) {
    yardim
    }
    }
    }









  3. 3
    Easy
    Güncelleme
    Kod sonucu oluşan, Toolbar'ın Resimi ise işte karşınızda :





    Bu işlemleri tamamlayınca toolbarınız artık hazır! Şimdi gelelim Kodun sırayla açıklanmasına...

    4 - a - Aşama - Kodun Açıklanması - 1.Bölüm - Diyalogun (Toolbarın ) Oluşturulması ve diyalogun ayarları

    on *:start: { dialog -m toolbar toolbar }

    Bu Komut ; Script açıldığı zaman toolbar diyalogumuzun açık olmasını sağlar. Yani bu komutla biz toolbarımızı scriptimize yükleriz. Eğer bu komut olmassa toolbar'ımızı oluşturamayız. Yan scriptimiz açıldığı zaman, yaptığımız toolbarımız açılmaz, Başka bir deyişle çalışmaz.

    Scriptimiz için oluşturduğumuz toolbar; bu diyalog'tur . O yüzden bu diyalog açılmassa toolbarda kesin kez çalışmaz.

    on *:connect: {
    update.toolbar
    }

    Bu Komut ; Scriptiniz bir servere bağlandığı zaman ( yani connect olduğu zaman ) Toolbarınızın yüklenmesini sağlar. Bunu update komutu ile yapar. Yani servere bağlandığınız zaman toolbarınız aktifleşir.

    on *:disconnect: {
    update.toolbar
    }

    Bu Komut ; Scriptiniz bağlı olduğunuz serverden düştüğü zaman ( yani disconnect olduğu zaman ) toolbarın aktif kalmasını sağlar. Yani serverden düşseniz bile toolbarınız hala çalışıyor olacaktır. Bunuda update komutu ile yapar.

    on *:close:*: {
    update.toolbar
    }

    Bu Komut ; Scriptinizde herhangi bir kanal , özel penceresinin kapanması durumunda, toolbarın aktif olarak kalmasını sağlar.

    alias saat { if ($dialog(toolbar)) { did -a toolbar $1 $time } }

    Bu Kod ; scriptinizin köşesinde saatin aktif olmasını sağlayan koddur. Bilgisayarınızda ayarlı olan saat Toolbarın sağ köşesinde gösterilir.

    alias update.toolbar {
    if (!$dialog(toolbar)) { halt }
    else {
    scid $activecid
    if ( $scid($activecid).status = connecting || $scid($activecid).status = connected ) {
    did -o toolbar 1 3 +a 2 $chr(32) Bağlantıyı Kes $chr(9) $+ IRC Serverle Bağlantınızı Koparır.
    }
    else {
    did -o toolbar 1 3 +a 1 $chr(32) Servere Bağlan $chr(9) $+ IRC Servere Bağlantı Kurar.
    }
    }
    }

    Bu Komut Toolbar dosyamızın ilk kısım kodudur. İlk iconumuz olan Server bağlanma yerinin/iconun çalışmasını sağlayan bölümdür. Burada 2 icon kullanıyoruz. Servere bağlan dediğimizde yeşil icon, Bağlantıyı kes dediğimizde ise Kırmızı icon o an aktifdir. Yani tek menüde 2 icon vardır. Fakat İconlar yapılan işleme göre aktifleşir. Bağlan dediğinde farklı icon aktifleşir. Bağlantıyı kes dediğin zaman farklı icon aynı yerde aktifleşir.

    dialog toolbar {
    title "x"
    size 0 0 550 $iif($temabul,14,17)
    option dbu
    list 4, 0 -2 550 17, size
    list 1, 0 4 550 17, size
    text "", 2, 464 6 45 16, center
    text "", 3, 467 10 39 11, center
    }

    İşte En önemli yer. Bu Toolbarımızı oluşturan diyalogumuzdur. En baştaki açıklamada dediğim gibi Toolbar aslında bir diyalogtur. İşte diyalogumuz bu Kod'tur.

    Bu diyalogun ne olduğunu açıklayalım.

    Diyalogumuzda iki tane "list" vardır. Yani iki tane dialog vardır. Bu 2 diyalog birleştirilmiştir.

    size 0 0 550 $iif($temabul,14,17)

    İlk baştaki 0 rakamı: Diyalogumuzun en solda olmasını sağlar. Yani Mirc'in tam olarak ilk solda olmasını sağlar.
    İkinci 0 rakamı: Diyalogumuzun aşağı-yukarı pozisyonudur. Diyalogumuz Toolbar yerinde tam olarak en yukardan başlamasını sağlar.
    Üçüncü 550 rakamı: ise Diyalogumuzun uzunluğudur.
    Dördüncü sayılar olan 14,17 sayıları : ise Diyalogumuzun genişliğidir.


    Burada Neden 2 tane diyalog genişliğini belirten sayı vardır?

    Çünkü Windows Xp ve Windows Klasik Temalarında ayrı ayrı uzunluk birimleri oluşur. Cappystarj0e arkadaşımız sağolsun bu sorunu Tema.dll adlı bir dll yazarak çözmüştür. Önceki diyalogumuzda tek genişlik sayısı verebiliyorduk. Windows klasik temada iken sorunsuz olan o sayı Windows Xp Temasında genişlik bakımından sorunlu olmaktadır. İşte orada 2 sayı hem windows klasik tema hem de Windows Xp teması için ayrı ayrı belirlenmiş 2 genişlik birimidir.

    14 Sayısı: Windows Xp Teması için belirleyeceğimiz sayı
    17 Sayısı: Windows Klasik tema için belirleyeceğimiz sayı
    ( Bu bakımından dünyada ilk ve tektir. Cappystarj0e sağolsun bu konuda yardım etti. )

    Not : Diyalogumuzun genişliğini belirten 14,17 sayılarını aralarında 3 fark olmak koşuluyla değiştirebilirsiniz.

    Diyalogumuzun diğer sayılarıyla ilgli ayarlamalar toolbarımızın hoş gözükmemesine neden olur. ;

    Mesela Windows Klasik Teması için olan 17 sayısını 8 yaparsak bakın ne görüntü karşımıza çıkıyor. Bu görüntüde gördüğünüz gibi Yazılar gözükmemeye başlıyor.





    Siz görüntünün daha nazik gözükmesi adına, toolbarınızın küçük olmasını istiyorsunuz ,bu nedenle 17 sayısını (Windows Klasik Temaya göre olan genişlik sayısı) , 14 yapmak istiyorsunuz. ( yani Diyalogun genişliğini 14 yapmak istiyorsunuz) O zaman başka bir kaç ayarı da değişmek gerekir. Bu ayarlarlar ile sorunun üstesinden gelebiliriz. Bu ayarlar ise şunlardır:

    İlk olarak Windows Klasik Temaya göre olan 17 sayısını 14 yapacaksak Windows Xp ye göre olan genişliği hemen 14 den 11'e indirioyuruz.

    size 0 0 550 $iif($temabul,14,17) olan satırı
    size 0 0 550 $iif($temabul,11,14) satırı ile yer değiştiriyoruz.

    Bir sonraki aşamada;

    mdx SetFont $dname 1 Turkish 14 800 Cyrillic olan satırı
    mdx SetFont $dname 1 Turkish 11 800 arial satırı ile değiştiriyoruz.

    daha sonraki aşamada ise;

    did -i $dname 1 1 bmpsize 27 27 olan satırı
    did -i $dname 1 1 bmpsize 22 22 satırı ile değiştiriyoruz.

    En son aşamada ise görüntü kirliliği olmaması adına saat yazısının boyutunuda küçültmemiz gerekiyor:

    mdx SetFont $dname 3 +a 20 600 arial olan satırı
    mdx SetFont $dname 3 +a 16 600 arial satırı ile yer değiştiriyoruz


    Daha sonra karşımıza çıkan görüntü ise şu olur.



    Windows Klasik Temaya göre belirlenen 17 genişlik Sayısını, 14 değilde 21 yaparsak karşımıza çıkan görüntüde aşağıdaki resimdeki gibi olur.. Görüntü de gördüğünüz gibi Diyalog, Toolbarın renginin dışına sıçrıyor



    Diyorsaniz ki İconlarım ve yazılarım daha büyük olsun, Ona göre de bazı değişiklikler yapmak gereklidir. Tıpkı, hemen yukarıdaki 17 sayısını 14 veya 21 yapmak istediğimiz zaman, yaptığımız değişiklikleri bunda da aynen uyguluyoruz ve gene aynı satırlar da değişikleri yapıyoruz. Bu Ayarlar ise şunlardır :

    İlk olarak Windows Klasik Temaya göre olan 17 sayısını 21 yapacaksak Windows Xp ye göre olan genişliği hemen 14 den 18'e çıkarıyoruz.

    size 0 0 550 $iif($temabul,14,17) olan satırı
    size 0 0 550 $iif($temabul,18,21) satırı ile yer değiştiriyoruz.

    Bir sonraki aşamada;

    mdx SetFont $dname 1 Turkish 14 800 Cyrillic olan satırı
    mdx SetFont $dname 1 Turkish 15 800 arial satırı ile değiştiriyoruz.

    Daha sonraki aşamada ise:

    did -i $dname 1 1 bmpsize 27 27 olan satırı
    did -i $dname 1 1 bmpsize 35 35 satırı ile değiştiriyoruz.

    En son aşamada ise görüntü kirliliği olmaması adına saat yazısının boyutunuda küçültmemiz gerekiyor:

    mdx SetFont $dname 3 +a 20 600 arial olan satırı
    mdx SetFont $dname 3 +a 22 700 arial satırı ile yer değiştiriyoruz


    Daha sonra karşımıza çıkan görüntü ise şu olur.



    Bizim Toolbarımızda (Diyalogumuda) Artık 2 diyalog vardır. Birbirine geçmiştir. Neden böyle bir yöntem kullandık? Çünkü öncesinde toolbarımızın üstmenübarla birleşmesi için yükseklik satırında (2.ci sayıdır bu, kırmızı olan ) -2 veya -3 ile belirtmiştik. Bu seferde iconlar üstmenubara biraz yapışık gözükür olmuştu. Görsellik adına daha güzel bir toolbar için 2 diyalog kullanarak bunun üstesinden gelebiliriz. 2 diyalog kullanarak iconlarımızda üstmenubarla birleşik ve çok yakın durumda olmaz. Bahsettiğim satırlar şunlardır:

    list 4, 0 -2 550 17, size
    list 1, 0 4 550 17, size

    Bu satırlardan birini kaldırıp eski dersimde göstermiş olduğum toolbar tarzındaki gibi tek diyalog kullanırsak karşımıza şu tablo çıkar :




    ve diğer asıl kodumuzdaki resimle beraber karşılaştırılalım bunu..



    text "", 2, 464 6 45 16, center
    text "", 3, 467 10 39 11, center satırları ise saatimiz ile ilgili kod satırlarıdır.



    4 - b - Aşama - Kodun Açıklanması - 2.Bölüm - Diyalogun ( Toolbarın ) MDX , Rebar.dll ve Bar.dll ile şekillendirilmesi/Komutlandırılması

    Evet diyalogumuzu oluşturduk. Sıra Diyalogumuzu kullanarak Toolbarımızı oluşturma da.. Biz Diyalogumuzu kullanarak nasıl Toolbar hazırlarız? Tabiki MDX ile diyalogumuza şekil vererek hazırlarız. MDX ile Diyalogumuza icon koyabiliriz ve iconunun yanına da yazı ekleyebiliriz. Şunu asla unutmamak gerekir; Toolbar aslında basit bir mdx diyalogudur.

    MDX ile diyalogumuza şekil verirken, rebar ve bar.dll ile diyalogumuzun yerini ve diğer şekil ayarlarını oluşturmada yardım alıyoruz... İşte bu Ayarlamalar Kodun şu kısımlarıdır:

    on *:dialog:toolbar:init:0: {
    mdx MarkDialog $dname
    mdx SetDialog $dname style
    mdx SetFont $dname 1 Turkish 14 800 Cyrillic
    mdx SetColor $dname 1,2,3,4 background $rgb(113,188,255)
    mdx SetColor $dname 3 text $rgb(0,0,0)
    mdx SetFont $dname 3 +a 20 600 arial
    mdx SetColor $dname 2,3 textbg $rgb(113,188,255)
    .timersaat 0 1 saat 3
    rebar HideToolbar .
    rebar Dock $dialog(toolbar).hwnd > top
    mdx SetControlMDX $dname 1,3,4 Progressbar smooth > $ctl
    mdx SetControlMDX $dname 1,4 ToolBar flat wrap arrows nodivider > $bars
    ; mdx SetControlMDX $dname 1,4 ToolBar flat arrows nodivider wrap > $aux.mdx(bars)
    mdx SetBorderStyle 1

    Bu Koddaki bazı gerekli yerleri de hemen açıklayalım...

    on *:dialog:toolbar:init:0: {

    Bu satır değişiklileri gerçekleştirmek istediğimiz Diyalogun adını belirtiyoruz. Diyalogumuzun adı Toolbar olduğu için orada toolbar diye belirtmiş olduk..

    mdx SetFont $dname 1 Turkish 14 800 Cyrillic

    Buradaki satırdaki komutlar şunları ifade eder. Setfont komutu diyalogumuzda yer alan yazıların ( yani textlerin ) fontunu değiştirir. İlk olarak id numarasını yazıyoruz 1 diye, daha sonra fontun dilini seçiyoruz.

    Font dil listesi:
    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 )

    +i, +u , +b yi nasıl kullanırız derseniz :

    mdx SetFont $dname 1 +i Turkish 14 800 Cyrillic

    14 sayısıda font büyüklüğünü ifade eder. 800 sayısı ise, fontu genişletme de ve büyütme de kullanılır. Ayrıca Sayı arttıkça yazı, daha da kalın ( bold ) hale gelir.

    Son olarak Cyrillic ne anlama ifade eder. Cyrillic Toolbarda kullandığımız font tipidir ( yani Yazı tipidir.) Mesela başka font tipine örnek vereceksek olursak; Ms serif , time news roman vs..

    mdx SetFont $dname 1 Turkish 14 800 Cyrillic Biz Normal Kodumuzda kullandığımız Bu satırın sonucu, yazılar toolbarda şu şekilde gözükür:



    Bu satırda biz yazı büyüklüğünü, 14 ten 17 e çıkarıp komutu
    mdx SetFont $dname 1 Turkish 17 800 arial şeklinde yaparsak karşımıza çıkan görüntü ise şu olur:




    Görüntüde gözüktüğü gibi Listemizde kullanılan yazı büyüklüğünü büyüttüğümüz zaman görüntü baya bozulur. yanlamasına yazılar iyice köşeye yanaşıyoruz. Eğer yazılarımızın Bu boyutta olmasını istiyorsak öncelikle oradaki bölümlerden en az 2 sini kaldırmamız gerekir. Bu işlemde örnek olarak, ben Görünümler ile Oyunlar bölümünü kaldırdım. O yerleri oluşturan satırları silince kod şöyle oldu:


    PHP- Kodu:
    on *:start: { dialog -m toolbar toolbar }
    alias Temadene { echo -a Temam$iif($temabul,XP Teması,Klasik Windows Teması) }
    alias Temabul { .comreg dll/Tema.dll | .comopen toolbar Tema.buL | var %komut $com(toolbar,TemaBul,1) | var %komut $com(toolbar).result | .comclose toolbar | .comreg -u dll/Tema.dll | return %komut }
    alias mdx { return $dll(DLL\mdx.dll,$1,$2-) }
    alias rebar dll DLL\rebar.dll $$1- }
    alias bars { return DLL\bars.mdx }
     
    on *:connect: {
      
    update.toolbar
    }
    on *:disconnect: {
      
    update.toolbar
    }
    on *:close:*: {
      
    update.toolbar
    }
    alias saat { if ($dialog(toolbar)) { did -a toolbar $1 $time } }
     
    alias update.toolbar {
      if (!
    $dialog(toolbar)) { halt }
      else {
        
    scid $activecid
        
    if ( $scid($activecid).status connecting || $scid($activecid).status connected ) { 
          
    did -o toolbar 1 3 +a 2 $chr(32Bağlantıyı Kes $chr(9) $+ IRC Serverle Bağlantınızı Koparır
        }
        else {
          
    did -o toolbar 1 3 +a 1 $chr(32Servere Bağlan $chr(9) $+ IRC Servere Bağlantı Kurar.
        }
      }
    }
     
    dialog toolbar {
      
    title "x"
      
    size 0 0 550 $iif($temabul,14,17)
      
    option dbu
      
    list 4-2 550 17size
      
    list 10 4 550 17size
      text 
    ""2464 6 45 16center
      text 
    ""3467 10 39 11center
    }
     
    on *:dialog:toolbar:init:0: {
       
    mdx MarkDialog $dname
      mdx SetDialog $dname style 
      mdx SetFont $dname 1 Turkish 17 800 Cyrillic
      mdx SetColor $dname 1
    ,2,3,4 background $rgb(113,188,255)
      
    mdx SetColor $dname 3 text $rgb(0,0,0)
      
    mdx SetFont $dname 3 +a 20 600 arial
      mdx SetColor $dname 2
    ,3 textbg $rgb(113,188,255)
      .
    timersaat 0 1 saat 3
     
      rebar HideToolbar 
    .
      
    rebar Dock $dialog(toolbar).hwnd top
      mdx SetControlMDX $dname 1
    ,3,4 Progressbar smooth $ctl
      mdx SetControlMDX $dname 1
    ,4 ToolBar flat wrap arrows nodivider $bars
      
    mdx SetControlMDX $dname 1,4 ToolBar flat arrows nodivider wrap $aux.mdx(bars)
      
    mdx SetBorderStyle 1
     did 
    -i $dname 1 1 setscheme $rgb(163,163,163$rgb(163,163,163)
      
    did -i $dname 1 1 bmpsize 27 27 
      did 
    -i $dname 1 1 setimage icon large icon\baglan.ico
      did 
    -i $dname 1 1 setimage icon large icon\kes.ico
      did 
    -i $dname 1 1 setimage icon large icon\Ayarlar.ico
      did 
    -i $dname 1 1 setimage icon large icon\kanal.ico
      did 
    -i $dname 1 1 setimage icon large icon\korumalar.ico
      did 
    -i $dname 1 1 setimage icon large icon\kontrolpanel.ico
      did 
    -i $dname 1 1 setimage icon large icon\gorunum.ico
      did 
    -i $dname 1 1 setimage icon large icon\internet.ico
      did 
    -i $dname 1 1 setimage icon large icon\yardım.ico
      did 
    -a $dname 1 +-
      
    did -a $dname 1 +a 1 $chr(32Server Bağlan $chr(9) $+ IRC Servere Bağlantı Kurar.
      
    did -a $dname 1 +-
      
    did -a $dname 1 +a 3 $chr(32Bağlantı $chr(9) $+ Bağlantı Ayarlarını Yapar.
      
    did -a $dname 1 +-
      
    did -a $dname 1 +a 4 $chr(32Kanallar $chr(9) $+ Kanallara Giriş Penceresini Açar.
      
    did -a $dname 1 +-
      
    did -a $dname 1 +a 5 $chr(32Korumalar $chr(9) $+ Kanal ve Kişisel Korumaları Açar.
      
    did -a $dname 1 +-
      
    did -a $dname 1 +a 6 $chr(32Kontrol Panel $chr(9) $+ Scriptinizle İlgili Tüm Ayarları Açar.
      
    did -a $dname 1 +-
      
    did -a $dname 1 +a 7 $chr(32Oyunlar $chr(9) $+ Scriptinizin Oyunlarıyla İlgili Diyalogu Açar.
      
    did -a $dname 1 +-
      
    did -a $dname 1 +a 8 $chr(32Internet $chr(9) $+ Internet Adreslerinin Olduğu Diyalogu Açar.
      
    did -a $dname 1 +-
      
    did -a $dname 1 +a 9 $chr(32Yardım $chr(9) $+ Scriptinizin Yardım Dosyasını Açar.
      
    did -a $dname 1 +-
    }
    on *:dialog:toolbar:*:*: {
      if 
    $devent == sclick {
        if 
    $did == {
          if (
    $did($dname,1).sel 3) {
            if (
    $scid($activecid).status connecting || $scid($activecid).status connected ) { scid $activecid disconnect }
            else {
              
    scid $activecid server
            
    }
            
    update.toolbar
            did 
    -f $dname 1
            scid $activecid window 
    -"status window"
          
    }
          if (
    $did($dname,1).sel 5) {
            
    Ayarlar
          
    }
          if (
    $did($dname,1).sel 7) {
            
    Kanallar
          
    }
          if (
    $did($dname,1).sel 9) {
            
    Korumalar
          
    }
          if (
    $did($dname,1).sel 11) {
            
    kontrolpanel
          
    }
          if (
    $did($dname,1).sel 13) {
            
    gorunumler
          
    }
          if (
    $did($dname,1).sel 15) {
            
    linternet 
          
    }
          if (
    $did($dname,1).sel 17) {
            
    yardim
          
    }
        }
      } 
    O bölümler Kaldırırıldıktan sonra oluşan görüntüşu şekilde olur:










  4. 4
    Easy
    Güncelleme
    mdx SetColor $dname 1,2,3,4 background $rgb(113,188,255)

    Bu Satır ise Diyalogumuzun ve Saatimizin Arka plan rengini belirler. Bunu Setcolor komutu ile sağlıyoruz. Hatırlayalım ki diyalogumuz 2 diyalogun birleşmesiyle oluşuyor ve bu 2 diyalogumuza birde saat kodları yerleştirdik.

    Diyalogumuzu (Toolbarımızı) oluşturan komutlar :
    list 4, 0 -2 550 17, size
    list 1, 0 4 550 17, size

    Saatimizi oluşturan komutlar ise:
    text "", 2, 464 6 45 16, center
    text "", 3, 467 10 39 11, center

    Burada diyalogun İd numaraları 1 ve 4 dür. Saatin id numaraları 2 ve 3'tür. O yüzden Setcolor komutunu kullanırken MDX Setcolor $dname satırında 1,2,3,4 sayılarını belirtmemiz gerekir. Unutmayın buradaki 1 ve 4 diyalogumuzun id numaraları, 2 ve 3 saat id numaralarıdır.

    Background yazısı ise Diyalogumuzu ve saatimizi renklendirmek için kullanılan komuttur. Background'un türkçesi zaten Arka plan demektir. Bizde işte diyalogumuzun ( Yani Toolbarımızın ) ve saatimizin arka planı rengini değiştiriyoruz.

    Koddaki $rgb(113,188,255) yeri ise; diyalogumuzun renk kodudur. Bu renk Kodu mavi rengidir. Daha da net ifadeyle Mavi renginin bir tonudur ...

    mdx SetColor $dname 1,2,3,4 background $rgb(113,188,255) Bu Satırın renk görüntüsü; mavimsi arka plan renginden oluşan toolbarımız işte karşınızda ;




    Burada Toolbarımızın rengini değiştirmek istiyorsak Bu sayıları (113,188,255) değiştireceğiz. Fakat bunu yaparken ayrıca saat kodlarımızda yer alan yazılarında arka plan rengini değiştirmemiz gerekir.

    Mesela arka plan rengimizin beyaz olmasını istiyoruz o zaman önce:

    mdx SetColor $dname 1,2,3,4 background $rgb(113,188,255) satırı
    mdx SetColor $dname 1,2,3,4 background $rgb(255,255,255) şeklinde edeceğiz.

    Saat bölümünde yer alan yazıların arka plan rengini değiştirmek içinde:

    mdx SetColor $dname 2,3 textbg $rgb(113,188,255) satırı
    mdx SetColor $dname 2,3 textbg $rgb(255,255,255) şeklinde çevireceğiz.

    Bu satır sonucu oluşan beyaz görünümlü toolbarımız işte karşınızda ;




    Yani o sayılarla oynayarak renkleri ayarlarız. Bunların sayılarını biraz düşürerek veya arttırarak tonlarını ayarlarız.

    RGB Renk Kodlarına Örnek :
    (0,0,0) bu diyalogu siyah yapar.
    (255,255,255) beyaz yapar.
    (255,0,0) kırmızı yapar.
    (010,120,240) sarı yapar.
    (255,255,0) mavi yapar.

    mdx SetColor $dname 3 text $rgb(0,0,0) satırı diyalogumuzda yer alan saat yazısının rengini belirler... Burada biz (0,0,0) rgb renk kodlarıyla Siyah yaptık. Yani Diyalogumuzda saatimiz siyah yazı ile gözükmektedir. Renklere örnek hemen üstte verdim...

    mdx SetFont $dname 3 +a 20 600 arial satırı diyalogumuzdaki saat yazısının boyutunu (büyüklüğünü) belirler.

    mdx SetFont $dname SetFont diyalogumuzda yer alan saatin fontunu değiştirmek için kullanılan komut.

    3 diyalogumuzda yer alan saatin hangi id numarasına sahip olduğunu belirtir.
    20 yeri yazının font büyüklüğünü belirler.
    600 yazının genişliğini belirler.
    arial yazının tipini belirleri. Yukarıda hangi yazı tiplerini kullanabileceğimizin listesini vermiştim.

    .timersaat 0 1 saat 3 satırı mircin açıldığı zaman saatin toolbarda ne zaman aktif olacağını timer komutu ile belirler.

    rebar HideToolbar .
    rebar Dock $dialog(toolbar).hwnd > top

    Bu Satırlar Diyalogumuzun Toolbarda rebar.dll kullanılarak üsttemi, alttamı, sağdamı, soldamı yer almasını sağlar. Bu satırda kullanılan top ifadesi toolbarın üstte yer almasını sağlar.

    Top: Üstte
    Bottom: Altta

    Yani Diyalogumuzun altta yer almasını istiyorsak :

    rebar Dock $dialog(toolbar).hwnd > top satırını
    rebar Dock $dialog(toolbar).hwnd > bottom satırı ile yer değiştiriyoruz.


    ve karşımıza çıkan görüntü şu olur:





    mdx SetControlMDX $dname 1,3,4 Progressbar smooth > $ctl
    mdx SetControlMDX $dname 1,4 ToolBar flat wrap arrows nodivider > $bars
    ; mdx SetControlMDX $dname 1,4 ToolBar flat arrows nodivider wrap > $aux.mdx(bars)

    Bu Satırlar Diyalogumuzun diğer şekil ayarlarıdır.

    mdx SetBorderStyle 1

    Satırı ise diyalogumuzun diyalog tipidir diyelim veya diyalog stilidir diyelim.. Buna diyalog ana şekli de diyebilirsiniz..


    4 - c - Aşama - Kodun Açıklanması - 3.Bölüm - Diyalog'a ( Toolbara ) İconların ve yazıların yerleştirilmesi

    Aşağıdaki iconlaştırma satırlarında elimde olan iconların adını ben daha düzenli olsun diye baglan.ico, kes.ico vs.. yaptim ki toolbara yerleştirirken sırayı karıştırmayayım...

    did -i $dname 1 1 setscheme $rgb(163,163,163) $rgb(163,163,163)
    did -i $dname 1 1 bmpsize 27 27
    did -i $dname 1 1 setimage icon large icon\baglan.ico
    did -i $dname 1 1 setimage icon large icon\kes.ico
    did -i $dname 1 1 setimage icon large icon\Ayarlar.ico
    did -i $dname 1 1 setimage icon large icon\kanal.ico
    did -i $dname 1 1 setimage icon large icon\korumalar.ico
    did -i $dname 1 1 setimage icon large icon\kontrolpanel.ico
    did -i $dname 1 1 setimage icon large icon\gorunum.ico
    did -i $dname 1 1 setimage icon large icon\liste.ico
    did -i $dname 1 1 setimage icon large icon\oyunlar.ico
    did -i $dname 1 1 setimage icon large icon\internet.ico
    did -i $dname 1 1 setimage icon large icon\yardım.ico
    did -a $dname 1 +a -
    did -a $dname 1 +a 1 $chr(32) Server Bağlan $chr(9) $+ IRC Servere Bağlantı Kurar.
    did -a $dname 1 +a -
    did -a $dname 1 +a 3 $chr(32) Bağlantı $chr(9) $+ Bağlantı Ayarlarını Yapar.
    did -a $dname 1 +a -
    did -a $dname 1 +a 4 $chr(32) Kanallar $chr(9) $+ Kanallara Giriş Penceresini Açar.
    did -a $dname 1 +a -
    did -a $dname 1 +a 5 $chr(32) Korumalar $chr(9) $+ Kanal ve Kişisel Korumaları Açar.
    did -a $dname 1 +a -
    did -a $dname 1 +a 6 $chr(32) Kontrol Panel $chr(9) $+ Scriptinizle İlgili Tüm Ayarları Açar.
    did -a $dname 1 +a -
    did -a $dname 1 +a 7 $chr(32) Görünümler $chr(9) $+ Scriptinizin Görünümüyle İlgili Ayarları Açar.
    did -a $dname 1 +a -
    did -a $dname 1 +a 8 $chr(32) Listeler $chr(9) $+ Scriptinizdeki Notify, Düşman Listesi Gibi Ayarları Açar.
    did -a $dname 1 +a -
    did -a $dname 1 +a 9 $chr(32) Oyunlar $chr(9) $+ Scriptinizin Oyunlarıyla İlgili Diyalogu Açar.
    did -a $dname 1 +a -
    did -a $dname 1 +a 10 $chr(32) Internet $chr(9) $+ Internet Adreslerinin Olduğu Diyalogu Açar.
    did -a $dname 1 +a -
    did -a $dname 1 +a 11 $chr(32) Yardım $chr(9) $+ Scriptinizin Yardım Dosyasını Açar.
    did -a $dname 1 +a -
    } [/b]

    Bu Kodun açıklanmasına geçersek :

    did -i $dname 1 1 setscheme $rgb(163,163,163) $rgb(163,163,163)

    Bu Satır Toolbarımızda yer alan bölümlerin ayrı ayrı belirtilmesini yan çizgi çizerek belirtir. Biz bu çizginin rengini de $rgb(163,163,163) ile gri yapiyoruz.

    did -i $dname 1 1 bmpsize 27 27

    Bu Satır İconlarımızın büyüklüğünü belirtir. Bununla iconlarımızı büyütürüz.
    Bu Satır Sonucu oluşan görüntü işte karşınızda:



    Mesela Biz İconlarımızın daha büyük gözükmesini istiyoruz. O zaman 27 27 sayısını yükseltiyoruz. 35 35 edelim mesela .

    did -i $dname 1 1 bmpsize 27 27 satırını
    did -i $dname 1 1 bmpsize 35 35 şeklinde yaparsak şu görüntü karşımıza çıkar.



    Burada sadece o satırdaki sayıyı yükseltince, iconlarımız büyümektedir ve çok büyütülürse için diyalogumuza sığmama durumu olabilir.

    did -i $dname 1 1 setimage icon large icon\baglan.ico
    did -i $dname 1 1 setimage icon large icon\kes.ico
    did -i $dname 1 1 setimage icon large icon\Ayarlar.ico
    did -i $dname 1 1 setimage icon large icon\kanal.ico
    did -i $dname 1 1 setimage icon large icon\korumalar.ico
    did -i $dname 1 1 setimage icon large icon\kontrolpanel.ico
    did -i $dname 1 1 setimage icon large icon\gorunum.ico
    did -i $dname 1 1 setimage icon large icon\liste.ico
    did -i $dname 1 1 setimage icon large icon\oyunlar.ico
    did -i $dname 1 1 setimage icon large icon\internet.ico
    did -i $dname 1 1 setimage icon large icon\yardım.ico

    Bu Satırlarla ile iconlarımızı yerleştiriyoruz. İconlarımız, icon adlı klasörün içinde olmalıdır. Uzantımız icon\baglan.ico 'dur. Eğer siz başka bir dosya da iconlarınızı koyup oradan ayarlamak istiyorsanız o dosyanızın adını yazınız.

    Uzantı örnekleri:
    sistem\icon\baglan.ico
    icons\baglan.ico
    resim\baglan.ico

    Bu 3 türlü uzantı örneği de yeterlidir sanırım.

    did -a $dname 1 +a -
    did -a $dname 1 +a 1 $chr(32) Server Bağlan $chr(9) $+ IRC Servere Bağlantı Kurar.
    did -a $dname 1 +a -
    did -a $dname 1 +a 3 $chr(32) Bağlantı $chr(9) $+ Bağlantı Ayarlarını Yapar.
    did -a $dname 1 +a -
    did -a $dname 1 +a 4 $chr(32) Kanallar $chr(9) $+ Kanallara Giriş Penceresini Açar.
    did -a $dname 1 +a -
    did -a $dname 1 +a 5 $chr(32) Korumalar $chr(9) $+ Kanal ve Kişisel Korumaları Açar.
    did -a $dname 1 +a -
    did -a $dname 1 +a 6 $chr(32) Kontrol Panel $chr(9) $+ Scriptinizle İlgili Tüm Ayarları Açar.
    did -a $dname 1 +a -
    did -a $dname 1 +a 7 $chr(32) Görünümler $chr(9) $+ Scriptinizin Görünümüyle İlgili Ayarları Açar.
    did -a $dname 1 +a -
    did -a $dname 1 +a 8 $chr(32) Listeler $chr(9) $+ Scriptinizdeki Notify, Düşman Listesi Gibi Ayarları Açar.
    did -a $dname 1 +a -
    did -a $dname 1 +a 9 $chr(32) Oyunlar $chr(9) $+ Scriptinizin Oyunlarıyla İlgili Diyalogu Açar.
    did -a $dname 1 +a -
    did -a $dname 1 +a 10 $chr(32) Internet $chr(9) $+ Internet Adreslerinin Olduğu Diyalogu Açar.
    did -a $dname 1 +a -
    did -a $dname 1 +a 11 $chr(32) Yardım $chr(9) $+ Scriptinizin Yardım Dosyasını Açar.
    did -a $dname 1 +a -
    Bu Satırlar İcon resmine yazıları ekleme ve de yazıların üstüne gelince gölge yazısı ( Bilgilendirme yazısı) veya Baloncuk yazısı ekleme kodlarıdır. Bunlardan ikisini örnek olarak açıklayalım hemen;
    did -a $dname 1 +a -
    did -a $dname 1 +a 1 $chr(32) Server Bağlan $chr(9) $+ IRC Servere Bağlantı Kurar.
    did -a $dname 1 +a -
    did -a $dname 1 +a 3 $chr(32) Bağlantı $chr(9) $+ Bağlantı Ayarlarını Yapar.
    did -a $dname 1 +a -

    did -a $dname 1 +a - satırları ile Biz oluşturduğumuz herhangi bir icona sanal çerçeve hazırlarız. Yani bu kod sayesinde biz, İconun üstüne gelince bir Baloncuk yazısı gelir..

    did -a $dname 1 +a 1 $chr(32) Server Bağlan $chr(9) $+ IRC Servere Bağlantı Kurar. satırında ise did -a $dname 1 yeri yazının hangi icon'un altında olması gerektiğini belirtir.

    $chr(32) Server Bağlan yeri yazının altında hangi yazının geleceğini belirleriz.

    chr(9) $+ IRC Servere Bağlantı Kurar. yazıya yani iconun üstüne gelince gölgede hangi yazının yazacağını belirler.

    Daha sonra yeni bir bölüm için:
    did -a $dname 1 +a - satırı ile yeni bir gölge durumu oluştururuz. ve peşine yeni bölüm kodunu koyarız ki bunun da açıklaması üsttekiyle aynıdır.
    did -a $dname 1 +a 3 $chr(32) Bağlantı $chr(9) $+ Bağlantı Ayarlarını Yapar.

    Burada Bir sonraki icon dosyasının idi 3'dür. 1 ve 2 nolu iconlar baglan.ico ve kes.ico idi. Bunlar tek icon penceresinde gösterilmektedir. Bağlan diyince baglan.ico aktifleşiyor. Kes diyince Kes.ico aktifleşiyor. yai tek icon menüsünde 2 icon kullanmış oluyoruz. İlk ikon penceresinde 2 icon kullandığımız için bir sonraki İconumuzun idi 3 olmaktadır.

    Not: $chr(32) bu satır ise asci karakter kodudur. O 32 sayısı icoların çizgi oluşturur. Örnek : | Baglan | Ayarlar | gibi cizgiler ile iconları bölümleriz.

  5. 5
    Easy
    Güncelleme
    4 - d - Aşama - Kodun Açıklanması - 4.Bölüm - Diyalog'taki ( Toolbardaki ) İconlara tıklanınca çalıştırılacak yerlerin ayarlanması

    Siz diyelim ayarlar iconuna basınca, Ayarlar menünüzün açılmasını istiyorsunuz. veya da korumalar iconuna basınca İcon menüsünün açılmasını istiyorsunuz... İşte bunun gibi iconlara basılınca onların çalışmasını sağlamak için aşağıdaki komutları yazıyoruz...

    on *:dialog:toolbar:*:*: {
    if $devent == sclick {
    if $did == 1 {
    if ($did($dname,1).sel = 3) {
    if ($scid($activecid).status = connecting || $scid($activecid).status = connected ) { scid $activecid disconnect }
    else {
    scid $activecid server
    }
    update.toolbar
    did -f $dname 1
    scid $activecid window -a "status window"
    }
    if ($did($dname,1).sel = 5) {
    Ayarlar
    }
    if ($did($dname,1).sel = 7) {
    Kanallar
    }
    if ($did($dname,1).sel = 9) {
    Korumalar
    }
    if ($did($dname,1).sel = 11) {
    kontrolpanel
    }
    if ($did($dname,1).sel = 13) {
    gorunumler
    }
    if ($did($dname,1).sel = 15) {
    listeler
    }
    if ($did($dname,1).sel = 17) {
    oyunlar
    }
    if ($did($dname,1).sel = 19) {
    internet
    }
    if ($did($dname,1).sel = 21) {
    yardim
    }
    }
    }

    Burası aslında çok basittir. 5 Numaralı yer Ayarlar menüsüne basılınca açılacak yerdir. Ben Scriptimde Ayarlar Diyalogumun ismini Ayarlar yaptım. ve O nedenle orada Ayarlar yazdım

    if ($did($dname,1).sel = 5) {
    Ayarlar

    İşte burada Ayarlara basılınca Ayarlar diyalogum açılır. Sizin Ayarlar diyalogunuzun ismi neyse onu yazın. Ben karışıklık olmasın diye , sonradan değişiklik yapabilirim, bu nedenle onun yeri nerede aramayayım diye Ayarlar diye ismini belirttim. İconun adıyla İcon dosyamın adını aynı yaparak düzenli bir Kod oluşturmaya çalıştım.

  6. 6
    By_Suprens!
    Üye
    tskler yapmayacalısacaz artık ins... olur cok saul kardeş

  7. 7
    Easy
    Güncelleme
    valla gülü seven dikenine katlanır .

    cok kolay olmasada kendı cabalarınla bıseyler yapacaksın artık , basarılar

  8. 8
    facetr
    Yeni Üye
    Arkadaşlar toolbar yapmak için işte size link, buradan

    Toolbarın görünümünü bu şekle sokabilirsiniz radyo toolbar

    Toolbar kaydınızı yaptıktan sonra en iyi toolbar butonları da toolbarınıza istediğiniz eklemeleri yapabilirsiniz.

+ Yorum Gönder
toolbar nasıl yapılır
5 üzerinden 5.00 | Toplam : 1 kişi