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 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: