Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Uyarı
Microsoft Foundation Sınıfları (MFC) kitaplığı desteklenmeye devam ediyor. Ancak artık özellik eklemeyeceğiz veya belgeleri güncelleştirmeyeceğiz.
Bu makale, bir kapsayıcıyı uygulama prosedürünü özetlemekte ve sizi kapsayıcıları uygulamak hakkında daha ayrıntılı açıklamalar sağlayan diğer makalelere yönlendirmektedir. Ayrıca uygulamak isteyebileceğiniz bazı isteğe bağlı OLE özelliklerini ve bu özellikleri açıklayan makaleleri listeler.
CWinApp sınıfından türetilmiş sınıfınızı hazırlamak için
Üye işlevinde
AfxOleInitçağırarak OLE kitaplıklarını başlatın.CDocTemplate::SetContainerInfoöğesiniInitInstanceiçinde arayarak eklenmiş bir öğe yerinde etkinleştirildiğinde kullanılacak menü ve hızlandırıcı kaynaklarını atayın. Bu konu hakkında daha fazla bilgi için bkz . Etkinleştirme.
Bu özellikler, bir kapsayıcı uygulaması oluşturmak için MFC Uygulama Sihirbazı'nı kullandığınızda sizin için otomatik olarak sağlanır. Bkz. MFC EXE Programı Oluşturma.
Görünüm sınıfınızı hazırlamak için
Seçili öğelere yönelik bir işaretçi veya birden çok seçimi destekliyorsanız işaretçi listesi tutarak seçili öğeleri izleyin. İşlevinizin
OnDrawtüm OLE öğelerini çizmesi gerekir.Kendisine iletilen öğenin şu anda seçili olup olmadığını denetlemek için
IsSelected'yı geçersiz kılın.OnInsertObjectiletişim kutusunu görüntülemek için bir ileti işleyicisi uygulayın.Görünümden odağı yerinde etkin OLE olarak eklenmiş bir öğeye aktarmak için bir ileti işleyicisi uygulayın.
OnSizeOLE gömülü bir öğeye, bulunduğu görünümün boyutundaki değişikliği yansıtacak şekilde dikdörtgenini değiştirmesi gerektiğini bildiren bir ileti işleyicisi uygulayın.
Bu özelliklerin uygulanması bir uygulamadan diğerine önemli ölçüde değiştiğinden, uygulama sihirbazı yalnızca temel bir uygulama sağlar. Uygulamanızın düzgün çalışması için bu işlevleri özelleştirmeniz gerekecektir. Bunun bir örneği için bkz. CONTAINER örneği.
Eklenmiş ve bağlı öğeleri işlemek için
COleClientItem'den bir sınıf türet. Bu sınıfın nesneleri, OLE belgenize eklenmiş veya bunlara bağlanmış öğeleri temsil eder.
OnChange,OnChangeItemPositionveOnGetItemPosition'yi geçersiz kılın. Bu işlevler ekli ve bağlı öğeleri boyutlandırma, konumlandırma ve değiştirme işlemlerini işler.
Uygulama sihirbazı, sizin için sınıfı türetecektir, ancak büyük olasılıkla OnChange ve önceki yordamda 2. adımda onunla birlikte listelenen diğer işlevleri de geçersiz kılmanız gerekebilir. Bu işlevler bir uygulamadan diğerine farklı şekilde uygulandığından, iskelet uygulamaların çoğu için özelleştirilmesi gerekir. Bunun örnekleri için bkz . DRAWCLI ve CONTAINER MFC örnekleri.
OLE'yi desteklemek için kapsayıcı uygulamasının menü yapısına bir dizi öğe eklemeniz gerekir. Bunlar hakkında daha fazla bilgi için Menüler ve Kaynaklar: Kapsayıcı Eklentileri'ne başvurun.
Kapsayıcı uygulamanızda aşağıdaki özelliklerden bazılarını da desteklemek isteyebilirsiniz:
Katıştırılmış öğeyi düzenlerken yerinde etkinleştirme.
Daha fazla bilgi için bkz . Etkinleştirme.
Bir sunucu uygulamasından seçimi sürükleyip bırakarak OLE öğelerinin oluşturulması.
OLE sürükle ve bırak hakkında daha fazla bilgi edinmek için, bkz.
Katıştırılmış nesnelere veya karma kapsayıcı/sunucu uygulamalarına bağlantılar.
Daha fazla bilgi için bkz . Kapsayıcılar: Gelişmiş Özellikler.