Uygulamanızda Özellik Sayfalarını Kullanma

Uyarı

Microsoft Foundation Sınıfları (MFC) kitaplığına destek verilmeye devam ediliyor. Ancak artık özellik eklemeyeceğiz veya belgeleri güncelleştirmeyeceğiz.

Uygulamanızda özellik sayfası kullanmak için aşağıdaki adımları tamamlayın:

  1. Her özellik sayfası için bir iletişim kutusu şablon kaynağı oluşturun. Kullanıcının bir sayfadan diğerine geçebileceğini unutmayın, bu nedenle her sayfayı mümkün olduğunca tutarlı bir şekilde yerleştirebilirsiniz.

    Tüm sayfaların iletişim kutusu şablonlarının aynı boyutta olması gerekmez. Çerçeve, özellik sayfalarının ne kadar alan kaplayacağını belirlemek için en büyük sayfanın boyutunu kullanır.

    Bir özellik sayfası için iletişim kutusu şablonu kaynağı oluşturduğunuzda, İletişim Kutusu Özellikleri özellik sayfasında aşağıdaki stilleri belirtmeniz gerekir:

    • Genel sayfasındaki Resim Yazısı düzenleme kutusunu, bu sayfanın sekmesinde görünmesini istediğiniz metne ayarlayın.

    • Stiller sayfasındaki Stil liste kutusunu Çocuk olarak ayarlayın.

    • Tarzlar sayfasındaki Kenarlık liste kutusunu İnce olarak seçin.

    • Stiller sayfasındaki Başlık Çubuğu onay kutusunun seçili olduğundan emin olun.

    • Diğer Stiller sayfasındaki Devre Dışı onay kutusunun seçili olduğundan emin olun.

  2. Her bir özellik sayfası iletişim kutusu şablonuna karşılık gelen CPropertyPage sınıfından türetilmiş bir sınıf oluşturun. Bkz. Sınıf Ekleme. Temel sınıf olarak seçin CPropertyPage .

  3. Bu özellik sayfasının değerlerini tutmak için üye değişkenleri oluşturun. Özellik sayfası özel bir iletişim kutusu olduğundan, özellik sayfasına üye değişkenleri ekleme işlemi, iletişim kutusuna üye değişkenleri ekleme işlemiyle tamamen aynıdır. Daha fazla bilgi için bkz. İletişim Kutusu Denetimleri için Üye Değişkenlerini Tanımlama.

  4. Kaynak kodunuzda bir CPropertySheet nesnesi oluşturma. Genellikle, özellik sayfasını görüntüleyen komut için işleyicide CPropertySheet nesnesini oluşturursunuz. Bu nesne özellik sayfasının tamamını temsil eder. DoModal işleviyle kalıcı bir özellik sayfası oluşturursanız, çerçeve varsayılan olarak üç komut düğmesi sağlar: Tamam, İptal ve Uygula. Çerçeve, Create işleviyle oluşturulan modsuz özellik sayfaları için komut düğmesi oluşturmaz. Başka denetimler (önizleme penceresi gibi) eklemek veya modeless özellik sayfası görüntülemek istemediğiniz sürece öğesinden CPropertySheet bir sınıf türetmeniz gerekmez. Bu adım, özellik sayfasını kapatmak için kullanılabilecek varsayılan denetimler içermediğinden, modsuz özellik sayfaları için gereklidir.

  5. Özellik sayfasına eklenecek her sayfa için aşağıdakileri yapın:

    • Bu işlemde daha önce oluşturduğunuz her CPropertyPagetüretilmiş sınıf için bir nesne oluşturun.

    • Her sayfa için CPropertySheet::AddPage'i çağır.

    Genellikle, CPropertySheet nesnesini oluşturan nesne, bu adımda CPropertyPage nesnelerini de oluşturur. Ancak, bir CPropertySheet türetilmiş sınıf uygularsanız, CPropertyPage nesnelerini CPropertySheet nesnesine ekleyebilir ve her sayfa için AddPage türetilmiş sınıf oluşturucusundan CPropertySheet çağrısı yapabilirsiniz. AddPage CPropertyPage nesneyi özellik sayfasının sayfa listesine ekler, ancak bu sayfanın penceresini oluşturmaz. Bu nedenle, özellik sayfası penceresinin yaratılmasını beklemeden AddPage çağrılabilir; özellik sayfasının oluşturucusundan AddPage çağırabilirsiniz.

    Varsayılan olarak, özellik sayfasında özellik sayfasının tek bir satırına sığmayacak kadar çok sekme varsa, sekmeler birden çok satıra yığılır. Yığınlamayı devre dışı bırakmak için CPropertySheet::EnableStackedTabs'ı çağırın ve parametresi FALSE olarak ayarlayın. Özellik sayfasını oluştururken EnableStackedTabs aramalısınız.

  6. Özellik sayfasını görüntülemek için CPropertySheet::D oModal veya Create öğesini çağırın. Özellik sayfasını modu iletişim kutusu olarak oluşturmak için DoModal çağırın. Özellik sayfasını modsuz bir iletişim kutusu olarak oluşturmak için Oluştur'u çağırın.

  7. Özellik sayfaları ile özellik dosyasının sahibi arasında veri alışverişi. Bu, Veri Alışverişi makalesinde açıklanmıştır.

Özellik sayfalarının nasıl kullanılacağına ilişkin bir örnek için bkz. MFC Genel örneği PROPDLG.

Ayrıca bakınız

Özellik Sayfaları