Eski stil iletişim kutularını özelleştirme

Bir eski stil veya farklı Kaydet iletişim kutusunda, iletileri veya bildirimleri varsayılan iletişim kutusunu yordamı için amaçlanan aldığı bir OFNHookProcOldStyle kanca işlemi sağlayarak özelleştirebilirsiniz. Ayrıca, yerine varsayılan şablonu kullanmak için özel bir şablon sağlayabilirsiniz. Kanca usul ve eski stil iletişim kutularında kullanılan Şablonlar ortak iletişim kutusu ile kullanılan benzer. Daha fazla bilgi için bkz: Hook yordamlar için ortak iletişim kutusu ve Özel şablonlar.

Eski stil veya Farklı Kaydet iletişim kutusunda bir kanca işlemi etkinleştirmek için iletişim kutusunu oluşturduğunuzda OPENDOSYAADI yapısını kullanır. Bayrakları üye ofn_enablehook bayrağını ayarlayın ve lpfnHook üye OFNHookProcOldStyle kanca işlemi adresini belirtin. İletişim kutusu yordamı WM_INITDIALOG ileti gönderir kancası yordamı ile lParam parametresinin OPENDOSYAADI Yapısı iletişim kutusu başlatmak için kullanılan adres olarak ayarlayın.

OPENDOSYAADI yapısı, yerine varsayılan şablonu kullanmak veya farklı Kaydet iletişim kutusu için özel bir şablon belirtmek için kullanabilirsiniz. Özel şablonunuza kaynak uygulamada veya dinamik bağlantı kitaplığı bayrakları üye ofn_enabletemplate bayrağı ayarlanmış ve yapısını HINSTANCE ve lpTemplateName üyeleri modül ve kaynak adını belirlemek için kullanın. Özel şablonunuzu bellekte ise, ofn_enabletemplatehandle bayrağını ayarlayın ve HINSTANCE üye şablonu içeren bellek nesnesi tanımlamak için kullanılır. FILEOPEN içinde belirtilen varsayılan şablonu değiştirerek özel bir şablon oluşturun.dlg dosyasını. Varsayılan olarak kullanılan kontrol tanımlayıcıları Bul ve Değiştir iletişim şablonları dlgs tanımlanır.H dosyası.

Varsayılan olarak, GetOpenFileName ve GetSaveFileName işlevleri Explorer tarzı iletişim kutuları görüntüler. Eski stil iletişim kutusunu görüntülemek isterseniz, bir OFNHookProcOldStyle kanca işlemi sağlar ve ofn_explorer bayrağı OPENDOSYAADI yapısını bayrakları üyesi ayarlanmamış sağlamak.

Ofn_explorer bayrağı ayarlarsanız, sistem bir kanca işlemi veya özel bir şablon bir Explorer stilinde özelleştirilmesi gibi davranır. Bir Explorer Stili iletişim kutusunu özelleştirme hakkında daha fazla bilgi için bkz: Explorer tarzı özel şablonları.

Index