Aracılığıyla paylaş


MFC ActiveX Denetimleri: İyileştirme

Uyarı

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

Bu makalede, daha iyi performans için ActiveX denetimlerinizi iyileştirmek için kullanabileceğiniz teknikler açıklanmaktadır.

Önemli

ActiveX, yeni geliştirme için kullanılmaması gereken eski bir teknolojidir. ActiveX'in yerine geçen modern teknolojiler hakkında daha fazla bilgi için bkz. ActiveX Denetimleri.

GörünürKen Etkinleştir Seçeneğini Kapatma ve Etkin Değilken Fare Etkileşimi Sağlama konuları, etkinleştirilene kadar pencere oluşturmayan denetimleri ele alır. Penceresiz Etkinleştirme Sağlama konusu, etkinleştirildiğinde bile hiçbir zaman pencere oluşturmayan denetimleri ele alır.

Windows'un OLE nesneleri için iki önemli dezavantajı vardır: etkin olduğunda nesnelerin saydam veya nonrectangular olmasını engeller ve denetimlerin örneklenmesine ve görüntülenmesine büyük bir ek yük eklerler. Genellikle, pencere oluşturmak denetimin oluşturma süresinin yüzde 60'ını alır. Tek bir paylaşılan pencere (genellikle kapsayıcının) ve bazı dağıtım kodlarıyla denetim, genellikle performans kaybı olmadan aynı pencere hizmetlerini alır. Pencereye sahip olmak çoğunlukla nesne için gereksiz bir ek yük oluşturur.

Bazı iyileştirmeler, denetiminiz belirli kapsayıcılarda kullanıldığında performansı geliştirmez. Örneğin, 1996'dan önce yayımlanan kapsayıcılar penceresiz etkinleştirmeyi desteklemediğinden, bu özelliğin uygulanması eski kapsayıcılarda bir avantaj sağlamaz. Ancak, neredeyse her kapsayıcı kalıcılığı destekler, bu nedenle denetiminizin kalıcılık kodunu iyileştirmek büyük olasılıkla herhangi bir kapsayıcıdaki performansını artırır. Denetiminizin özel olarak belirli bir kapsayıcı türüyle kullanılması amaçlanıyorsa, bu iyileştirmelerden hangilerinin bu kapsayıcı tarafından desteklendiğini araştırmak isteyebilirsiniz. Ancak genel olarak, kontrolünüzün geniş bir kapsayıcı yelpazesinde olabildiğince iyi performans göstermesini sağlamak için bu tekniklerden belirli kontrolünüze uygulanabilecek olanları mümkün olduğunca çok uygulamaya çalışmalısınız.

Bu iyileştirmelerin çoğunu, Denetim Ayarları sayfasındaki MFC ActiveX Denetim Sihirbazı aracılığıyla uygulayabilirsiniz.

MFC ActiveX Denetim Sihirbazı OLE İyileştirme Seçenekleri

MFC ActiveX Denetim Sihirbazı'nda denetim ayarı Eylem Daha fazla bilgi
Görünür olduğunda etkinleştir onay kutusu Açık Görünür Olduğunda Etkinleştir seçeneğini kapatma
Penceresiz etkinleştirme onay kutusu Seç Penceresiz Etkinleştirme Sağlama
Kliplenmemiş cihaz bağlamı onay kutusu Seç Kesilmemiş Cihaz Bağlamı Kullanma
Titreşimsiz etkinleştirme onay kutusu Seç Flicker-Free Etkinleştirme sağlama
Fare işaretçisi devre dışıyken bildirimler onay kutusu Seç Etkin Değilken Fare Etkileşimi Sağlama
İyileştirilmiş çizim kodu onay kutusu Seç Denetim Çizimlerini İyi hale getirme

Bu iyileştirmeleri uygulayan üye işlevleri hakkında ayrıntılı bilgi için bkz. COleControl.

Daha fazla bilgi için bakınız:

Ayrıca bakınız

MFC ActiveX Denetimleri