d7MsgBox_NOGUIDefault

d7MsgBox_NOGUIDefault Fonksiyonu

Tanım


Ön yüzü olan (kullanıcının görebildiği) programlarda; ekranda bir mesaj vermeye yarayan, kullanıcının bir tuşa basmasını bekleyen ve basılan tuşa göre bir tam sayı döndüren fonksiyondur. Ön yüzü olmayan programlarda da ise kullanıcı ilgili mesaj kutusunu göremediğinden varsayılan cevap değeri geri döner.


Ön yüzü olmayan programlar; ana uygulamanın arka planında çalışan ve kullanıcı ile herhangi bir ekran görseli teması olmayan programlardır. Örneğin cari hesap kartı için yazılmış bir makro içinde, senet giriş uygulamasının çağrılması verilebilir. Burada Senet Giriş uygulaması tamamen arka planda çalışacağından kullanıcıya ekranda bir şey görünmez. Eğer ki, Senet Giriş uygulamasında event makro ile bir şey kontrol ediyorsak ve kontrol içinde ekrana herhangi bir sebepten mesaj kutusu getirip kullanıcının tuşa basması isteniyorsa; kullanıcı ilgili mesaj kutusunu göremediğinden bir cevap seçemeyecekti. Yazılan makrolarda benzer durumların olma ihtimaline karşılık, bu fonksiyonun kullanılması daha iyi sonuçlar üretir.

Kullanım Şekli


Değişken = Document.d7MsgBox_NOGUIDefault(Mesaj, Başlık, Stil, VarsayılanCevap)

Ana Nesne


Document (Doc) nesnesinin elemanıdır. Bir doküman nesnesi ile kullanılmak zorundadır.

Parametreler


Parametre

Açıklama

Mesaj

Ekranda gösterilmek istenilen mesajdır. Uzun mesajlarda satırbaşı yapılmak isteniyorsa; carriage return karakteri (Chr(13)) veya linefeed karakteri (Chr(10)) istenilen kadar kullanılabilir. Kullanılması zorunlu bir parametredir.

Başlık

Ekranda çıkan mesaj kutusu nun başlığıdır.

Stil

Mesaj kutusunda çıkması istenen tuşların, hangi tuşun varsayılan olarak seçili olacağı ve hangi simgenin kullanılacağını belirtmek için kullanılır. Tuş seçenek değeri, varsayılan tuş değeri ve simge değeri matematiksel toplanarak bir tamsayı olarak girilebilir. Ayrıca tamsayı değeri yerine, sistemde tanımlı olan dinamo sabit ad veya vbscript sabit adları da kullanılabilir. Eğer aşağıda anlatılan değerlerin dışında, yanlış değer atanırsa fonksiyon çalışmaz ve mesaj kutusu ekranda görünmez.

VarsayılanCevap

Ön yüzü olmayan programlarda sistem tarafından geri dönülen değer. Seçenekler Geri Dönen Değerler kısmında anlatılmıştır.



Stil parametresinin tuş seçenekleri aşağıdadır.


Dinamo ERP Sabit Ad

vbscript Sabit Ad

Değer

Açıklama

MB_OK

vbOKOnly

0

OK (Tamam) tuşu gösterilir

MB_OKCANCEL

vbOKCancel

1

OK (Tamam) ve Cancel (İptal) tuşları gösterilir

MB_ABORTRETRYIGNORE

vbAbortRetryIgnore

2

Abort (Durdur), Retry(Yeniden Dene) ve Ingore (Göz Ardı Et) tuşları gösterilir

MB_YESNOCANCEL

vbYesNoCancel

3

Yes (Evet), No (Hayır) ve Cancel (İptal) tuşları gösterilir

MB_YESNO

vbYesNo

4

Yes (Evet) ve No (Hayır) tuşları gösterilir

MB_RETRYCANCEL

vbRetryCancel

5

Retry(Yeniden Dene) ve Cancel (İptal) tuşları gösterilir



Stil parametresinin simge seçenekleri aşağıdadır. Simgeler mesaj kutusunun solunda çıkar.


Dinamo ERP Sabit Ad

vbscript Sabit Ad

Değer

Açıklama

MB_ICONERROR,

MB_ICONHAND,

MB_ICONSTOP

vbCritical

16

  simgesi gösterilir.

MB_ICONQUESTION

vbQuestion

32

  simgesi gösterilir.

MB_ICONEXCLAMATION,

MB_ICONWARNING

vbExclamation

48

 simgesi gösterilir.

MB_ICONINFORMATION,

MB_ICONASTERISK

vbInformation

64

 simgesi gösterilir.


Stil parametresinin varsayılan tuş seçenekleri aşağıdadır. Varsayılan tuş kullanıldığında kullanıcı, fare kullanmadan, klavyesinde Enter veya Carriage Return tuşuna bastığında, varsayılan seçeneği seçmiş olur.


Dinamo ERP Sabit Ad

vbscript Sabit Ad

Değer

Açıklama

MB_DEFBUTTON1

vbDefaultButton1

0

Birinci tuş varsayılandır.

MB_DEFBUTTON2

vbDefaultButton2

256

İkinci tuş varsayılandır.

MB_DEFBUTTON3

vbDefaultButton3

512

Üçüncü tuş varsayılandır.

MB_DEFBUTTON4

vbDefaultButton4

768

Dördüncü tuş varsayılandır.





Geri Dönen Değerler


Kullanıcı, mesaj kutusundaki tuşlardan birini seçmek zorundadır. Seçilen tuş geri dönen değeri bir tamsayıdır. Aşağıdaki tabloda hangi tuşa hangi tamsayı değeri dönüldüğü gösterilmiştir. Geri dönülen tamsayı değeri yerine sabit adlarda kullanılabilir.


Ön yüzü olmayan programlarda da varsayılan cevap olarak yine bu değerler kullanılır.



Dinamo ERP Sabit Ad

vbscript Sabit Ad

Değer

Açıklama

IDOK

vbOK

1

OK (Tamam) tuşunun seçildiğini belirten değer.

IDCANCEL

vbCancel

2

Cancel (İptal) tuşunun seçildiğini belirten değer.

IDABORT

vbAbort

3

Abort (Durdur) tuşunun seçildiğini belirten değer.

IDRETRY

vbRetry

4

Retry(Yeniden Dene) tuşunun seçildiğini belirten değer.

IDIGNORE

vbIgnore

5

Ingore (Göz Ardı Et) tuşunun seçildiğini belirten değer.

IDYES

vbYes

6

Yes (Evet) tuşunun seçildiğini belirten değer.

IDNO

vbNo

7

No (Hayır) tuşunun seçildiğini belirten değer.


Hatırlatmalar


Tuş açıklamaları (İngilizce, Türkçe vb. ), işletim sisteminin kurulum diline göre değişebilir.

İçinde Cancel (İptal) tuşu olan mesaj kutularında klavyedeki ESC (Escape) tuşuna basıldığında da sistem Cancel tuşu seçilmiş gibi davranır ve 2 (IDCANCEL, vbCancel) değeri geri dönülür. Ayrıca sadece  OK (Tamam) tuşunun olduğu mesaj kutularında da ESC (Escape) tuşuna basıldığında 1 (IDOK, vbOK) değeri geri dönülür.


Örnek


Sub Makro1()

       Mesaj = "Uyarı! İşlemlerde hata bulundu." & chr(13) & chr(13) & "Devam etmek ister misiniz?"

       Baslik = "Hatalı Bilgi"

       Stil = MB_YESNO + MB_ICONWARNING + MB_DEFBUTTON2

       VarsayilanCevap = IDNO

       GeriDonusDegeri = Doc. d7MsgBox_NOGUIDefault(Mesaj,Baslik,Stil,VarsayilanCevap)                

       If GeriDonusDegeri = IDYES then

               Sonuc = "İşleme hatalı devam edildi."

       Else

               Sonuc = "İşlem durduruldu"        

       End If

End Sub




Yukarıdaki örnek, aralarında bir satır boşluk verilen bir mesajı, uyarı simgesi ile Yes ve No  tuşlarını kullanarak mesaj kutusunu oluşturmuştur. Ayrıca ikinci tuş olan No (Hayır) tuşu varsayılan olarak seçili yapılmıştır. Ön yüzü olan programlarda; aşağıdaki resimdeki gibi bir mesaj kutusu görülecekti.




Eğer ki ön yüzü olamayan bir uygulamada, bu makro çalışacak olsaydı, fonksiyon kullanıcıya birşey göstermeden Varsayılan Cevap olan IDNO (vbNo, 7) cevabı geri dönecekti.


Satırlar arası boşluk için chr(13) & chr(13) karakterleri kullanılmıştır. Ayrıca Stil değişkenini aşağıdaki şekillerde de kullanılabilirdik. Bu durumlarda da sonuç

tamamen aynı olacaktı.



Stil = vbYesNo + vbExclamation + vbDefaultButton2

Stil = 4 + 48 + 256



“if geridonusdegeri = IDYES then” program cümlesindeki IDYES yerine vbYes veya 6 değerleri de kullanılabilinirdi.

Paylaşım Makrosu




s

Copyright © <2017> by <Birleşik Yazılım>. All Rights Reserved.