Türetilen pencere sınıfları
Windows'u doğrudan uygulamasından oluşturabilir veya öğesinden CWnd
CWnd
yeni pencere sınıfları türetebilirsiniz. Genellikle kendi özel pencerelerinizi bu şekilde oluşturursunuz. Ancak, bir çerçeve programında kullanılan pencerelerin çoğu bunun yerine MFC tarafından sağlanan türetilmiş çerçeve penceresi sınıflarından birinden CWnd
oluşturulur.
Çerçeve penceresi sınıfları
CFrameWnd
Tek bir belgeyi ve görünümünü çerçeveleyen SDI çerçeve pencereleri için kullanılır. Çerçeve penceresi hem uygulamanın ana çerçeve penceresi hem de geçerli belgenin çerçeve penceresidir.
CMDIFrameWnd
MDI uygulamaları için ana çerçeve penceresi olarak kullanılır. Ana çerçeve penceresi, tüm MDI belge pencereleri için bir kapsayıcıdır ve menü çubuğunu onlarla paylaşır. MDI çerçeve penceresi, masaüstünde görüntülenen en üst düzey penceredir.
CMDIChildWnd
MDI ana çerçeve penceresinde açılan tek tek belgeler için kullanılır. Her belge ve görünümü, MDI ana çerçeve penceresinin içerdiği bir MDI alt çerçeve penceresiyle çerçevelenir. MDI alt penceresi tipik bir çerçeve penceresine benzer ancak masaüstünde oturmak yerine bir MDI çerçeve penceresinin içinde yer alır. Ancak MDI alt penceresinde kendi menü çubuğu yok. İçeren MDI çerçeve penceresinin menü çubuğunu paylaşması gerekir.
Daha fazla bilgi için bkz . Çerçeve pencereleri.
Türetilen diğer pencere sınıfları CWnd
Çerçeve pencerelerine ek olarak, windows'un diğer bazı ana kategorileri şunlardan CWnd
türetilir:
Görünümler:
Görünümler - türetilmiş sınıfCView
(veya türetilmiş sınıflarından biri) kullanılarakCWnd
oluşturulur. Görünüm belgeye eklenir ve belgeyle kullanıcı arasında aracı görevi görür. Görünüm, genellikle SDI çerçeve penceresinin veya MDI alt çerçeve penceresinin istemci alanını (veya istemci alanının bir araç çubuğu veya durum çubuğu tarafından kapsanmayan bölümünü) dolduran bir alt penceredir (MDI alt öğesi değildir).İletişim Kutuları:
İletişim kutuları - türetilmiş sınıfıCDialog
kullanılarakCWnd
oluşturulur.Formlar:
İletişim kutuları gibi iletişim kutusu şablon kaynaklarını temel alan form görünümleri ,CRecordView
veyaCDaoRecordView
sınıflarıCFormView
kullanılarak oluşturulur.Denetimler:
Düğmeler, liste kutuları ve birleşik giriş kutuları gibi denetimler, 'denCWnd
türetilen diğer sınıflar kullanılarak oluşturulur. Bkz. Denetim konuları.Denetim Çubukları:
Denetimler içeren alt pencereler. Örnek olarak araç çubukları ve durum çubukları verilebilir. Bkz. Denetim çubukları.
Pencere Sınıfı Hiyerarşisi
MFC Başvurusu'ndaki MFC hiyerarşi grafiğine bakın. Görünümler Belge/görünüm mimarisi bölümünde açıklanmıştır. İletişim kutuları, İletişim kutuları bölümünde açıklanmıştır.
Kendi Özel Amaçlı Pencere Sınıflarınızı Oluşturma
Sınıf kitaplığı tarafından sağlanan pencere sınıflarına ek olarak, özel amaçlı alt pencerelere ihtiyacınız olabilir. Böyle bir pencere oluşturmak için kendi CWnd
türetilmiş sınıfınızı oluşturun ve bir çerçevenin veya görünümün alt penceresi yapın. Çerçevenin bir belge çerçevesi penceresinin istemci alanının kapsamını yönettiğini unutmayın. İstemci alanının çoğu bir görünüm tarafından yönetilir, ancak denetim çubukları veya kendi özel pencereleriniz gibi diğer pencereler alanı görünümle paylaşabilir. Sınıflardaki CView
mekanizmalarla etkileşim kurmanız ve CControlBar
alt pencereleri çerçeve penceresinin istemci alanına konumlandırmanız gerekebilir.
Pencere oluşturma, pencere nesnelerinin ve bunların yönettiği pencerelerin oluşturulmasını açıklar.