CreateDialogIndirect

CreateDialogIndirect Makro iletişim kutusunda şablon bellekte kalıcı olmayan bir iletişim kutusu oluşturur. CreateDialogIndirect makrosu CreateDialogIndirectParam işlevini kullanır.

hwnd CreateDialogIndirect) HINSTANCE  HINSTANCE, / / işlemek için uygulama örneğilpcdlgtemplatelpTemplate, / / iletişim için İşaretçi kutu şablonuhwndhWndParent, / / ele sahip pencereyedlgproclpDialogFunc / / iletişim için İşaretçi kutu yordamı);
 

Parametreleri

hINSTANCE
İletişim kutusunu oluşturur modülü örneğini tanımlar.
lpTemplate
CreateDialogIndirect iletişim kutusu oluşturmak için kullandığı şablon içeren genel bellek nesnesi için işaretçi. İletişim kutusunda şablon iletişim kutusu denetimleri açıklanmaktadır veri bir veya daha fazla ek blokları ve ardından iletişim kutusunu tanımlayan bir başlık içerir. Şablon, standart veya genişletilmiş biçimi kullanabilirsiniz.

Standart bir şablonda başlık ek değişken uzunlukta diziler tarafından izlenen bir dlgtemplate yapısıdır. Her denetim için verileri ek değişken uzunlukta diziler tarafından izlenen bir DLGITEMTEMPLATE yapısı oluşur.

Bir genişletilmiş iletişim kutusunda Şablon başlığı dlgtemplateex biçimini kullanır ve kontrol tanımları DLGITEMTEMPLATEEX biçimini kullanın.

CreateDialogIndirect döndükten sonra yalnızca başlatan iletişim kutusunda almak için kullanılan şablon ücretsiz yapabilirsiniz.

hWndParent
İletişim kutusu sahibi pencereyi tanımlar.
lpDialogFunc
İşaretçiyi iletişim kutusunun prosedür. İletişim kutusu yordamı hakkında daha fazla bilgi için bkz: DialogProc.

Dönüş değerleri

İşlev başarılı olursa, dönüş iletişim kutusuna pencere tanıtıcısı değerdir.

İşlev başarısız olursa, dönüş değeri null olur. Genişletilmiş hata bilgilerini için GetLastError.

Açıklamalar

CreateDialogIndirect Makro iletişim kutusunu oluşturmak için CreateWindowEx işlevini kullanır. CreateDialogIndirect sonra iletişim kutusu yordama bir WM_INITDIALOG iletisi gönderir. ds_setfont stil şablonunu belirtir işlevi de wm_setfont ileti iletişim kutusunda yordama gönderir. WS_VISIBLE stil şablonunu belirten işlevi iletişim kutusunu görüntüler. Son olarak, CreateDialogIndirect iletişim kutusuna pencere tanıtıcısı döndürür.

CreateDialogIndirect döndükten sonra (bu zaten görünmüyorsa) iletişim kutusunu görüntülemek için ShowWindow işlevini kullanabilirsiniz. İletişim kutusu yok etmek için DestroyWindow işlevini kullanın.

Bir standart iletişim kutusu şablonunda, dlgtemplate yapısı ve her DLGITEMTEMPLATE yapıları dword sınırlarına hizalı gerekir. Şöyle bir DLGITEMTEMPLATE yapısı oluşturma veri dizisi de bir dword sınırında hizalı gerekir. Tüm değişken uzunlukta diziler şablonu word sınırları hizalı gerekir gerekir.

Genişletilmiş iletişim kutusu şablonunda, dlgtemplateex başlık ve her bir DLGITEMTEMPLATEEX kontrol tanımları dword sınırlarına hizalı gerekir. Herhangi bir DLGITEMTEMPLATEEX yapısı aşağıdaki de bir dword sınırında hizalı gerekir eğer oluşturma veri dizisi. Tüm değişken uzunlukta diziler şablonu word sınırları hizalı gerekir.

İletişim kutusunda Şablon başlıkları iletişim kutusu ve düğmeler gibi tüm karakter dizeleri Unicode dizeleri olmalıdır. Hem Windows NT hem de Windows üzerinde çalışan kod oluşturmak için bu Unicode dizeleri üretmek için MultiByteToWideChar işlevini kullanın.

Windows 95 ve sonraki sürümler:Sistem, en çok 255 denetimleri iletişim kutusunda şablonu başına destekleyebilir. İletişim kutusu içinde 255'ten fazla denetimleri yerleştirmek için denetimler onları koyarak şablon yerine WM_INITDIALOG ileti işleyicisi oluşturun.

Windows ce: . LpTemplate parametresi tarafından başvurulan iletişim şablonda dlgtemplate yapısındaki tüm stilleri desteklenir

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 NT olarak uygulanır.

Ayrıca bkz:

İletişim kutuları genel bakış, iletişim kutusundaki işlevler, CreateDialog, CreateDialogIndirectParam, CreateDialogParam, CreateWindowEx, DestroyWindow, DialogProc, DLGITEMTEMPLATE, DLGITEMTEMPLATEEX, dlgtemplate, dlgtemplateex, MultiByteToWideChar, ShowWindow, WM_INITDIALOG, wm_setfont

Index