MessageBox

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);
 

Parametreleri

hWnd
Oluşturulacak ileti kutusunun sahibi pencereyi tanımlar. Bu parametre null ise, ileti kutusu hayır sahibi pencere vardır.
lpText
Görüntülenecek iletiyi içeren bir boş sonlandırılmış dize işaretçisi.
lpCaption
İletişim kutusunun başlık için kullanılan boş sonlandırılmış dize işaretçisi. Bu parametre null ise, varsayılan başlık hata kullanılır.
uType
İletişim kutusunun davranış ve içeriği belirler bit bayrakları kümesi belirtir. Bu parametre bayrakları aşağıdaki gruplar bayraklarını bir arada olabilir.

İ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:

MB_DEFAULT_DESKTOP_ONLY
Şu anda giriş alan Masaüstü varsayılan masaüstü olmalıdır; Aksi durumda, işlev başarısız olur. Bir kullanıcı oturum açtıktan sonra uygulamanın çalıştığı bir varsayılan masaüstü olduğunu.
MB_HELP
Mesaj kutusuna bir Yardım düğmesi ekler. Yardım düğmesini seçerek veya F1 tuşuna basarak Yardım olayı oluşturur.
MB_RIGHT
Metni sağa hizalama.
MB_RTLREADING
İbranice ve Arapça sistemlerde sağdan sola okuma düzeni kullanarak ileti ve resim yazısı metnini görüntüler.
MB_SETFOREGROUND
İleti kutusunun ön pencere olur. Dahili sistem ileti kutusu için SetForegroundWindow işlevini çağırır.
MB_TOPMOST
İleti kutusu ws_ex_topmost pencere stili ile oluşturulur.
MB_SERVICE_NOTIFICATION
Windows NT: Arayan, olay kullanıcı bildiren bir servistir. İşlev hiçbir kullanıcının bilgisayarda oturum açmış olsa bile geçerli etkin masaüstü, bir ileti kutusu görüntüler.

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.
  1. Link-anda 4.0'den küçük olan bir sürüm numarası belirtin; veya
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.

MB_SERVICE_NOTIFICATION_NT3X
Windows NT: Bu değer MB_SERVICE_NOTIFICATION için Windows NT sürüm 3.51 tanımlanan değere karşılık gelir.

Dönüş değerleri

İ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.

Açıklamalar

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

QuickInfo

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.

Ayrıca bkz:

İletişim kutuları genel bakış, iletişim kutusundaki işlevler, FlashWindow, MessageBeep, MessageBoxEx, MessageBoxIndirect, SetForegroundWindow

Index