MessageBox fonksiyonu oluşturur, görüntüler ve bir ileti kutusu çalışır. İleti kutusu uygulama tanımlı bir ileti ve başlık, önceden tanımlanmış simgeler ve tuşlar birleşimini içerir.
int MessageBox) hwnd hWnd, / / ele sahip penceresilpctstrlpText, / / adres ileti kutusundaki metinlpctstrlpCaption, / / adres ileti kutusu başlıkUINTuType / / stil mesaj kutusu);
İleti kutusunda bulunan düğmeleri göstermek için aşağıdaki bayraklardan birini belirtin:
Bayrak | Anlamı |
---|---|
MB_ABORTRETRYIGNORE | İleti kutusu üç Basma düğmelerini içerir:, yeniden dene, iptal ve Yoksay. |
MB_OK | İleti kutusunda bir düğme içerir: Tamam. Varsayılan. |
MB_OKCANCEL | İleti kutusu iki push düğme içerir: Tamam ve iptal. |
MB_RETRYCANCEL | İleti kutusu iki push düğme içerir: deneme ve iptal. |
MB_YESNO | İleti kutusu iki push düğme içerir: Evet ve hayır. |
MB_YESNOCANCEL | İleti kutusu üç Basma düğmelerini içerir: Evet, hayır ve iptal. |
Bir ileti kutusu simge görüntülemek için aşağıdaki bayraklardan birini belirtin:
Bayrak | Anlamı |
---|---|
MB_ICONEXCLAMATION, MB_ICONWARNING |
Ünlem simge bir ileti kutusu görüntülenir. |
MB_ICONINFORMATION, MB_ICONASTERISK |
İleti kutusunda bir küçük harf ben bir daire içinde oluşan bir simge görünür. |
MB_ICONQUESTION | İleti kutusunda bir soru işareti simgesi görüntülenir. |
MB_ICONSTOP, MB_ICONERROR, MB_ICONHAND |
İleti kutusunda bir Dur işareti simgesi görüntülenir. |
Varsayılan düğme belirtmek için aşağıdaki bayraklardan birini belirtin:
Bayrak | Anlamı |
---|---|
MB_DEFBUTTON1 | İlk düğmesi varsayılan düğme değildir. MB_DEFBUTTON1 MB_DEFBUTTON2, MB_DEFBUTTON3 ya da MB_DEFBUTTON4 belirtilmediği sürece varsayılan değerdir. |
MB_DEFBUTTON2 | Ikinci düğmesi varsayılan düğme değildir. |
MB_DEFBUTTON3 | Üçüncü düğmesi varsayılan düğme değildir. |
MB_DEFBUTTON4 | Dördüncü düğmesi varsayılan düğme değildir. |
İletişim kutusunun modalite belirtmek için aşağıdaki bayraklardan birini belirtin:
Bayrak | Anlamı |
---|---|
MB_APPLMODAL | Kullanıcı, hWnd parametresi tarafından tanımlanan penceresinde çalışma devam etmeden önce İleti kutusuna yanıt vermelidir. Ancak, kullanıcı windows diğer iş parçacığı taşıyabilir ve bu windows eser. Windows uygulama hiyerarşi bağlı olarak, kullanıcı güçlü-e doğru diğer windows iş parçacığı içinde taşımak olabilir. Tüm alt pencereler ana ileti kutusunun otomatik olarak devre dışı bırakılır, ancak açılır pencereler değildir. Ne mb_systemmodal ne de mb_taskmodal belirtilmezse, varsayılan mb_applmodal kullanılır. |
MB_SYSTEMMODAL | Mb_applmodal ileti kutusu ws_ex_topmost stilde dışında aynı. Ciddi, potansiyel zararlı (örneğin, bellek yetersiz çalışan) hemen ilgilenilmesi gereken hataları kullanıcıya bildirmek için sistem kalıcı ileti kutularını kullanın. Bu bayrak kullanıcının windows dışındaki hWnd ile ilişkilendirilen etkileşim yeteneği üzerinde etkisi yoktur. |
MB_TASKMODAL | Aynı mb_applmodal hWnd parametresi null ise geçerli iş parçacığına ait tüm üst düzey windows devre dışı bırakılır. Arama uygulama veya kitaplığı kullanılabilir bir pencere işleyici yok ama hala başka iş parçacığı askıya olmadan arama akıştaki diğer windows giriş önlemek gereken bu bayrağı kullanın. |
Ayrıca, aşağıdaki bayraklar belirtebilirsiniz:
Bu bayrak ayarlanırsa, hWnd parametresi null olmalıdır. Bu kadar ileti kutusunda bir masaüstü masaüstü için hWnd ilgili farklı görünebilir.
Windows NT sürüm 4.0, MB_SERVICE_NOTIFICATION değeri değişti. Bkz. WINUSER.H eski ve yeni değerleri için. Windows NT 4.0, MessageBox ve MessageBoxExuygulanması yeni değer eski değer eşleyerek varolan Hizmetleri için geriye dönük uyumluluk sağlar. Bu eşleştirme yalnızca bağlayıcı, az 4.0 tarafından belirlenen bir sürüm numarasına sahip çalıştırılabilenler için yapılır.
MB_SERVICE_NOTIFICATION kullanır ve hem Windows NT 4.0 hem de Windows NT 3.x üzerinde çalışabilir bir hizmet oluşturmak için iki seçeneğiniz vardır.
|
nbsp; 2. Bağlantı Zamanı, sürüm 4.0 belirtin. Zamanında, sistem sürümü denetlemek için GetVersionEx işlevini kullanın. O zaman çalışan Windows &NT 3.x, Tarih MB_SERVICE_NOTIFICATION_NT3X; ve Windows NT 4.0 üzerinde MB_SERVICE_NOTIFICATION. |
İleti kutusu oluşturmak için yeterli bellek yoksa dönüş değeri sıfırdır.
İşlev başarılı olursa, dönüş değeri iletişim kutusu tarafından döndürülen aşağıdaki menü öğesi değerlerinden biridir:
Değer | Anlamı |
---|---|
IDABORT | Iptal düğmesi seçildi. |
IDCANCEL | İptal düğmesi seçildi. |
IDIGNORE | Yoksay düğmesini seçili. |
IDNO | Hayır düğmesi seçili. |
IDOK | Tamam düğmesi seçildi. |
IDRETRY | Yeniden Dene düğmesi seçildi. |
IDYES | Evet düğmesini seçildi. |
Bir ileti kutusu iptal düğmesi varsa, işlev esc tuşuna basıldığında veya İptal düğmesi seçiliyse, IDCANCEL değerini döndürür. İleti kutusunda hiçbir iptal düğmesi varsa, esc tuşuna basarak etkisi yoktur.
Sistem kalıcı ileti kutusu ne zaman kaynak yükleme denemesi başarısız olabilir çünkü dizeleri tarafından lpText işaret sistemi, bellek ve kaynak dosyadan, lpCaption parametreleri alınmamalıdır belirtmek için kullanın.
Uygulama MessageBox çağrısı ve uType parametresi için MB_ICONHAND ve mb_systemmodal bayrakları belirtir sistem kullanılabilir bellek bakmaksızın elde edilen ileti kutusu görüntüler. Bu bayraklar belirtilmediğinde, sistem üç satırlık ileti kutusu metin uzunluğunu sınırlar. Sistem değil uygun yerlerde hatları kesme satırbaşları ileti dize içermelidir böylece ileti kutusunda, ancak uygun satırları otomatik olarak kesme.
Bir iletişim kutusu mevcut iken bir ileti kutusu oluşturma iletişim kutusu tutamağını hWnd parametresi olarak kullanın. HWnd parametresi bir denetimi iletişim kutusundaki gibi bir alt pencereyi belirlemelidir değil.
Windows 95:Sistem-ebilmek çekmek en çok 16,364 pencere kolları.
Windows ce: Windows ce uType parametresi için aşağıdaki stiller desteklemiyor
MB_SYSTEMMODAL
MB_TASKMODAL
MB_HELP
MB_RIGHT
MB_RTLREADING
MB_DEFAULT_DESKTOP_ONLY
MB_SERVICE_NOTIFICATION
MB_USERICON.
Aşağıdaki dönüş değerleri desteklenmez:
IDCLOSE
IDHELP
nbsp; Windows &NT: sürüm 3.1 veya üstü gerektirir.
Windows:Windows 95 veya sonraki sürümleri gerektirir.
Windows ce:Sürüm 1.0 veya daha ilerisini gerektirir.
Header:WINUSER.h ilan etti.
İçe Library:User32.lib kullanın.
Unicode:Unicode ve ANSI sürümleri Windows ve Windows NT olarak uygulanır.
İletişim kutuları genel bakış, iletişim kutusundaki işlevler, FlashWindow, MessageBeep, MessageBoxEx, MessageBoxIndirect, SetForegroundWindow