Aracılığıyla paylaş


COleControl Sınıfı

OLE denetimleri geliştirmek için güçlü bir temel sınıf.

Sözdizimi

class COleControl : public CWnd

Üyeler

Ortak Oluşturucular

Veri Akışı Adı Açıklama
COleControl::COleControl Bir COleControl nesnesi oluşturur.

Genel Yöntemler

Veri Akışı Adı Açıklama
COleControl::AmbientAppearance Denetimin geçerli görünümünü alır.
COleControl::AmbientBackColor Ortam BackColor özelliğinin değerini döndürür.
COleControl::AmbientDisplayName Kapsayıcı tarafından belirtilen denetimin adını döndürür.
COleControl::AmbientFont Ortam Yazı Tipi özelliğinin değerini döndürür.
COleControl::AmbientForeColor Ortam ForeColor özelliğinin değerini döndürür.
COleControl::AmbientLocaleID Kapsayıcının yerel ayar kimliğini döndürür.
COleControl::AmbientScaleUnits Kapsayıcı tarafından kullanılan birim türünü döndürür.
COleControl::AmbientShowGrabHandles Tutma tutamaçlarının görüntülenip görüntülenmediğini belirler.
COleControl::AmbientShowHatching Taramanın görüntülenmesi gerekip gerekmediğini belirler.
COleControl::AmbientTextAlign Kapsayıcı tarafından belirtilen metin hizalama türünü döndürür.
COleControl::AmbientUIDead Denetimin kullanıcı arabirimi eylemlerine yanıt vermesi gerekip gerekmediğini belirler.
COleControl::AmbientUserMode Kapsayıcının modunu belirler.
COleControl::BoundPropertyChanged Kapsayıcıya bir ilişkili özelliğin değiştirildiğini bildirir.
COleControl::BoundPropertyRequestEdit Özellik değerini düzenlemek için izin istemektedir.
COleControl::ClientToParent Denetimin kaynağına göre bir noktayı kapsayıcısının kaynağına göre bir noktaya çevirir.
COleControl::ClipCaretRect Bir denetimle çakışıyorsa bir şapka işareti dikdörtgeni ayarlar.
COleControl::ControlInfoChanged Denetim tarafından işlenen anımsatıcı kümesi değiştikten sonra bu işlevi çağırın.
COleControl::D isplayError Hisse senedi Hata olaylarını denetimin kullanıcısına görüntüler.
COleControl::D oClick Stok DoClick yönteminin uygulanması.
COleControl::D oPropExchange Bir COleControl nesnenin özelliklerini serileştirir.
COleControl::D oSuperclassPaint Windows denetiminden alt sınıflanmış bir OLE denetimini yeniden çizer.
COleControl::EnableSimpleFrame Denetim için basit çerçeve desteğini etkinleştirir.
COleControl::ExchangeExtent Denetimin genişliğini ve yüksekliğini serileştirir.
COleControl::ExchangeStockProps Denetimin stok özelliklerini serileştirir.
COleControl::ExchangeVersion Denetimin sürüm numarasını serileştirir.
COleControl::FireClick Hisse senedi Click olayını tetikler.
COleControl::FireDblClick Hisse senedi DblClick olayını tetikler.
COleControl::FireError Hisse senedi Error olayını tetikler.
COleControl::FireEvent Özel bir olay başlatır.
COleControl::FireKeyDown Hisse senedi KeyDown olayını tetikler.
COleControl::FireKeyPress Hisse senedi KeyPress olayını tetikler.
COleControl::FireKeyUp Hisse senedi KeyUp olayını tetikler.
COleControl::FireMouseDown Hisse senedi MouseDown olayını tetikler.
COleControl::FireMouseMove Hisse senedi MouseMove olayını tetikler.
COleControl::FireMouseUp Hisse senedi MouseUp olayını tetikler.
COleControl::FireReadyStateChange Denetimin hazır durumu değiştiğinde bir olayı tetikler.
COleControl::GetActivationPolicy Arabirimi destekleyen IPointerInactive bir denetimin varsayılan etkinleştirme davranışını değiştirir.
COleControl::GetAmbientProperty Belirtilen ortam özelliğinin değerini döndürür.
COleControl::GetAppearance Hisse senedi Görünümü özelliğinin değerini döndürür.
COleControl::GetBackColor Stok BackColor özelliğinin değerini döndürür.
COleControl::GetBorderStyle Stock BorderStyle özelliğinin değerini döndürür.
COleControl::GetCapture Penceresiz, etkinleştirilmiş bir denetim nesnesinin fare yakalamasına sahip olup olmadığını belirler.
COleControl::GetClassID Denetimin OLE sınıf kimliğini alır.
COleControl::GetClientOffset Denetimin dikdörtgen alanının sol üst köşesi ile istemci alanının sol üst köşesi arasındaki farkı alır.
COleControl::GetClientRect Denetimin istemci alanının boyutunu alır.
COleControl::GetClientSite İşaretçi için bir nesneyi kapsayıcısı içindeki geçerli istemci sitesine sorgular.
COleControl::GetControlFlags Denetim bayrağı ayarlarını alır.
COleControl::GetControlSize OLE denetiminin konumunu ve boyutunu döndürür.
COleControl::GetDC Kapsayıcısından cihaz bağlamı almak için penceresiz denetim için bir araç sağlar.
COleControl::GetEnabled Hisse senedi Etkin özelliğinin değerini döndürür.
COleControl::GetExtendedControl Kapsayıcıya ait genişletilmiş denetim nesnesinin işaretçisini alır.
COleControl::GetFocus Denetimin odakta olup olmadığını belirler.
COleControl::GetFont Hisse senedi Yazı Tipi özelliğinin değerini döndürür.
COleControl::GetFontTextMetrics Bir CFontHolder nesnenin ölçümlerini döndürür.
COleControl::GetForeColor Stok ForeColor özelliğinin değerini döndürür.
COleControl::GetHwnd Hisse senedi hWnd özelliğinin değerini döndürür.
COleControl::GetMessageString Menü öğesi için durum çubuğu metni sağlar.
COleControl::GetNotSupported Kullanıcının denetimin özellik değerine erişimini engeller.
COleControl::GetReadyState Denetimin hazır olma durumunu döndürür.
COleControl::GetRectInContainer Denetimin kapsayıcısına göre dikdörtgenini döndürür.
COleControl::GetStockTextMetrics Stok Yazı Tipi özelliğinin ölçümlerini döndürür.
COleControl::GetText Hisse senedi Metin veya Resim Yazısı özelliğinin değerini döndürür.
COleControl::GetWindowlessDropTarget Penceresiz denetimin sürükle ve bırak işlemlerinin hedefi olmasına izin vermek için geçersiz kılın.
COleControl::InitializeIIDs Denetimin kullanacağı IID'lerin temel sınıfını bildirir.
COleControl::InternalGetFont Stok Font özelliği için bir CFontHolder nesne döndürür.
COleControl::InternalGetText Stock Caption veya Text özelliğini alır.
COleControl::InternalSetReadyState Denetimin hazır olma durumunu ayarlar ve ready-state-change olayını başlatır.
COleControl::InvalidateControl Görüntülenen denetimin bir alanını geçersiz kılır ve yeniden çizilmesine neden olur.
COleControl::InvalidateRgn Kapsayıcı penceresinin belirtilen bölge içindeki istemci alanını geçersiz kılabilir. Bölgedeki penceresiz denetimleri yeniden çizmek için kullanılabilir.
COleControl::IsConvertingVBX OLE denetiminin özel yüklenmesine izin verir.
COleControl::IsModified Denetim durumunun değişip değişmediğini belirler.
COleControl::IsOptimizedDraw Kapsayıcının geçerli çizim işlemi için iyileştirilmiş çizimi destekleyip desteklemediğini gösterir.
COleControl::IsSubclassedControl Denetimin bir Windows denetimini alt sınıfa eklenip sınıflandırmadığını belirlemek için çağrılır.
COleControl::Load Önceki zaman uyumsuz verileri sıfırlar ve denetimin zaman uyumsuz özelliğinin yeni yükünü başlatır.
COleControl::LockInPlaceActive Denetiminizin kapsayıcı tarafından devre dışı bırakılıp devre dışı bırakılamadığını belirler.
COleControl::OnAmbientPropertyChange Ortam özelliği değiştirildiğinde çağrılır.
COleControl::OnAppearanceChanged Hisse senedi Görünümü özelliği değiştirildiğinde çağrılır.
COleControl::OnBackColorChanged Stok BackColor özelliği değiştirildiğinde çağrılır.
COleControl::OnBorderStyleChanged Stock BorderStyle özelliği değiştirildiğinde çağrılır.
COleControl::OnClick Stok Click olayını tetiklemek için çağrıldı.
COleControl::OnClose Çağrılan denetimi bildirir IOleControl::Close .
COleControl::OnDoVerb Bir denetim fiili yürütüldükten sonra çağrılır.
COleControl::OnDraw Bir denetimin kendisini yeniden çizmesi istendiğinde çağrılır.
COleControl::OnDrawMetafile Bir denetimin meta dosyası cihaz bağlamını kullanarak kendisini yeniden çizmesi istendiğinde kapsayıcı tarafından çağrılır.
COleControl::OnEdit Ui Ole denetimini etkinleştirmek için kapsayıcı tarafından çağrılır.
COleControl::OnEnabledChanged Hisse senedi Etkin özelliği değiştirildiğinde çağrılır.
COleControl::OnEnumVerbs Bir denetimin fiillerini listelemek için kapsayıcı tarafından çağrılır.
COleControl::OnEventAdvise Olay işleyicileri bir denetime bağlandığında veya bağlantısı kesildiğinde çağrılır.
COleControl::OnFontChanged Hisse senedi Yazı Tipi özelliği değiştirildiğinde çağrılır.
COleControl::OnForeColorChanged Stok ForeColor özelliği değiştirildiğinde çağrılır.
COleControl::OnFreezeEvents Denetimin olayları dondurulduğunda veya dondurulmadığında çağrılır.
COleControl::OnGetColorSet Çağrılan denetimi bildirir IOleObject::GetColorSet .
COleControl::OnGetControlInfo Kapsayıcıya anımsatıcı bilgiler sağlar.
COleControl::OnGetDisplayString Bir özellik değerini temsil eden bir dize almak için çağrılır.
COleControl::OnGetInPlaceMenu Kapsayıcı menüsüyle birleştirilecek denetimin menüsünün tutamacını istemektedir.
COleControl::OnGetNaturalExtent Denetimin önerilen boyuta en yakın görüntü boyutunu almak için geçersiz kılın ve örneğin çadır modu.
COleControl::OnGetPredefinedStrings Bir özellik için olası değerleri temsil eden dizeleri döndürür.
COleControl::OnGetPredefinedValue Önceden tanımlanmış bir dizeye karşılık gelen değeri döndürür.
COleControl::OnGetViewExtent Denetimin görüntüleme alanlarının boyutunu almak için geçersiz kılın (iki geçişli çizimi etkinleştirmek için kullanılabilir).
COleControl::OnGetViewRect Denetimin boyutunu belirli bir konumdan başlayarak dikdörtgene dönüştürmek için geçersiz kılın.
COleControl::OnGetViewStatus Denetimin görünüm durumunu almak için geçersiz kılın.
COleControl::OnHideToolBars Denetim kullanıcı arabirimi devre dışı bırakıldığında kapsayıcı tarafından çağrılır.
COleControl::OnInactiveMouseMove Fare işaretçisinin altındaki etkin olmayan denetim kapsayıcısının denetime ileti WM_MOUSEMOVE göndermesini sağlamak için geçersiz kılın.
COleControl::OnInactiveSetCursor Fare işaretçisinin altındaki etkin olmayan denetim kapsayıcısının denetime ileti WM_SETCURSOR göndermesini sağlamak için geçersiz kılın.
COleControl::OnKeyDownEvent Hisse senedi KeyDown olayı tetiklendikten sonra çağrılır.
COleControl::OnKeyPressEvent Stok KeyPress olayı tetiklendikten sonra çağrılır.
COleControl::OnKeyUpEvent Stok KeyUp olayı tetiklendikten sonra çağrılır.
COleControl::OnMapPropertyToPage Bir özelliği düzenlemek için hangi özellik sayfasının kullanılacağını gösterir.
COleControl::OnMnemonic Denetimin bir anımsatıcı tuşuna basıldığında çağrılır.
COleControl::OnProperties Denetimin "Özellikler" fiili çağrıldığında çağrılır.
COleControl::OnQueryHitPoint Denetimin görüntüsünün belirli bir noktayla çakışıp çakışmadığını sorgulamak için geçersiz kılın.
COleControl::OnQueryHitRect Denetimin görüntüsünün belirli bir dikdörtgendeki herhangi bir noktayla çakışıp çakışmadığını sorgulamak için geçersiz kılın.
COleControl::OnRenderData Belirtilen biçimdeki verileri almak için çerçeve tarafından çağrılır.
COleControl::OnRenderFileData Belirtilen biçimdeki bir dosyadan veri almak için çerçeve tarafından çağrılır.
COleControl::OnRenderGlobalData Genel bellekten belirtilen biçimde veri almak için çerçeve tarafından çağrılır.
COleControl::OnResetState Denetimin özelliklerini varsayılan değerlere sıfırlar.
COleControl::OnSetClientSite Çağrılan denetimi bildirir IOleControl::SetClientSite .
COleControl::OnSetData Denetimin verilerini başka bir değerle değiştirir.
COleControl::OnSetExtent Denetimin kapsamı değiştikten sonra çağrılır.
COleControl::OnSetObjectRects Denetimin boyutları değiştirildikten sonra çağrılır.
COleControl::OnShowToolBars Denetim kullanıcı arabirimi etkinleştirildiğinde çağrılır.
COleControl::OnTextChanged Hisse senedi Metin veya Resim Yazısı özelliği değiştirildiğinde çağrılır.
COleControl::OnWindowlessMessage Penceresiz denetimler için pencere iletilerini (fare ve klavye iletileri dışında) işler.
COleControl::P arentToClient Kapsayıcının kaynağına göre bir noktayı denetimin kaynağına göre bir noktaya çevirir.
COleControl::P ostModalDialog Kapsayıcıya kalıcı bir iletişim kutusunun kapatıldığını bildirir.
COleControl::P reModalDialog Kapsayıcıya kalıcı bir iletişim kutusunun görüntülenmek üzere olduğunu bildirir.
COleControl::RecreateControlWindow Denetimin penceresini yok eder ve yeniden oluşturur.
COleControl::Refresh Denetimin görünümünü yeniden boyamaya zorlar.
COleControl::ReleaseCapture Fare yakalamayı serbest bırakır.
COleControl::ReleaseDC Penceresiz denetim kapsayıcısının görüntü cihazı bağlamını serbest bırakır.
COleControl::ReparentControlWindow Denetim penceresinin üst öğesini sıfırlar.
COleControl::ResetStockProps COleControl Hisse senedi özelliklerini varsayılan değerlerine başlatır.
COleControl::ResetVersion Sürüm numarasını belirli bir değere başlatır.
COleControl::ScrollWindow Penceresiz bir denetimin ekrandaki yerinde etkin görüntüsündeki bir alanı kaydırmasına izin verir.
COleControl::SelectFontObject Cihaz bağlamında özel bir Font özelliği seçer.
COleControl::SelectStockFont Stok Font özelliğini bir cihaz bağlamında seçer.
COleControl::SerializeExtent Denetim için görüntüleme alanını serileştirir veya başlatır.
COleControl::SerializeStockProps Hisse senedi özelliklerini serileştirir veya başlatır COleControl .
COleControl::SerializeVersion Denetimin sürüm bilgilerini serileştirir veya başlatır.
COleControl::SetAppearance Hisse senedi Görünümü özelliğinin değerini ayarlar.
COleControl::SetBackColor Stok BackColor özelliğinin değerini ayarlar.
COleControl::SetBorderStyle Stock BorderStyle özelliğinin değerini ayarlar.
COleControl::SetCapture Denetimin kapsayıcı penceresinin denetimin adına fare yakalamayı ele geçirmesine neden olur.
COleControl::SetControlSize OLE denetiminin konumunu ve boyutunu ayarlar.
COleControl::SetEnabled Hisse senedi Etkin özelliğinin değerini ayarlar.
COleControl::SetFocus Denetimin kapsayıcı penceresinin denetimin adına giriş odağını ele geçirmesine neden olur.
COleControl::SetFont Stok Font özelliğinin değerini ayarlar.
COleControl::SetForeColor Stok ForeColor özelliğinin değerini ayarlar.
COleControl::SetInitialSize Bir kapsayıcıda ilk kez görüntülendiğinde OLE denetiminin boyutunu ayarlar.
COleControl::SetModifiedFlag Denetimin değiştirilmiş durumunu değiştirir.
COleControl::SetNotPermitted Düzenleme isteğinin başarısız olduğunu gösterir.
COleControl::SetNotSupported Denetimin özellik değerinde kullanıcı tarafından değişiklik yapılmasını engeller.
COleControl::SetRectInContainer Denetimin dikdörtgenini kapsayıcısına göre ayarlar.
COleControl::SetText Hisse senedi Metin veya Resim Yazısı özelliğinin değerini ayarlar.
COleControl::ThrowError OLE denetiminde hata oluştuğuna dair sinyaller.
COleControl::TransformCoords Bir kapsayıcı ile denetim arasındaki koordinat değerlerini dönüştürür.
COleControl::TranslateColor bir OLE_COLOR değerini COLORREF değerine dönüştürür.
COleControl::WillAmbientsBeValidDuringLoad Denetimin bir sonraki yüklendiğinde ortam özelliklerinin kullanılabilir olup olmayacağını belirler.
COleControl::WindowProc Bir nesne için COleControl bir Windows yordamı sağlar.

Korumalı Yöntemler

Veri Akışı Adı Açıklama
COleControl::D rawContent Denetimin görünümünün güncelleştirilmesi gerektiğinde çerçeve tarafından çağrılır.
COleControl::D rawMetafile Meta dosyası cihaz bağlamı kullanılırken çerçeve tarafından çağrılır.
COleControl::IsInvokeAllowed Otomasyon yöntemi çağırmayı etkinleştirir.
COleControl::SetInitialDataFormats Denetim tarafından desteklenen veri biçimleri listesini başlatmak için çerçeve tarafından çağrılır.

Açıklamalar

öğesinden CWndtüretilen bu sınıf, bir Windows pencere nesnesinin tüm işlevlerinin yanı sıra OLE'ye özgü olay tetikleme ve yöntemleri ve özellikleri destekleme gibi ek işlevleri devralır.

OLE denetimleri OLE kapsayıcı uygulamalarına eklenebilir ve kapsayıcıya olay tetikleme ve yöntemleri ve özelliklerin iki yönlü bir sistemi kullanılarak kapsayıcıyla iletişim kurabilir. Standart OLE kapsayıcılarının yalnızca ole denetiminin temel işlevlerini desteklediğini unutmayın. Bir OLE denetiminin genişletilmiş özelliklerini destekleyemezler. Olay tetikleme, denetimde gerçekleşen belirli eylemlerin bir sonucu olarak olaylar kapsayıcıya gönderildiğinde gerçekleşir. Buna karşılık kapsayıcı, C++ sınıfının üye işlevlerine ve veri üyelerine benzer bir dizi yöntem ve özellik kullanarak denetimle iletişim kurar. Bu yaklaşım, geliştiricinin denetimin görünümünü denetlemesini ve belirli eylemler gerçekleştiğinde kapsayıcıyı bilgilendirmesini sağlar.

Penceresiz Denetimler

OLE denetimleri, pencere olmadan yerinde etkin olarak kullanılabilir. Penceresiz denetimlerin önemli avantajları vardır:

  • Penceresiz denetimler saydam ve dikdörtgen olmayan olabilir

  • Penceresiz denetimler nesnenin örnek boyutunu ve oluşturma süresini küçültür

Denetimlerin pencereye ihtiyacı yoktur. Bir pencerenin sunduğu hizmetler tek bir paylaşılan pencere (genellikle kapsayıcının) ve bir miktar gönderme kodu aracılığıyla kolayca sağlanabilir. Pencere olması çoğunlukla nesne üzerinde gereksiz bir komplikasyondur.

Penceresiz etkinleştirme kullanıldığında kapsayıcı (penceresi olan) denetimin kendi penceresi tarafından aksi takdirde sağlanmış olabilecek hizmetleri sağlamakla sorumludur. Örneğin, denetiminizin klavye odağını sorgulaması, fare yakalamasını sorgulaması veya cihaz bağlamını alması gerekiyorsa, bu işlemler kapsayıcı tarafından yönetilir. COleControl Penceresiz işlem üye işlevleri kapsayıcıda bu işlemleri çağırır.

Penceresiz etkinleştirme etkinleştirildiğinde kapsayıcı, girdi iletilerini denetimin IOleInPlaceObjectWindowless arabirimine (penceresiz destek için IOleInPlaceObject uzantısı) devreder. COleControl'nin bu arabirimi uygulaması, fare koordinatlarını uygun şekilde ayarladıktan sonra bu iletileri denetiminizin ileti haritası aracılığıyla dağıtacaktır. Bu iletileri normal pencere iletileri gibi, ilgili girişleri ileti eşlemesine ekleyerek işleyebilirsiniz.

Penceresiz bir denetimde, her zaman ilgili CWnd üye işlevleri veya ilgili Windows API işlevleri yerine üye işlevlerini kullanmanız COleControl gerekir.

OLE denetimi nesneleri de yalnızca etkin olduklarında bir pencere oluşturabilir, ancak etkin olmayan-etkin olmayan geçiş için gereken çalışma miktarı artırılıp geçişin hızı düşer. Bunun bir sorun olduğu durumlar vardır: örnek olarak, metin kutularının kılavuzlarını göz önünde bulundurun. Sütun boyunca yukarı ve aşağı imleç oluştururken her denetimin yerinde etkinleştirilmesi ve ardından devre dışı bırakılması gerekir. Etkin olmayan/etkin geçişin hızı kaydırma hızını doğrudan etkiler.

OLE denetim çerçevesi geliştirme hakkında daha fazla bilgi için MFC ActiveX Denetimleri ve Genel Bakış: MFC ActiveX Denetim Programı Oluşturma makalelerine bakın. Penceresiz ve titreşimsiz denetimler de dahil olmak üzere OLE denetimlerini iyileştirme hakkında bilgi için bkz . MFC ActiveX Denetimleri: İyileştirme.

Devralma Hiyerarşisi

CObject

CCmdTarget

CWnd

COleControl

Gereksinimler

Üst bilgi: afxctl.h

COleControl::AmbientBackColor

Ortam BackColor özelliğinin değerini döndürür.

OLE_COLOR AmbientBackColor();

Dönüş Değeri

Varsa kapsayıcının ortam BackColor özelliğinin geçerli değeri. Özelliği desteklenmiyorsa, bu işlev sistem tanımlı Windows arka plan rengini döndürür.

Açıklamalar

Ortam BackColor özelliği tüm denetimlerde kullanılabilir ve kapsayıcı tarafından tanımlanır. Kapsayıcının bu özelliği desteklemek için gerekli olmadığını unutmayın.

COleControl::AmbientDisplayName

Kapsayıcının denetime atadığı ad, kullanıcıya görüntülenen hata iletilerinde kullanılabilir.

CString AmbientDisplayName();

Dönüş Değeri

OLE denetiminin adı. Varsayılan değer sıfır uzunluklu bir dizedir.

Açıklamalar

Kapsayıcının bu özelliği desteklemek için gerekli olmadığını unutmayın.

COleControl::AmbientFont

Ortam Yazı Tipi özelliğinin değerini döndürür.

LPFONTDISP AmbientFont();

Dönüş Değeri

Kapsayıcının ortam Yazı Tipi dağıtım arabirimine bir işaretçi. Varsayılan değer NULL'dir. Dönüş NULL'a eşit değilse, IUnknown::Release üye işlevini çağırarak yazı tipini serbest bırakmak sizin sorumluluğundadır.

Açıklamalar

ambient Font özelliği kapsayıcı tarafından tanımlanır ve tüm denetimler tarafından kullanılabilir. Kapsayıcının bu özelliği desteklemek için gerekli olmadığını unutmayın.

COleControl::AmbientForeColor

Ortam ForeColor özelliğinin değerini döndürür.

OLE_COLOR AmbientForeColor();

Dönüş Değeri

Varsa kapsayıcının ortam ForeColor özelliğinin geçerli değeri. Desteklenmiyorsa, bu işlev sistem tanımlı Windows metin rengini döndürür.

Açıklamalar

Ambient ForeColor özelliği tüm denetimlerde kullanılabilir ve kapsayıcı tarafından tanımlanır. Kapsayıcının bu özelliği desteklemek için gerekli olmadığını unutmayın.

COleControl::AmbientLocaleID

Kapsayıcının yerel ayar kimliğini döndürür.

LCID AmbientLocaleID();

Dönüş Değeri

Varsa kapsayıcının LocaleID özelliğinin değeri. Bu özellik desteklenmiyorsa, bu işlev 0 döndürür.

Açıklamalar

Denetim, kullanıcı arabirimini belirli yerel ayarlara uyarlamak için LocaleID kullanabilir. Kapsayıcının bu özelliği desteklemek için gerekli olmadığını unutmayın.

COleControl::AmbientAppearance

Denetim nesnesi için geçerli görünüm ayarını alır.

short AmbientAppearance();

Dönüş Değeri

Denetimin görünümü:

  • 0 Düz görünüm

  • 1 3B görünüm

Açıklamalar

Denetimin DISPID_AMBIENT_APPEARANCE özelliğinin geçerli değerini almak için bu işlevi çağırın.

COleControl::AmbientScaleUnits

Kapsayıcı tarafından kullanılan birim türünü döndürür.

CString AmbientScaleUnits();

Dönüş Değeri

Kapsayıcının ortam ScaleUnits'ini içeren bir dize. Bu özellik desteklenmiyorsa, bu işlev sıfır uzunlukta bir dize döndürür.

Açıklamalar

Kapsayıcının ortam ScaleUnits özelliği, seçilen birimle etiketlenmiş konumları veya boyutları (örneğin, twips veya santimetre) görüntülemek için kullanılabilir. Kapsayıcının bu özelliği desteklemek için gerekli olmadığını unutmayın.

COleControl::AmbientShowGrabHandles

Kapsayıcının etkin olduğunda denetimin tutma tutamaçlarını görüntülemesine izin verip vermediğini belirler.

BOOL AmbientShowGrabHandles();

Dönüş Değeri

Tutma tutamaçlarının görüntülenmesi gerekiyorsa sıfır olmayan; aksi takdirde 0. Bu özellik desteklenmiyorsa, bu işlev sıfır dışı döndürür.

Açıklamalar

Kapsayıcının bu özelliği desteklemek için gerekli olmadığını unutmayın.

COleControl::AmbientShowHatching

Kapsayıcının, kullanıcı arabirimi etkinken denetimin kendisini taranmış bir desenle görüntülemesine izin verip vermediğini belirler.

BOOL AmbientShowHatching();

Dönüş Değeri

Taranmış desenin gösterilmesi gerekiyorsa sıfır olmayan; aksi takdirde 0. Bu özellik desteklenmiyorsa, bu işlev sıfır dışı döndürür.

Açıklamalar

Kapsayıcının bu özelliği desteklemek için gerekli olmadığını unutmayın.

COleControl::AmbientTextAlign

Denetim kapsayıcısı tarafından tercih edilen ortam metni hizalamasını belirler.

short AmbientTextAlign();

Dönüş Değeri

Kapsayıcının ortam TextAlign özelliğinin durumu. Bu özellik desteklenmiyorsa, bu işlev 0 döndürür.

Geçerli dönüş değerlerinin listesi aşağıdadır:

Dönüş değeri Anlamı
0 Genel hizalama (sağda sayılar, solda metin).
1 Sola yasla
2 Orta
3 Sağa yasla

Açıklamalar

Bu özellik tüm eklenmiş denetimler için kullanılabilir ve kapsayıcı tarafından tanımlanır. Kapsayıcının bu özelliği desteklemek için gerekli olmadığını unutmayın.

COleControl::AmbientUIDead

Kapsayıcının denetimin kullanıcı arabirimi eylemlerine yanıt vermesini isteyip istemediğini belirler.

BOOL AmbientUIDead();

Dönüş Değeri

Denetimin kullanıcı arabirimi eylemlerine yanıt vermesi gerekiyorsa sıfır olmayan; aksi takdirde 0. Bu özellik desteklenmiyorsa, bu işlev 0 döndürür.

Açıklamalar

Örneğin, bir kapsayıcı bunu tasarım modunda TRUE olarak ayarlayabilir.

COleControl::AmbientUserMode

Kapsayıcının tasarım modunda mı yoksa kullanıcı modunda mı olduğunu belirler.

BOOL AmbientUserMode();

Dönüş Değeri

Kapsayıcı kullanıcı modundaysa sıfır olmayan; aksi takdirde 0 (tasarım modunda). Bu özellik desteklenmiyorsa, bu işlev TRUE döndürür.

Açıklamalar

Örneğin, bir kapsayıcı bunu tasarım modunda YANLIŞ olarak ayarlayabilir.

COleControl::BoundPropertyChanged

İlişkili özellik değerinin değiştiğine işaret eder.

void BoundPropertyChanged(DISPID dispid);

Parametreler

dispid
Denetimin bağlı özelliğinin dağıtım kimliği.

Açıklamalar

Bu, özelliğin değeri her değiştiğinde, değişikliğin Set yöntemi aracılığıyla yapılmadığı durumlarda bile çağrılmalıdır. Üye değişkenlerine eşlenen bağlı özelliklere özellikle dikkat edin. Böyle bir üye değişkeni her değiştiğinde BoundPropertyChanged çağrılmalıdır.

COleControl::BoundPropertyRequestEdit

Denetim tarafından sağlanan bir ilişkili özellik değerini değiştirmek için arabirimden IPropertyNotifySink izin alır.

BOOL BoundPropertyRequestEdit(DISPID dispid);

Parametreler

dispid
Denetimin bağlı özelliğinin dağıtım kimliği.

Dönüş Değeri

Değişikliğe izin verilirse sıfır olmayan; aksi takdirde 0. Varsayılan değer sıfır olmayan değerdir.

Açıklamalar

İzin reddedilirse, denetim özelliğin değerinin değişmesine izin vermemelidir. Bu, özellik değerini değiştirme girişiminde bulunan eylem yoksayılarak veya başarısız olarak yapılabilir.

COleControl::ClientToParent

pPoint koordinatlarını üst koordinatlara çevirir.

virtual void ClientToParent(
    LPCRECT lprcBounds,
    LPPOINT pPoint) const;

Parametreler

lprcBounds
Kapsayıcı içindeki OLE denetiminin sınırlarına yönelik işaretçi. İstemci alanı değil, kenarlıklar ve kaydırma çubukları da dahil olmak üzere denetimin tamamının alanı.

pPoint
Üst (kapsayıcı) koordinatlarına çevrilecek OLE istemci alanı noktasının işaretçisi.

Açıklamalar

Girişte pPoint , OLE denetiminin istemci alanının başlangıcına bağlıdır (denetimin istemci alanının sol üst köşesinde). Çıkışta pPoint , üst öğe (kapsayıcının sol üst köşesi) kaynağına göre değişir.

COleControl::ClipCaretRect

Tamamen veya kısmen örtüşen, opak nesnelerle kaplanmış bir şapka işareti dikdörtgenini ayarlar.

BOOL ClipCaretRect(LPRECT lpRect);

Parametreler

lpRect
Girişte, ayarlanacak şapka işareti alanını içeren bir RECT yapısının işaretçisi. Çıkışta, düzeltilmiş şapka işareti alanı veya şapka işareti dikdörtgeni tamamen kaplanmışsa NULL.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Şapka işareti, genellikle metnin veya grafiklerin nereye eklendiğini gösteren yanıp sönen bir çizgi, blok veya bit eşlemdir.

Penceresiz bir nesne, çakışan nesneler tarafından şapka işaretinin kısmen mi yoksa tamamen mi gizlendiğini denetlemeden bir şapka işaretini güvenli bir şekilde gösteremez. Bunu mümkün kılmak için, bir nesne kırpma bölgesine sığdığından emin olmak için şapka işaretini ayarlamak (azaltılmış) için kullanabilir ClipCaretRect .

Şapka işareti oluşturan nesneler şapka işareti dikdörtgenini adresine ClipCaretRect göndermeli ve şapka işareti için ayarlanmış dikdörtgeni kullanmalıdır. Şapka işareti tamamen gizliyse, bu yöntem FALSE döndürür ve bu durumda şapka işareti hiç gösterilmemelidir.

COleControl::COleControl

Bir COleControl nesne oluşturur.

COleControl();

Açıklamalar

Bu işlev normalde doğrudan çağrılmaz. Bunun yerine OLE denetimi genellikle sınıf fabrikası tarafından oluşturulur.

COleControl::ControlInfoChanged

Denetim tarafından desteklenen anımsatıcı kümesi değiştiğinde bu işlevi çağırın.

void ControlInfoChanged();

Açıklamalar

Bu bildirimi aldıktan sonra, denetimin kapsayıcısı IOleControl::GetControlInfo çağrısı yaparak yeni bir anımsatıcı kümesi alır. Bu bildirime yanıt vermek için kapsayıcının gerekli olmadığını unutmayın.

COleControl::D isplayError

Hisse senedi Hatası olayı işlendikten sonra çerçeve tarafından çağrılır (olay işleyicisi hatanın görüntülenmesini engellemediği sürece).

virtual void DisplayError(
    SCODE scode,
    LPCTSTR lpszDescription,
    LPCTSTR lpszSource,
    LPCTSTR lpszHelpFile,
    UINT nHelpID);

Parametreler

scode
Bildirilecek durum kodu değeri. Olası kodların tam listesi için ActiveX Denetimleri: Gelişmiş Konular makalesine bakın.

lpszDescription
Bildirilen hatanın açıklaması.

lpszSource
Hatayı oluşturan modülün adı (genellikle OLE denetim modülünün adı).

lpszHelpFile
Hatanın açıklamasını içeren yardım dosyasının adı.

nHelpID
Bildirilen hatanın Yardım Bağlam Kimliği.

Açıklamalar

Varsayılan davranış, lpszDescription içinde bulunan hatanın açıklamasını içeren bir ileti kutusu görüntüler.

Hataların görüntülenme biçimini özelleştirmek için bu işlevi geçersiz kılın.

COleControl::D oClick

Denetimde fare tıklama eyleminin benzetimini oluşturur.

void DoClick();

Açıklamalar

Geçersiz kılınabilir COleControl::OnClick üye işlevi çağrılır ve denetim tarafından destekleniyorsa bir stok Tıklama olayı tetiklenir.

Bu işlev, temel sınıf tarafından COleControl DoClick adlı bir hisse senedi yöntemi olarak desteklenir. Daha fazla bilgi için ActiveX Denetimleri: Yöntemler makalesine bakın.

COleControl::D oPropExchange

Akış veya özellik kümesi gibi kalıcı bir depolama gösteriminden denetim yüklerken veya depolarken çerçeve tarafından çağrılır.

virtual void DoPropExchange(CPropExchange* pPX);

Parametreler

pPX
Nesne işaretçisi CPropExchange . Çerçeve, yönü de dahil olmak üzere özellik değişimi bağlamını oluşturmak için bu nesneyi sağlar.

Açıklamalar

Bu işlev normalde bir OLE denetiminin kullanıcı tanımlı özelliklerini yüklemek veya depolamak için PX_ işlev ailesine çağrı yapar.

OLE denetim projesini oluşturmak için Denetim Sihirbazı kullanıldıysa, bu işlevin geçersiz kılınan sürümü tarafından COleControl desteklenen hisse senedi özelliklerini temel sınıf işlevine COleControl::DoPropExchangeyapılan bir çağrıyla serileştirir. OLE denetiminize kullanıcı tanımlı özellikler eklerken, yeni özelliklerinizi seri hale getirmek için bu işlevi değiştirmeniz gerekir. Serileştirme hakkında daha fazla bilgi için ActiveX Denetimleri: Serileştirme makalesine bakın.

COleControl::D oSuperclassPaint

Windows denetiminden alt sınıflanmış bir OLE denetimini yeniden çizer.

void DoSuperclassPaint(
    CDC* pDC,
    const CRect& rcBounds);

Parametreler

pDC
Denetim kapsayıcısının cihaz bağlamını işaret eden bir işaretçi.

rcBounds
Denetimin çekileceği alan.

Açıklamalar

Etkin olmayan bir OLE denetiminin tablosunu düzgün bir şekilde işlemek için bu işlevi çağırın. Bu işlev yalnızca OLE denetimi bir Windows denetimini alt sınıflarsa kullanılmalıdır ve denetiminizin işlevinde OnDraw çağrılmalıdır.

Bu işlev ve bir Windows denetimini alt sınıflama hakkında daha fazla bilgi için ActiveX Denetimleri: Windows Denetimini Alt Sınıflama makalesine bakın.

COleControl::D rawContent

Denetimin görünümünün güncelleştirilmesi gerektiğinde çerçeve tarafından çağrılır.

void DrawContent(
    CDC* pDC,
    CRect& rc);

Parametreler

pDC
Cihaz bağlamı işaretçisi.

Rc
Çekilecek dikdörtgen alan.

Açıklamalar

Bu işlev, geçersiz kılınabilir OnDraw işlevi doğrudan çağırır.

COleControl::D rawMetafile

Meta dosyası cihaz bağlamı kullanılırken çerçeve tarafından çağrılır.

void DrawMetafile(
    CDC* pDC,
    CRect& rc);

Parametreler

pDC
Meta dosyası cihaz bağlamı işaretçisi.

Rc
Çekilecek dikdörtgen alan.

COleControl::EnableSimpleFrame

OLE denetimi için basit çerçeve özelliğini etkinleştirir.

void EnableSimpleFrame();

Açıklamalar

Bu özellik, denetimin diğer denetimlerin görsel kapsamasını desteklemesine izin verir, ancak doğru OLE kapsamasını desteklemez. Örnek olarak, içinde birkaç denetim bulunan bir grup kutusu yer alır. Bu denetimler OLE içermez, ancak aynı grup kutusundadır.

COleControl::ExchangeExtent

Denetimin kapsamının durumunu (HIMETRIC birimlerindeki boyutları) serileştirir veya başlatır.

BOOL ExchangeExtent(CPropExchange* pPX);

Parametreler

pPX
CPropExchange nesnesinin işaretçisi. Çerçeve, yönü de dahil olmak üzere özellik değişimi bağlamını oluşturmak için bu nesneyi sağlar.

Dönüş Değeri

İşlev başarılı olursa sıfır olmayan; 0 aksi takdirde.

Açıklamalar

Bu işlev normalde varsayılan uygulaması tarafından çağrılır COleControl::DoPropExchange.

COleControl::ExchangeStockProps

Denetimin hisse senedi özelliklerinin durumunu serileştirir veya başlatır.

void ExchangeStockProps(CPropExchange* pPX);

Parametreler

pPX
CPropExchange nesnesinin işaretçisi. Çerçeve, yönü de dahil olmak üzere özellik değişimi bağlamını oluşturmak için bu nesneyi sağlar.

Açıklamalar

Bu işlev normalde varsayılan uygulaması tarafından çağrılır COleControl::DoPropExchange.

COleControl::ExchangeVersion

Denetimin sürüm bilgilerinin durumunu serileştirir veya başlatır.

BOOL ExchangeVersion(
    CPropExchange* pPX,
    DWORD dwVersionDefault,
    BOOL bConvert = TRUE);

Parametreler

pPX
Nesne işaretçisi CPropExchange . Çerçeve, yönü de dahil olmak üzere özellik değişimi bağlamını oluşturmak için bu nesneyi sağlar.

dwVersionDefault
Denetimin geçerli sürüm numarası.

bConvert
Kalıcı verilerin kaydedildiğinde en son biçime dönüştürülüp dönüştürülmeyeceğini veya yüklenen aynı biçimde tutulması gerektiğini gösterir.

Dönüş Değeri

İşlevin sıfır dışı başarılı oldu; 0 aksi takdirde.

Açıklamalar

Genellikle bu, denetimin geçersiz kılması COleControl::DoPropExchangetarafından çağrılan ilk işlev olacaktır. Bu işlev yüklenirken kalıcı verilerin sürüm numarasını okur ve CPropExchange nesnesinin sürüm özniteliğini buna göre ayarlar. Kaydederken, bu işlev kalıcı verilerin sürüm numarasını yazar.

Kalıcılık ve sürüm oluşturma hakkında daha fazla bilgi için ActiveX Denetimleri: Serileştirme makalesine bakın.

COleControl::FireClick

Fare etkin bir denetimin üzerine tıklandığında çerçeve tarafından çağrılır.

void FireClick();

Açıklamalar

Bu olay özel bir olay olarak tanımlanırsa, olayın ne zaman tetikleneceğini belirlersiniz.

Click olayının otomatik olarak tetiklenmek için denetimin Olay haritasında tanımlanmış bir stok Tıklama olayı olmalıdır.

COleControl::FireDblClick

Fare etkin bir denetimin üzerine çift tıklandığında çerçeve tarafından çağrılır.

void FireDblClick();

Açıklamalar

Bu olay özel bir olay olarak tanımlanırsa, olayın ne zaman tetikleneceğini belirlersiniz.

Bir DblClick olayının otomatik olarak tetiklenmek için, denetimin Olay haritasında tanımlanmış bir DblClick olayı olmalıdır.

COleControl::FireError

Hisse senedi Hata olayını başlatır.

void FireError(
    SCODE scode,
    LPCTSTR lpszDescription,
    UINT nHelpID = 0);

Parametreler

scode
Bildirilecek durum kodu değeri. Olası kodların tam listesi için ActiveX Denetimleri: Gelişmiş Konular makalesine bakın.

lpszDescription
Bildirilen hatanın açıklaması.

nHelpID
Bildirilen hatanın Yardım Kimliği.

Açıklamalar

Bu olay, kodunuzun uygun yerlerinde denetiminizde bir hata oluştuğuna dair sinyal vermenin bir yolunu sağlar. Click veya MouseMove gibi diğer stok olaylarının aksine, Çerçeve tarafından hiçbir zaman Hata tetiklenmez.

Bir özellik alma işlevi, özellik kümesi işlevi veya otomasyon yöntemi sırasında oluşan bir hatayı bildirmek için COleControl::ThrowError çağrısında bulunur.

OLE denetiminin Hisse Senedi Hatası olayının uygulanması bir SCODE değeri kullanır. Denetiminiz bu olayı kullanıyorsa ve Visual Basic 4.0'da kullanılması amaçlanıyorsa, SCODE değeri Visual Basic'te desteklenmediğinden hata alırsınız.

Bunu düzeltmek için, denetimin içindeki SCODE parametresini el ile değiştirin. ODL dosyası olarak.long Buna ek olarak, SCODE parametresi kullanan herhangi bir özel olay, yöntem veya özellik de aynı soruna neden olur.

COleControl::FireEvent

İstediğiniz sayıda isteğe bağlı bağımsız değişkenle denetiminizden kullanıcı tanımlı bir olay başlatır.

void AFX_CDECL FireEvent(
    DISPID dispid,
    BYTE* pbParams,
...);

Parametreler

dispid
Tetiklenecek olayın dağıtım kimliği.

pbParams
Olayın parametre türleri için bir tanımlayıcı.

Açıklamalar

Genellikle bu işlev doğrudan çağrılmamalıdır. Bunun yerine, denetiminizin sınıf bildiriminin olay eşlemesi bölümünde olay tetikleme işlevlerini çağıracaksınız.

pbParams bağımsız değişkeni, boşlukla ayrılmış bir VTS_ listesidir. Bu değerlerden biri veya daha fazlası boşluklarla (virgülle değil) ayrılmış olarak işlevin parametre listesini belirtir. Olası değerler aşağıdaki gibidir:

Simge Parametre türü
VTS_COLOR OLE_COLOR
VTS_FONT IFontDisp*
VTS_HANDLE HWND
VTS_PICTURE IPictureDisp*
VTS_OPTEXCLUSIVE OLE_OPTEXCLUSIVE*
VTS_TRISTATE OLE_TRISTATE
VTS_XPOS_HIMETRIC OLE_XPOS_HIMETRIC
VTS_YPOS_HIMETRIC OLE_YPOS_HIMETRIC
VTS_XPOS_PIXELS OLE_XPOS_PIXELS
VTS_YPOS_PIXELS OLE_YPOS_PIXELS
VTS_XSIZE_PIXELS OLE_XSIZE_PIXELS
VTS_YSIZE_PIXELS OLE_XSIZE_PIXELS
VTS_XSIZE_HIMETRIC OLE_XSIZE_HIMETRIC
VTS_YSIZE_HIMETRIC OLE_XSIZE_HIMETRIC

Not

Değişken veri sabitine bir işaretçi sağlayan VTS_FONT ve VTS_PICTURE dışında tüm değişken türleri için ek değişken sabitleri tanımlanmıştır. Bu sabitler VTS_P<CONSTANT-NAME> kuralı kullanılarak adlandırılır. Örneğin, VTS_PCOLOR bir VTS_COLOR sabiti işaretçisidir.

COleControl::FireKeyDown

Denetim kullanıcı arabirimi etkinken bir tuşa basıldığında çerçeve tarafından çağrılır.

void FireKeyDown(
    USHORT* pnChar,
    short nShiftState);

Parametreler

pnChar
Basılan tuşun sanal anahtar kodu değerinin işaretçisi. Standart sanal anahtar kodlarının listesi için bkz. Winuser.h

nShiftState
Aşağıdaki bayrakların bir bileşimini içerir:

  • SHIFT_MASK Eylem sırasında SHIFT tuşuna basıldı.

  • CTRL_MASK Eylem sırasında CTRL tuşuna basıldı.

  • ALT_MASK Eylem sırasında ALT tuşuna basıldı.

Açıklamalar

Bu olay özel bir olay olarak tanımlanırsa, olayın ne zaman tetikleneceğini belirlersiniz.

Bir KeyDown olayının otomatik olarak tetiklenmek için, denetimin Olay haritasında tanımlanmış bir stok KeyDown olayı olmalıdır.

COleControl::FireKeyPress

Özel denetim kapsayıcı içinde kullanıcı arabirimi etkinken bir tuşa basıldığında ve serbest bırakıldığında çerçeve tarafından çağrılır.

void FireKeyPress(USHORT* pnChar);

Parametreler

pnChar
Basılan tuşun karakter değerinin işaretçisi.

Açıklamalar

Bu olay özel bir olay olarak tanımlanırsa, olayın ne zaman tetikleneceğini belirlersiniz.

Olayın alıcısı pnChar'ı değiştirebilir, örneğin, tüm küçük harfleri büyük harfe dönüştürebilir. Değiştirilen karakteri incelemek istiyorsanız, öğesini geçersiz kılın OnKeyPressEvent.

Bir KeyPress olayının otomatik olarak tetiklenmek için, denetimin Olay haritasında tanımlanmış bir stok KeyPress olayı olmalıdır.

COleControl::FireKeyUp

Özel denetim kapsayıcı içinde kullanıcı arabirimi etkinken bir anahtar serbest bırakıldığında çerçeve tarafından çağrılır.

void FireKeyUp(
    USHORT* pnChar,
    short nShiftState);

Parametreler

pnChar
Serbest bırakılan anahtarın sanal anahtar kodu değerinin işaretçisi. Standart sanal anahtar kodlarının listesi için bkz. Winuser.h

nShiftState
Aşağıdaki bayrakların bir bileşimini içerir:

  • SHIFT_MASK Eylem sırasında SHIFT tuşuna basıldı.

  • CTRL_MASK Eylem sırasında CTRL tuşuna basıldı.

  • ALT_MASK Eylem sırasında ALT tuşuna basıldı.

Açıklamalar

Bu olay özel bir olay olarak tanımlanırsa, olayın ne zaman tetikleneceğini belirlersiniz.

Bir KeyUp olayının otomatik olarak tetiklenmek için denetimin Olay haritasında tanımlanmış bir stok KeyUp olayı olmalıdır.

COleControl::FireMouseDown

Etkin bir özel denetim üzerinde fare düğmesine basıldığında çerçeve tarafından çağrılır.

void FireMouseDown(
    short nButton,
    short nShiftState,
    OLE_XPOS_PIXELS x,
    OLE_YPOS_PIXELS y);

Parametreler

nButton
Fare düğmesinin sayısal değeri basıldı. Aşağıdaki değerlerden birini içerebilir:

  • LEFT_BUTTON Sol fare düğmesine basıldı.

  • MIDDLE_BUTTON Ortadaki fare düğmesine basıldı.

  • RIGHT_BUTTON Sağ fare düğmesine basıldı.

nShiftState
Aşağıdaki bayrakların bir bileşimini içerir:

  • SHIFT_MASK Eylem sırasında SHIFT tuşuna basıldı.

  • CTRL_MASK Eylem sırasında CTRL tuşuna basıldı.

  • ALT_MASK Eylem sırasında ALT tuşuna basıldı.

x
Fare düğmesine basıldığında imlecin x koordinatı. Koordinat, denetim penceresinin sol üst köşesine göredir.

y
Fare düğmesine basıldığında imlecin y koordinatı. Koordinat, denetim penceresinin sol üst köşesine göredir.

Açıklamalar

Bu olay özel bir olay olarak tanımlanırsa, olayın ne zaman tetikleneceğini belirlersiniz.

Bir MouseDown olayının otomatik olarak tetiklenmek için denetimin Olay haritasında tanımlanmış bir stok MouseDown olayı olmalıdır.

COleControl::FireMouseMove

İmleç etkin bir özel denetimin üzerine taşındığında çerçeve tarafından çağrılır.

void FireMouseMove(
    short nButton,
    short nShiftState,
    OLE_XPOS_PIXELS x,
    OLE_YPOS_PIXELS y);

Parametreler

nButton
Basılan fare düğmelerinin sayısal değeri. Aşağıdaki değerlerin bir bileşimini içerir:

  • LEFT_BUTTON Eylem sırasında sol fare düğmesine basıldı.

  • MIDDLE_BUTTON Eylem sırasında ortadaki fare düğmesine basıldı.

  • RIGHT_BUTTON Eylem sırasında sağ fare düğmesine basıldı.

nShiftState
Aşağıdaki bayrakların bir bileşimini içerir:

  • SHIFT_MASK Eylem sırasında SHIFT tuşuna basıldı.

  • CTRL_MASK Eylem sırasında CTRL tuşuna basıldı.

  • ALT_MASK Eylem sırasında ALT tuşuna basıldı.

x
İmlecin x koordinatı. Koordinat, denetim penceresinin sol üst köşesine göredir.

y
İmlecin y koordinatı. Koordinat, denetim penceresinin sol üst köşesine göredir.

Açıklamalar

Bu olay özel bir olay olarak tanımlanırsa, olayın ne zaman tetikleneceğini belirlersiniz.

Bir MouseMove olayının otomatik olarak tetiklenmek için, denetimin Olay haritasında tanımlanmış bir stok MouseMove olayı olmalıdır.

COleControl::FireMouseUp

Etkin bir özel denetim üzerinde fare düğmesi serbest bırakıldığında çerçeve tarafından çağrılır.

void FireMouseUp(
    short nButton,
    short nShiftState,
    OLE_XPOS_PIXELS x,
    OLE_YPOS_PIXELS y);

Parametreler

nButton
Serbest bırakılan fare düğmesinin sayısal değeri. Aşağıdaki değerlerden birine sahip olabilir:

  • LEFT_BUTTON Sol fare düğmesi serbest bırakıldı.

  • MIDDLE_BUTTON Ortadaki fare düğmesi serbest bırakıldı.

  • RIGHT_BUTTON Sağ fare düğmesi serbest bırakıldı.

nShiftState
Aşağıdaki bayrakların bir bileşimini içerir:

  • SHIFT_MASK Eylem sırasında SHIFT tuşuna basıldı.

  • CTRL_MASK Eylem sırasında CTRL tuşuna basıldı.

  • ALT_MASK Eylem sırasında ALT tuşuna basıldı.

x
Fare düğmesi serbest bırakıldığında imlecin x koordinatı. Koordinat, denetim penceresinin sol üst köşesine göredir.

y
Fare düğmesi serbest bırakıldığında imlecin y koordinatı. Koordinat, denetim penceresinin sol üst köşesine göredir.

Açıklamalar

Bu olay özel bir olay olarak tanımlanırsa, olayın ne zaman tetikleneceğini belirlersiniz.

Bir MouseUp olayının otomatik olarak tetiklenme işleminin gerçekleşmesi için denetimin Olay eşlemesinde tanımlanmış bir stok MouseUp olayı olmalıdır.

COleControl::FireReadyStateChange

Denetimin hazır durumunun geçerli değeriyle bir olayı tetikler.

void FireReadyStateChange();

Açıklamalar

Hazır durum aşağıdaki değerlerden biri olabilir:

Veri Akışı Adı Açıklama
READYSTATE_UNINITIALIZED Varsayılan başlatma durumu
READYSTATE_LOADING Denetim şu anda özelliklerini yüklüyor
READYSTATE_LOADED Denetim başlatıldı
READYSTATE_INTERACTIVE Denetim etkileşimli olmak için yeterli veriye sahip ancak tüm zaman uyumsuz veriler henüz yüklenmemiş
READYSTATE_COMPLETE Denetimin tüm verileri var

Denetimin geçerli hazırlığını belirlemek için GetReadyState kullanın.

InternalSetReadyState , hazır durumu sağlanan değerle değiştirir ve çağırır FireReadyStateChange.

COleControl::GetActivationPolicy

Arabirimi destekleyen IPointerInactive bir denetimin varsayılan etkinleştirme davranışını değiştirir.

virtual DWORD GetActivationPolicy();

Dönüş Değeri

POINTERINACTIVE sabit listesindeki bayrakların birleşimi. Olası bayraklar şunlardır:

Veri Akışı Adı Açıklama
POINTERINACTIVE_ACTIVATEONENTRY Nesne, fare hareket ettirme işlemi sırasında fare girdiğinde yerinde etkinleştirilmelidir.
POINTERINACTIVE_DEACTIVATEONLEAVE Bir fare taşıma işlemi sırasında fare nesneden ayrıldığında nesne devre dışı bırakılmalıdır.
POINTERINACTIVE_ACTIVATEONDRAG Sürükleme ve bırakma işlemi sırasında fare üzerine sürüklendiğinde nesne yerinde etkinleştirilmelidir.

Açıklamalar

IPointerInactive Arabirim etkinleştirildiğinde kapsayıcı, WM_SETCURSOR temsilci olarak WM_MOUSEMOVE iletileri ona verir. COleControl'nin bu arabirimi uygulaması, fare koordinatlarını uygun şekilde ayarladıktan sonra bu iletileri denetiminizin ileti haritası aracılığıyla dağıtacaktır.

Kapsayıcı, destekleyen etkin olmayan bir nesnenin IPointerInactiveüzerinde fare işaretçisi ile bir WM_SETCURSOR veya WM_MOUSEMOVE iletisi aldığında, arabirimde çağrı GetActivationPolicy yapmalı ve POINTERINACTIVE numaralandırmasından bayraklar döndürmelidir.

Bu iletileri normal pencere iletileri gibi, ilgili girişleri ileti eşlemesine ekleyerek işleyebilirsiniz. İşleyicilerinizde, önce değerinin m_hWnd NULL olmadığını denetlemeden üye değişkenini (veya onu kullanan herhangi bir üye işlevini) kullanmaktan kaçının.

Fare imlecini ayarlamaktan ve/veya özel görsel geri bildirimde bulunmak gibi bir fare taşıma olayını tetiklemeye yönelik tüm nesneler POINTERINACTIVE_ACTIVATEONENTRY bayrağını döndürmeli ve geri bildirimi yalnızca etkin olduğunda çizmelidir. Nesne bu bayrağı döndürürse, kapsayıcı bunu hemen yerinde etkinleştirmeli ve ardından çağrısının GetActivationPolicytetiklediği iletiyi iletmelidir.

hem POINTERINACTIVE_ACTIVATEONENTRY hem de POINTERINACTIVE_DEACTIVATEONLEAVE bayrakları döndürülürse, nesne yalnızca fare nesnenin üzerindeyken etkinleştirilir. Yalnızca POINTERINACTIVE_ACTIVATEONENTRY bayrağı döndürülürse, nesne fare nesneye ilk girdiğinde yalnızca bir kez etkinleştirilir.

Etkin olmayan bir denetimin ole sürükleme ve bırakma işleminin hedefi olmasını da isteyebilirsiniz. Bunun için, kullanıcı nesnenin üzerine sürüklediği anda denetimin etkinleştirilmesi gerekir, böylece denetimin penceresi bırakma hedefi olarak kaydedilebilir. Sürükleme sırasında etkinleştirmenin gerçekleşmesine neden olmak için POINTERINACTIVE_ACTIVATEONDRAG bayrağını döndürin:

DWORD CMyAxCtrl::GetActivationPolicy()
{
   return POINTERINACTIVE_ACTIVATEONDRAG;
}

ile GetActivationPolicy iletişim kuran bilgiler bir kapsayıcı tarafından önbelleğe alınmamalıdır. Bunun yerine, fare etkin olmayan bir nesneye her girdiğinde bu yöntem çağrılmalıdır.

Etkin olmayan bir nesne fare girdiğinde yerinde etkinleştirilmeyi istemezse, fare işaretçisi nesnenin üzerinde kaldığı sürece, kapsayıcısı OnInactiveSetCursor'ı çağırarak sonraki WM_SETCURSOR iletilerini bu nesneye göndermelidir.

Arabirimi etkinleştirmek IPointerInactive genellikle denetimin fare iletilerini her zaman işleyebilmesini istediğiniz anlamına gelir. Bu davranışı arabirimi desteklemeyen IPointerInactive bir kapsayıcıya almak için, denetiminizin görünür olduğunda her zaman etkinleştirilmesi gerekir; bu da denetimin çeşitli bayrakları arasında OLEMISC_ACTIVATEWHENVISIBLE bayrağına sahip olması gerektiği anlamına gelir. Ancak, bu bayrağın destekleyen IPointerInactivebir kapsayıcıda etkili olmasını önlemek için OLEMISC_IGNOREACTIVATEWHENVISIBLE bayrağını da belirtebilirsiniz:

static const DWORD BASED_CODE _dwMyOleMisc =
    OLEMISC_ACTIVATEWHENVISIBLE |
    OLEMISC_IGNOREACTIVATEWHENVISIBLE |
    OLEMISC_SETCLIENTSITEFIRST |
    OLEMISC_INSIDEOUT |
    OLEMISC_CANTLINKINSIDE |
    OLEMISC_RECOMPOSEONRESIZE;

COleControl::GetAmbientProperty

Kapsayıcının bir ortam özelliğinin değerini alır.

BOOL GetAmbientProperty(
    DISPID dispid,
    VARTYPE vtProp,
    void* pvProp);

Parametreler

dwDispid
İstenen ortam özelliğinin dağıtım kimliği.

vtProp
pvProp içinde döndürülecek değerin türünü belirten bir değişken türü etiketi.

pvProp
Özellik değerini veya dönüş değerini alacak değişkenin adresine yönelik bir işaretçi. Bu işaretçinin gerçek türü vtProp tarafından belirtilen türle eşleşmelidir.

vtProp pvProp türü
VT_BOOL BOOL*
VT_BSTR CString*
VT_I2 short*
VT_I4 long*
VT_R4 float*
VT_R8 double*
VT_CY CY*
VT_COLOR OLE_COLOR*
VT_DISPATCH LPDISPATCH*
VT_FONT LPFONTDISP*

Dönüş Değeri

Ortam özelliği destekleniyorsa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Ortam DisplayName ve ScaleUnits özelliklerini almak için kullanırsanız GetAmbientProperty vtProp değerini VT_BSTR ve pvProp değerini olarak CString*ayarlayın. Ortam Yazı Tipi özelliğini almaktaysanız vtProp değerini VT_FONT ve pvProp değerini LPFONTDISP* olarak ayarlayın.

AmbientBackColor ve AmbientFont gibi ortak ortam özellikleri için işlevlerin zaten sağlandığını unutmayın.

COleControl::GetAppearance

Denetiminizin stock Appearance özelliğinin Get işlevini uygular.

short GetAppearance ();

Dönüş Değeri

Dönüş değeri, başarılı olursa geçerli görünüm ayarını (VT_I2) değer olarak short belirtir. Denetimin görünümü düzse bu değer sıfır, denetimin görünümü 3B ise 1 olur.

COleControl::GetBackColor

Denetiminizin stock BackColor özelliğinin Get işlevini uygular.

OLE_COLOR GetBackColor();

Dönüş Değeri

Dönüş değeri, başarılı olursa geçerli arka plan rengini OLE_COLOR değeri olarak belirtir. Bu değer, çağrısıyla TranslateColorcolorref değerine çevrilebilir.

COleControl::GetBorderStyle

Denetiminizin stock BorderStyle özelliğinin Get işlevini uygular.

short GetBorderStyle();

Dönüş Değeri

Denetimin normal bir kenarlı olması durumunda 1; Denetimin kenarlık yoksa 0.

COleControl::GetCapture

Nesnenin fare yakalamasına COleControl sahip olup olmadığını belirler.

CWnd* GetCapture();

Dönüş Değeri

Denetim etkin ve penceresizse, denetimin şu anda fare yakalaması varsa (denetimin kapsayıcısı tarafından belirlendiği gibi) veya yakalamaya sahip değilse NULL döndürür this .

Aksi takdirde, fare yakalaması CWnd olan nesneyi döndürür (ile aynı).CWnd::GetCapture

Açıklamalar

Etkinleştirilmiş penceresiz denetim, SetCapture çağrıldığında fare yakalamasını alır.

COleControl::GetClassID

Denetimin OLE sınıf kimliğini almak için çerçeve tarafından çağrılır.

virtual HRESULT GetClassID(LPCLSID pclsid) = 0;

Parametreler

pclsid
Sınıf kimliğinin konumuna işaret eden işaretçi.

Dönüş Değeri

Çağrı başarılı olmazsa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Genellikle IMPLEMENT_OLECREATE_EX tarafından uygulanır.

COleControl::GetClientOffset

Denetimin dikdörtgen alanının sol üst köşesi ile istemci alanının sol üst köşesi arasındaki farkı alır.

virtual void GetClientOffset(long* pdxOffset, long* pdyOffset) const;

Parametreler

pdxOffset
OLE denetiminin istemci alanının yatay uzaklığının işaretçisi.

pdyOffset
OLE denetiminin istemci alanının dikey uzaklığının işaretçisi.

Açıklamalar

OLE denetiminin kapsayıcısı içinde dikdörtgen bir alanı vardır. Denetimin istemci alanı, kenarlıklar ve kaydırma çubukları hariç denetim alanıdır. tarafından GetClientOffset alınan uzaklık, denetimin dikdörtgen alanının sol üst köşesi ile istemci alanının sol üst köşesi arasındaki farktır. Denetiminizde standart kenarlıklar ve kaydırma çubukları dışında istemci dışı öğeler varsa, uzaklığı belirtmek için bu üye işlevini geçersiz kılın.

COleControl::GetClientRect

Denetimin istemci alanının boyutunu alır.

virtual void GetClientRect(LPRECT lpRect) const;

Parametreler

lpRect
Penceresiz denetimin istemci alanının boyutlarını içeren bir RECT yapı işaretçisi; yani denetimin boyutu eksi pencere kenarlıkları, çerçeveler, kaydırma çubukları vb. lpRect parametresi, denetimin konumunu değil istemci dikdörtgeninin boyutunu gösterir.

COleControl::GetClientSite

İşaretçi için bir nesneyi kapsayıcısı içindeki geçerli istemci sitesine sorgular.

LPOLECLIENTSITE GetClientSite();

Dönüş Değeri

Kapsayıcısında denetimin geçerli istemci sitesine yönelik bir işaretçi.

Açıklamalar

Döndürülen işaretçi bir örneğini IOleClientSitegösterir. Kapsayıcılar IOleClientSite tarafından uygulanan arabirim, nesnenin bağlamının görünümüdür: belgede sabitlendiği, depolama alanını, kullanıcı arabirimini ve diğer kaynakları aldığı yer.

COleControl::GetControlFlags

Denetim bayrağı ayarlarını alır.

virtual DWORD GetControlFlags();

Dönüş Değeri

ControlFlags numaralandırmasında bayrakların ORed bileşimi:

enum ControlFlags {
    fastBeginPaint = 0x0001,
    clipPaintDC = 0x0002,
    pointerInactive = 0x0004,
    noFlickerActivate = 0x0008,
    windowlessActivate = 0x0010,
    canOptimizeDraw = 0x0020,
    };

Açıklamalar

Varsayılan olarak döndürür GetControlFlags fastBeginPaint | clipPaintDC.

Veri Akışı Adı Açıklama
fastBeginPaint Ayarlanırsa BeginPaint API'sinin yerine OLE denetimleri için uyarlanmış bir begin-paint işlevi kullanır (varsayılan olarak ayarlanır).
clipPaintDC Ayarlanmadıysa, tarafından COleControl yapılan çağrıyı IntersectClipRect devre dışı bırakır ve küçük bir hız avantajı kazanır. Penceresiz etkinleştirme kullanıyorsanız bayrağın hiçbir etkisi yoktur.
pointerInactive Ayarlanırsa, varsayılan olarak devre dışı olan arabirimin IPointerInactive uygulamasını etkinleştirerek COleControldenetiminiz etkin değilken fare etkileşimi sağlar.
noFlickerActivate Ayarlanırsa, ek çizim işlemlerini ve buna eşlik eden görsel titreşimi ortadan kaldırır. Denetiminiz etkin olmayan ve etkin durumda kendini aynı şekilde çizdiğinde kullanın. Penceresiz etkinleştirme kullanıyorsanız bayrağın hiçbir etkisi yoktur.
windowlessActivate Ayarlanırsa, denetiminizin penceresiz etkinleştirme kullandığını gösterir.
canOptimizeDraw Ayarlanırsa, kapsayıcı destekliyorsa denetimin iyileştirilmiş çizim gerçekleştireceğini gösterir.

OLE denetimlerinin ve diğer iyileştirmeleri hakkında GetControlFlags daha fazla bilgi için bkz . ActiveX Denetimleri: İyileştirme.

COleControl::GetControlSize

OLE denetim penceresinin boyutunu alır.

void GetControlSize(
    int* pcx,
    int* pcy);

Parametreler

pcx
Denetimin genişliğini piksel cinsinden belirtir.

pcy
Denetimin yüksekliğini piksel cinsinden belirtir.

Açıklamalar

Denetim pencerelerinin tüm koordinatlarının denetimin sol üst köşesine göre olduğunu unutmayın.

COleControl::GetDC

Kapsayıcısından ekran (veya uyumlu) cihaz bağlamı almak için penceresiz bir nesne sağlar.

CDC* GetDC(
    LPCRECT lprcRect = NULL,
    DWORD dwFlags = OLEDC_PAINTBKGND);

Parametreler

lprcRect
Penceresiz denetimin istemci koordinatlarında yeniden çizmek istediği dikdörtgenin işaretçisi. NULL, tam nesnenin kapsamı anlamına gelir.

dwFlags
Cihaz bağlamının özniteliklerini çizme. Seçenekler şunlardır:

  • OLEDC_NODRAW Nesnenin herhangi bir çizim yapmak için cihaz bağlamını kullanmayacağını, yalnızca görüntü cihazı hakkında bilgi almak için kullanmayacağını gösterir. Kapsayıcı, daha fazla işlem yapmadan pencerenin DC'sini geçmelidir.

  • OLEDC_PAINTBKGND DC'yi döndürmeden önce kapsayıcının arka planı boyamasını istemektedir. Saydam arka planlı bir alanı yeniden çizmek için dc isteğinde bulunan bir nesne bu bayrağı kullanmalıdır.

  • OLEDC_OFFSCREEN Nesnenin daha sonra ekrana kopyalanması gereken bir ekran dışı bit eşlem haline getirmek istediği kapsayıcıya bildirir. Bir nesne, gerçekleştirmek üzere olduğu çizim işlemi çok fazla titreşim oluşturduğunda bu bayrağı kullanmalıdır. Kapsayıcı bu isteği yerine getirmekte veya yerine getirmekte özgürdür. Ancak, bu bayrak ayarlanmazsa kapsayıcının ekran DC'sini geri vermesi gerekir. Bu, nesnelerin seçimi gösterme gibi doğrudan ekran işlemleri gerçekleştirmesine olanak tanır (XOR işlemi aracılığıyla).

Dönüş Değeri

Başarılı olursa kapsayıcı CWnd istemci alanının görüntü cihazı bağlamı işaretçisi; aksi takdirde dönüş değeri NULL olur. Görüntü cihazı bağlamı, kapsayıcı penceresinin istemci alanında çizim yapmak için sonraki GDI işlevlerinde kullanılabilir.

Açıklamalar

Tablo sonrasında bağlamı serbest bırakmak için ReleaseDC üye işlevi çağrılmalıdır. çağırıldığında GetDC, nesneler kendi istemci koordinatlarında çizmek istedikleri dikdörtgeni geçirir. GetDC bunları kapsayıcı istemci alanının koordinatlarına çevirir. Nesnesi, boyutu GetClientRect ile alınabilen kendi istemci alanı dikdörtgeninden daha büyük bir istenen çizim dikdörtgeni istememelidir. Bu, nesnelerin istemeden olmamaları gereken bir yere çizim yapmasını engeller.

COleControl::GetEnabled

Denetiminizin hisse senedi Etkin özelliğinin Get işlevini uygular.

BOOL GetEnabled();

Dönüş Değeri

Denetim etkinse sıfır olmayan; aksi takdirde 0.

COleControl::GetExtendedControl

Genişletilmiş bir özellik kümesiyle denetimi temsil eden kapsayıcı tarafından tutulan bir nesneye yönelik bir işaretçi alır.

LPDISPATCH GetExtendedControl();

Dönüş Değeri

Kapsayıcının genişletilmiş denetim nesnesinin işaretçisi. Kullanılabilir nesne yoksa, değer NULL olur.

Bu nesne arabirimi aracılığıyla IDispatch değiştirilebilir. Nesnesi tarafından sağlanan diğer kullanılabilir arabirimleri almak için de kullanabilirsiniz QueryInterface . Ancak, nesne belirli bir arabirim kümesini desteklemek için gerekli değildir. Kapsayıcının genişletilmiş denetim nesnesinin belirli özelliklerine bağlı olarak denetiminizin diğer rastgele kapsayıcılara taşınabilirliğini sınırladığını unutmayın.

Açıklamalar

Bu işlevi çağıran işlev, nesnesiyle işiniz bittiğinde işaretçiyi serbest bırakmakla sorumludur. Kapsayıcının bu nesneyi desteklemek için gerekli olmadığını unutmayın.

COleControl::GetFocus

Nesnenin COleControl odakta olup olmadığını belirler.

CWnd* GetFocus();

Dönüş Değeri

Denetim etkin ve penceresizse, denetimin klavye odağı varsa (denetimin kapsayıcısı tarafından belirlendiği gibi) veya odak olmadığında NULL döndürür this .

Aksi takdirde, odağı olan nesneyi döndürür CWnd (ile CWnd::GetFocusaynı).

Açıklamalar

SetFocus çağrıldığında etkinleştirilmiş penceresiz denetim odağı alır.

COleControl::GetFont

Stok Font özelliğinin Get işlevini uygular.

LPFONTDISP GetFont();

Dönüş Değeri

Denetimin stok Font özelliğinin yazı tipi gönderim arabirimine ilişkin bir işaretçi.

Açıklamalar

Çağıranın bittiğinde nesneyi serbest bırakması gerektiğini unutmayın. Denetimin uygulanmasında, denetimin stok Font nesnesine erişmek için kullanın InternalGetFont . Denetiminizde yazı tiplerini kullanma hakkında daha fazla bilgi için ActiveX Denetimleri: ActiveX Denetiminde Yazı Tiplerini Kullanma makalesine bakın.

COleControl::GetFontTextMetrics

Denetimin sahip olduğu herhangi bir CFontHolder nesne için metin ölçümlerini ölçer.

void GetFontTextMetrics(
    LPTEXTMETRIC lptm,
    CFontHolder& fontHolder);

Parametreler

lptm
TEXTMETRIC yapısının işaretçisi.

fontHolder
CFontHolder nesnesine başvuru.

Açıklamalar

Böyle bir yazı tipi COleControl::SelectFontObject işleviyle seçilebilir. GetFontTextMetricslptm tarafından işaret edilen yapıyı TEXTMETRIC başarılı olursa yazı tipiyle ilgili fontHoldergeçerli ölçüm bilgileriyle başlatır veya başarılı olmazsa yapıyı sıfırlarla doldurur. Denetiminizi boyarken GetTextMetrics yerine bu işlevi kullanmanız gerekir çünkü tüm katıştırılmış OLE nesneleri gibi denetimlerin kendilerini meta dosyada işlemesi gerekebilir.

TEXTMETRIC SelectFontObject işlevi çağrıldığında varsayılan yazı tipinin yapısı yenilenir. Sağladığı bilgilerin geçerli olduğundan emin olmak için yalnızca stok Yazı Tipi özelliğini seçtikten sonra aramanız GetFontTextMetrics gerekir.

COleControl::GetForeColor

Stok ForeColor özelliğinin Get işlevini uygular.

OLE_COLOR GetForeColor();

Dönüş Değeri

Dönüş değeri, başarılı olursa geçerli ön plan rengini OLE_COLOR değer olarak belirtir. Bu değer, çağrısıyla TranslateColorcolorref değerine çevrilebilir.

COleControl::GetHwnd

Stock hWnd özelliğinin Get işlevini uygular.

OLE_HANDLE GetHwnd();

Dönüş Değeri

VARSA OLE denetiminin pencere tutamacı; aksi takdirde NULL.

COleControl::GetMessageString

nID ile tanımlanan menü öğesinin amacını açıklayan kısa bir dize elde etmek için çerçeve tarafından çağrılır.

virtual void GetMessageString(
    UINT nID,
    CString& rMessage) const;

Parametreler

Nıd
Menü öğesi kimliği.

rMessage
Bir dizenin döndürüleceği CString nesnesine başvuru.

Açıklamalar

Bu, menü öğesi vurgulanırken durum çubuğunda görüntülenmek üzere bir ileti almak için kullanılabilir. Varsayılan uygulama, nID ile tanımlanan bir dize kaynağını yüklemeyi dener.

COleControl::GetNotSupported

Kullanıcının denetimin özellik değerine erişimini engeller.

void GetNotSupported();

Açıklamalar

Denetimin kullanıcısı tarafından özellik alınmasının desteklenmediği herhangi bir özelliğin Get işlevi yerine bu işlevi çağırın. Bir örnek, yalnızca yazma özelliği olabilir.

COleControl::GetReadyState

Denetimin hazır olma durumunu döndürür.

long GetReadyState();

Dönüş Değeri

Denetimin hazır olma durumu, aşağıdaki değerlerden biri:

Veri Akışı Adı Açıklama
READYSTATE_UNINITIALIZED Varsayılan başlatma durumu
READYSTATE_LOADING Denetim şu anda özelliklerini yüklüyor
READYSTATE_LOADED Denetim başlatıldı
READYSTATE_INTERACTIVE Denetim etkileşimli olmak için yeterli veriye sahip ancak tüm zaman uyumsuz veriler henüz yüklenmemiş
READYSTATE_COMPLETE Denetimin tüm verileri var

Açıklamalar

Çoğu basit denetimin YÜKLÜ ve ETKILEŞIMLI arasında ayrım yapmaya gerek yoktur. Ancak, veri yolu özelliklerini destekleyen denetimler, en azından bazı veriler zaman uyumsuz olarak alınana kadar etkileşimli olmaya hazır olmayabilir. Bir denetim en kısa sürede etkileşimli olmaya çalışmalıdır.

COleControl::GetRectInContainer

Denetimin kapsayıcıya göre dikdörtgeninin koordinatlarını alır ve cihaz birimleriyle ifade edilir.

BOOL GetRectInContainer(LPRECT lpRect);

Parametreler

lpRect
Denetimin koordinatlarının kopyalanacağı dikdörtgen yapısının işaretçisi.

Dönüş Değeri

Denetim yerinde etkinse sıfır olmayan; aksi takdirde 0.

Açıklamalar

Dikdörtgen yalnızca denetim yerinde etkinse geçerlidir.

COleControl::GetStockTextMetrics

SelectStockFont işleviyle seçilebilen denetimin stock Font özelliğinin metin ölçümlerini ölçer.

void GetStockTextMetrics(LPTEXTMETRIC lptm);

Parametreler

lptm
TEXTMETRIC yapısının işaretçisi.

Açıklamalar

İşlev, GetStockTextMetrics lptm tarafından işaret edilen yapıyı TEXTMETRIC başarılı olursa geçerli ölçüm bilgileriyle başlatır veya başarılı olmazsa yapıyı sıfırlarla doldurur. Denetiminizi boyarken GetTextMetrics yerine bu işlevi kullanın çünkü tüm katıştırılmış OLE nesneleri gibi denetimlerin kendilerini meta dosyada işlemesi gerekebilir.

TEXTMETRIC İşlev çağrıldığında varsayılan yazı tipinin SelectStockFont yapısı yenilenir. Bu işlevi ancak sağladığı bilgilerin geçerli olduğundan emin olmak için stok yazı tipini seçtikten sonra çağırmalısınız.

COleControl::GetText

Hisse senedi Metin veya Resim Yazısı özelliğinin Get işlevini uygular.

BSTR GetText();

Dönüş Değeri

Denetim metin dizesinin geçerli değeri veya dize yoksa sıfır uzunluklu bir dize.

Not

BSTR veri türü hakkında daha fazla bilgi için Makrolar ve GenelLer bölümündeki Veri Türleri bölümüne bakın.

Açıklamalar

Kaynağı boşaltmak için bu işlevi çağıranın döndürülen dizede çağrısı SysFreeString yapması gerektiğini unutmayın. Denetimin uygulanmasında, denetimin hisse senedi Metin veya Resim Yazısı özelliğine erişmek için kullanın InternalGetText .

COleControl::GetWindowlessDropTarget

Penceresiz bir denetimin OLE sürükleme ve bırakma işleminin hedefi olmasını istediğinizde geçersiz kılın GetWindowlessDropTarget .

virtual IDropTarget* GetWindowlessDropTarget();

Dönüş Değeri

Nesnenin arabiriminin işaretçisi IDropTarget . Penceresi olmadığından penceresiz bir nesne arabirimi IDropTarget kaydedemez. Ancak sürükleyip bırakma işlemine katılmak için penceresiz bir nesne arabirimini uygulamaya ve içinde GetWindowlessDropTargetdöndürebilir.

Açıklamalar

Normalde bu, denetimin penceresinin bırakma hedefi olarak kaydedilmesini gerektirir. Ancak denetimin kendi penceresi olmadığından, kapsayıcı bırakma hedefi olarak kendi penceresini kullanır. Denetimin yalnızca kapsayıcının IDropTarget uygun zamanda çağrıları temsilci olarak seçebileceği arabirimin bir uygulamasını sağlaması gerekir. Örneğin:

IDropTarget *CMyAxCtrl::GetWindowlessDropTarget()
{
   m_xDropTarget.AddRef();
   return &m_xDropTarget;
}

COleControl::InitializeIIDs

Denetimin kullanacağı IID'lerin temel sınıfını bildirir.

void InitializeIIDs(
    const IID* piidPrimary,
    const IID* piidEvents);

Parametreler

piidPrimary
Denetimin birincil dağıtım arabiriminin arabirim kimliğinin işaretçisi.

piidEvents
Denetimin olay arabiriminin arabirim kimliğinin işaretçisi.

Açıklamalar

Denetiminizin kullanacağı arabirim kimliklerinin temel sınıfını bilgilendirmek için denetimin oluşturucusunda bu işlevi çağırın.

COleControl::InternalGetFont

Denetiminizin stok Font özelliğine erişir

CFontHolder& InternalGetFont();

Dönüş Değeri

Stok Font nesnesini içeren bir CFontHolder nesnesine başvuru.

COleControl::InternalGetText

Denetiminizin hisse senedi Metin veya Resim Yazısı özelliğine erişir.

const CString& InternalGetText();

Dönüş Değeri

Denetim metin dizesine başvuru.

COleControl::InternalSetReadyState

Denetimin hazır olma durumunu ayarlar.

void InternalSetReadyState(long lNewReadyState);

Parametreler

lNewReadyState
Denetim için ayarlanacağı hazır olma durumu, aşağıdaki değerlerden biri:

Veri Akışı Adı Açıklama
READYSTATE_UNINITIALIZED Varsayılan başlatma durumu
READYSTATE_LOADING Denetim şu anda özelliklerini yüklüyor
READYSTATE_LOADED Denetim başlatıldı
READYSTATE_INTERACTIVE Denetim etkileşimli olmak için yeterli veriye sahip ancak tüm zaman uyumsuz veriler henüz yüklenmemiş
READYSTATE_COMPLETE Denetimin tüm verileri var

Açıklamalar

Çoğu basit denetimin YÜKLÜ ve ETKILEŞIMLI arasında ayrım yapmaya gerek yoktur. Ancak, veri yolu özelliklerini destekleyen denetimler, en azından bazı veriler zaman uyumsuz olarak alınana kadar etkileşimli olmaya hazır olmayabilir. Bir denetim en kısa sürede etkileşimli olmaya çalışmalıdır.

COleControl::InvalidateControl

Denetimi kendini yeniden çizmeye zorlar.

void InvalidateControl(
    LPCRECT lpRect = NULL,
    BOOL bErase = TRUE);

Parametreler

lpRect
Geçersiz kılınacak denetimin bölgesine ilişkin bir işaretçi.

bErase
Güncelleştirme bölgesi işlendiğinde, güncelleştirme bölgesindeki arka plan silinip silinmeyeceğini belirtir.

Açıklamalar

lpRect'in NULL değeri varsa, denetimin tamamı yeniden çizilecektir. lpRect NULL değilse, denetimin dikdörtgeninin geçersiz kılınacak bölümünü gösterir. Denetimin penceresi olmadığı veya şu anda etkin olmadığı durumlarda dikdörtgen yoksayılır ve istemci sitesinin IAdviseSink::OnViewChange üye işlevine çağrı yapılır. veya InvalidateRectyerine CWnd::InvalidateRect bu işlevi kullanın.

COleControl::InvalidateRgn

Kapsayıcı penceresinin belirtilen bölge içindeki istemci alanını geçersiz kılabilir.

void InvalidateRgn(CRgn* pRgn, BOOL bErase = TRUE);

Parametreler

pRgn
İçeren pencerenin istemci koordinatlarında, OLE nesnesinin geçersiz kılınacak görüntüleme bölgesini tanımlayan bir CRgn nesnesi işaretçisi. Bu parametre NULL ise, kapsam nesnenin tamamıdır.

bErase
Geçersiz kılınan bölge içindeki arka planının silinip silinmeyeceğini belirtir. TRUE ise arka plan silinir. YANLIŞ ise arka plan değişmeden kalır.

Açıklamalar

Bu, kapsayıcı içindeki penceresiz denetimleri yeniden çizmek için kullanılabilir. Geçersiz kılınan bölge ve güncelleştirme bölgesindeki diğer tüm alanlar, bir sonraki WM_PAINT iletisi gönderildiğinde boyama için işaretlenir.

Güncelleştirme bölgesinin herhangi bir bölümü için bErase TRUE ise, yalnızca belirtilen bölümde değil bölgenin tamamında arka plan silinir.

COleControl::IsConvertingVBX

OLE denetiminin özel yüklenmesine izin verir.

BOOL IsConvertingVBX();

Dönüş Değeri

Denetim dönüştürülüyorsa sıfır olmayan; aksi takdirde 0.

Açıklamalar

VBX denetimlerini kullanan bir formu OLE denetimlerini kullanan bir forma dönüştürürken, OLE denetimleri için özel yükleme kodu gerekebilir. Örneğin, OLE denetiminizin bir örneğini yüklüyorsanız, içinde DoPropExchangePX_Font çağrısı olabilir:

PX_Font(pPX, _T("Font"), *m_pMyFont, &DefaultFont);

Ancak VBX denetimlerinin Font nesnesi yoktu; her yazı tipi özelliği tek tek kaydedildi. Bu durumda, şu iki durumu ayırt etmek için kullanabilirsiniz IsConvertingVBX :

if (!IsConvertingVBX())
{
   PX_Font(pPX, _T("Font"), *m_pMyFont, &DefaultFont);
}
else
{
   PX_String(pPX, _T("FontName"), tempString, DefaultName);
   m_pMyFont->m_pFont->put_Name(tempString.AllocSysString());
   PX_Bool(pPX, _T("FontUnderline"), tempBool, DefaultValue);
   m_pMyFont->m_pFont->put_Underline(tempBool);
}

VbX denetiminizin özel ikili verileri (VBM_SAVEPROPERTY ileti işleyicisinde) kaydetmesi ve OLE denetiminizin ikili verilerini farklı bir biçimde kaydetmesi başka bir durum olabilir. OLE denetiminizin VBX denetimiyle geriye dönük uyumlu olmasını istiyorsanız, VBX denetiminin mi yoksa OLE denetiminin mi yüklendiğini ayırt ederek işlevini kullanarak IsConvertingVBX hem eski hem de yeni biçimleri okuyabilirsiniz.

Denetiminizin DoPropExchange işlevinde bu koşulu denetleyebilirsiniz ve doğruysa, bu dönüştürmeye özgü yük kodunu yürütebilirsiniz (önceki örnekler gibi). Denetim dönüştürülmezse normal yük kodu yürütebilirsiniz. Bu özellik yalnızca VBX karşılık gelenlerinden dönüştürülen denetimler için geçerlidir.

COleControl::IsInvokeAllowed

Otomasyon yöntemi çağırmayı etkinleştirir.

BOOL IsInvokeAllowed(DISPID dispid);

Dönüş Değeri

Denetim başlatıldıysa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Çerçevenin belirli bir işlevin IDispatch::Invoke (tarafından dispidtanımlanan) çağrılıp çağrılmadığını belirlemek için çağrısı IsInvokeAllowed uygulaması. OLE denetimi için varsayılan davranış, otomasyon yöntemlerinin yalnızca denetim başlatıldıysa çağrılmasına izin vermektir; ancak, IsInvokeAllowed bir sanal işlevdir ve gerekirse geçersiz kılınabilir (örneğin, denetim otomasyon sunucusu olarak kullanılırken).

COleControl::IsModified

Denetimin durumunun değiştirilip değiştirilmediğini belirler.

BOOL IsModified();

Dönüş Değeri

Denetimin durumu en son kaydedildikten sonra değiştirilmişse sıfır olmayan; aksi takdirde 0.

Açıklamalar

Bir özellik değeri değiştirdiğinde denetimin durumu değiştirilir.

COleControl::IsOptimizedDraw

Kapsayıcının geçerli çizim işlemi için iyileştirilmiş çizimi destekleyip desteklemediğini belirler.

BOOL IsOptimizedDraw();

Dönüş Değeri

Kapsayıcı geçerli çizim işlemi için iyileştirilmiş çizimi destekliyorsa TRUE; aksi takdirde YANLIŞ.

Açıklamalar

İyileştirilmiş çizim destekleniyorsa, çizim tamamlandığında denetimin cihaz bağlamında eski nesneleri (kalemler, fırçalar, yazı tipleri vb.) seçmesi gerekmez.

COleControl::IsSubclassedControl

Denetimin bir Windows denetimini alt sınıfa eklenip sınıflandırmadığını belirlemek için çerçeve tarafından çağrılır.

virtual BOOL IsSubclassedControl();

Dönüş Değeri

Denetim alt sınıflanmışsa sıfır olmayan; aksi takdirde 0.

Açıklamalar

OLE denetiminiz bir Windows denetimini alt sınıflarsa bu işlevi geçersiz kılmanız ve TRUE döndürmeniz gerekir.

COleControl::Load

Zaman uyumsuz olarak yüklenen önceki verileri sıfırlar ve denetimin zaman uyumsuz özelliğinin yeni bir yüklemesini başlatır.

void Load(LPCTSTR strNewPath, CDataPathProperty& prop);

Parametreler

strNewPath
Zaman uyumsuz denetim özelliğinin mutlak konumuna başvuran yolu içeren bir dize işaretçisi.

Pervane
Zaman uyumsuz denetim özelliği uygulayan bir CDataPathProperty nesnesi.

COleControl::LockInPlaceActive

Kapsayıcının denetiminizi devre dışı bırakmasını engeller.

BOOL LockInPlaceActive(BOOL bLock);

Parametreler

blok
Denetimin yerinde etkin durumu kilitlenecekse TRUE; Kilidi açıksa YANLIŞ.

Dönüş Değeri

Kilit başarılı olursa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Denetimin her kilitlenmesinin tamamlandığında denetimin kilidinin açılmasıyla eşlenmesi gerektiğini unutmayın. Denetiminizi yalnızca bir olayı tetiklerken olduğu gibi kısa süreler için kilitlemeniz gerekir.

COleControl::OnAmbientPropertyChange

Kapsayıcının bir ortam özelliği değeri değiştirdiğinde çerçeve tarafından çağrılır.

virtual void OnAmbientPropertyChange(DISPID dispid);

Parametreler

dispID
Değişen ortam özelliğinin dağıtım kimliği veya birden çok özellik değiştiyse DISPID_UNKNOWN.

COleControl::OnAppearanceChanged

Hisse senedi Görünümü özellik değeri değiştiğinde çerçeve tarafından çağrılır.

virtual void OnAppearanceChanged ();

Açıklamalar

Bu özellik değiştikten sonra bildirim almak istiyorsanız bu işlevi geçersiz kılın. Varsayılan uygulama öğesini çağırır InvalidateControl.

COleControl::OnBackColorChanged

Hisse senedi BackColor özellik değeri değiştiğinde çerçeve tarafından çağrılır.

virtual void OnBackColorChanged();

Açıklamalar

Bu özellik değiştikten sonra bildirim almak istiyorsanız bu işlevi geçersiz kılın. Varsayılan uygulama öğesini çağırır InvalidateControl.

COleControl::OnBorderStyleChanged

Stock BorderStyle özellik değeri değiştiğinde çerçeve tarafından çağrılır.

virtual void OnBorderStyleChanged();

Açıklamalar

Varsayılan uygulama öğesini çağırır InvalidateControl.

Bu özellik değiştikten sonra bildirim almak istiyorsanız bu işlevi geçersiz kılın.

COleControl::OnClick

Bir fare düğmesine tıklandığında veya DoClick stok yöntemi çağrıldığında çerçeve tarafından çağrılır.

virtual void OnClick(USHORT iButton);

Parametreler

iButton
Fare düğmesinin dizini. Aşağıdaki değerlerden birine sahip olabilir:

  • LEFT_BUTTON Sol fare düğmesine tıklandı.

  • MIDDLE_BUTTON Ortadaki fare düğmesine tıklandı.

  • RIGHT_BUTTON Sağ fare düğmesine tıklandı.

Açıklamalar

Varsayılan uygulama öğesini çağırır COleControl::FireClick.

Varsayılan işlemeyi değiştirmek veya genişletmek için bu üye işlevini geçersiz kılın.

COleControl::OnClose

Kapsayıcı denetimin işlevini çağırdığında çerçeve tarafından çağrılır IOleControl::Close .

virtual void OnClose(DWORD dwSaveOption);

Parametreler

dwSaveOption
Yüklemeden önce nesnenin kaydedilip kaydedilmeyeceğini gösteren bayrak. Geçerli değerler:

  • OLECLOSE_SAVEIFDIRTY

  • OLECLOSE_NOSAVE

  • OLECLOSE_PROMPTSAVE

Açıklamalar

Varsayılan olarak, OnClose değiştirilmişse ve dwSaveOption OLECLOSE_SAVEIFDIRTY veya OLECLOSE_PROMPTSAVE ise denetim nesnesini kaydeder.

COleControl::OnDoVerb

Kapsayıcı üye işlevini çağırdığında çerçeve tarafından çağrılır IOleObject::DoVerb .

virtual BOOL OnDoVerb(
    LONG iVerb,
    LPMSG lpMsg,
    HWND hWndParent,
    LPCRECT lpRect);

Parametreler

iVerb
Çağrılacak denetim fiilinin dizini.

lpMsg
Fiilin çağrılmasına neden olan Windows iletisi işaretçisi.

hWndParent
Denetimin üst penceresinin tutamacı. Fiilin yürütülmesi bir pencere (veya pencereler) oluşturuyorsa, hWndParent üst öğe olarak kullanılmalıdır.

lpRect
Kapsayıcıya göre denetimin koordinatlarının kopyalanacağı RECT yapısının işaretçisi.

Dönüş Değeri

Çağrı başarılı olursa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Varsayılan uygulama, çağrılacak uygun işlevi belirlemek için ON_OLEVERB ve ON_STDOLEVERB ileti eşleme girdilerini kullanır.

Fiilin varsayılan işlemesini değiştirmek için bu işlevi geçersiz kılın.

COleControl::OnDraw

Belirtilen cihaz bağlamını kullanarak belirtilen sınırlayıcı dikdörtgende OLE denetimini çizmek için çerçeve tarafından çağrılır.

virtual void OnDraw(
    CDC* pDC,
    const CRect& rcBounds,
    const CRect& rcInvalid);

Parametreler

pDC
Çizimin gerçekleştiği cihaz bağlamı.

rcBounds
Denetimin kenarlık dahil dikdörtgen alanı.

rcInvalid
Denetimin geçersiz dikdörtgen alanı.

Açıklamalar

OnDrawgenellikle ekran görüntüsü için çağrılır ve bir ekran cihazı bağlamı pDC olarak geçirilir. rcBounds parametresi hedef cihaz bağlamındaki dikdörtgeni tanımlar (geçerli eşleme moduna göre). rcInvalid parametresi geçersiz olan gerçek dikdörtgendir. Bazı durumlarda bu, rcBounds değerinden daha küçük bir alan olacaktır.

COleControl::OnDrawMetafile

Belirtilen meta dosyası cihaz bağlamını kullanarak belirtilen sınırlayıcı dikdörtgende OLE denetimini çizmek için çerçeve tarafından çağrılır.

virtual void OnDrawMetafile(
    CDC* pDC,
    const CRect& rcBounds);

Parametreler

pDC
Çizimin gerçekleştiği cihaz bağlamı.

rcBounds
Denetimin kenarlık dahil dikdörtgen alanı.

Açıklamalar

Varsayılan uygulama OnDraw işlevini çağırır.

COleControl::OnEdit

Denetimin kullanıcı arabiriminin etkinleştirilmesine neden olur.

virtual BOOL OnEdit(
    LPMSG lpMsg,
    HWND hWndParent,
    LPCRECT lpRect);

Parametreler

lpMsg
Fiili çağıran Windows iletisinin işaretçisi.

hWndParent
Denetimin üst penceresinin tutamacı.

lpRect
Kapsayıcıdaki denetim tarafından kullanılan dikdörtgenin işaretçisi.

Dönüş Değeri

Çağrı başarılı olursa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Bu, denetimin OLEIVERB_UIACTIVATE fiilini çağırmayla aynı etkiye sahiptir.

Bu işlev genellikle bir ON_OLEVERB ileti eşleme girdisi için işleyici işlevi olarak kullanılır. Bu, denetimin "Nesne" menüsünde bir "Düzenle" fiilini kullanılabilir hale getirir. Örneğin:

ON_OLEVERB(AFX_IDS_VERB_EDIT, OnEdit)

COleControl::OnEnabledChanged

Hisse senedi Etkin özellik değeri değiştiğinde çerçeve tarafından çağrılır.

virtual void OnEnabledChanged();

Açıklamalar

Bu özellik değiştikten sonra bildirim almak istiyorsanız bu işlevi geçersiz kılın. Varsayılan uygulama InvalidateControl'i çağırır.

COleControl::OnEnumVerbs

Kapsayıcı üye işlevini çağırdığında çerçeve tarafından çağrılır IOleObject::EnumVerbs .

virtual BOOL OnEnumVerbs(LPENUMOLEVERB* ppenumOleVerb);

Parametreler

ppenumOleVerb
Denetimin IEnumOLEVERB fiillerini numaralandıran nesne işaretçisi.

Dönüş Değeri

Fiiller varsa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Varsayılan uygulama, ileti eşlemesindeki ON_OLEVERB girdilerini numaralandırır.

Fiilleri numaralandırmanın varsayılan yolunu değiştirmek için bu işlevi geçersiz kılın.

COleControl::OnEventAdvise

Bir olay işleyicisi ole denetimine bağlandığında veya ole denetimiyle bağlantısı kesildiğinde çerçeve tarafından çağrılır.

virtual void OnEventAdvise(BOOL bAdvise);

Parametreler

bVise ekle
TRUE, denetime bir olay işleyicisinin bağlandığını gösterir. YANLIŞ, bir olay işleyicisinin denetimle bağlantısının kesildiğini gösterir.

COleControl::OnFontChanged

Hisse senedi Yazı Tipi özellik değeri değiştiğinde çerçeve tarafından çağrılır.

virtual void OnFontChanged();

Açıklamalar

Varsayılan uygulama öğesini çağırır COleControl::InvalidateControl. Denetim bir Windows denetiminin alt sınıfını veriyorsa, varsayılan uygulama denetimin penceresine bir WM_SETFONT iletisi de gönderir.

Bu özellik değiştikten sonra bildirim almak istiyorsanız bu işlevi geçersiz kılın.

Örnek

void CMyAxCtrl::OnFontChanged()
{
   // Always set it to the container's font
   if (m_MyEdit.m_hWnd != NULL)
   {
      IFontDisp *pFontDisp = NULL;
      IFont *pFont = NULL;
      HRESULT hr;

      // Get the container's FontDisp interface
      pFontDisp = AmbientFont();
      if (pFontDisp)
      {
         hr = pFontDisp->QueryInterface(IID_IFont, (LPVOID*)&pFont);
         if (FAILED(hr))
         {
            pFontDisp->Release();
            return;
         }
      }

      HFONT hFont = NULL;
      if (pFont)
      {
         pFont->get_hFont(&hFont);
         m_MyEdit.SendMessage(WM_SETFONT, (WPARAM)hFont, 0L);
      }

      pFontDisp->Release();
   }

   // Invalidate the control
   m_MyEdit.Invalidate();
   m_MyEdit.UpdateWindow();

   COleControl::OnFontChanged();
}

COleControl::OnForeColorChanged

Stok ForeColor özellik değeri değiştiğinde çerçeve tarafından çağrılır.

virtual void OnForeColorChanged();

Açıklamalar

Varsayılan uygulama öğesini çağırır InvalidateControl.

Bu özellik değiştikten sonra bildirim almak istiyorsanız bu işlevi geçersiz kılın.

COleControl::OnFreezeEvents

Kapsayıcı çağrısından sonra çerçeve tarafından çağrılır IOleControl::FreezeEvents.

virtual void OnFreezeEvents(BOOL bFreeze);

Parametreler

bFreeze
Denetimin olay işlemesi dondurulduysa TRUE; aksi takdirde YANLIŞ.

Açıklamalar

Varsayılan uygulama hiçbir şey yapmaz.

Olay işleme dondurulurken veya dondurulmazsa ek bir davranış istiyorsanız bu işlevi geçersiz kılın.

COleControl::OnGetColorSet

Kapsayıcı üye işlevini çağırdığında çerçeve tarafından çağrılır IViewObject::GetColorSet .

virtual BOOL OnGetColorSet(
    DVTARGETDEVICE* ptd,
    HDC hicTargetDev,
    LPLOGPALETTE* ppColorSet);

Parametreler

ptd
Resmin işlenmesi gereken hedef cihazı gösterir. Bu değer NULL ise, resim varsayılan hedef cihaz (genellikle bir görüntüleme cihazı) için işlenmelidir.

hicTargetDev
Ptd tarafından belirtilen hedef cihazdaki bilgi bağlamını belirtir. Bu parametre bir cihaz bağlamı olabilir, ancak mutlaka bir parametre değildir. Ptd NULL ise, hicTargetDev de NULL olmalıdır.

ppColorSet
Kullanılacak renk kümesinin kopyalanacağı konuma ilişkin bir işaretçi. İşlev renk kümesini döndürmezse NULL döndürülür.

Dönüş Değeri

Geçerli bir renk kümesi döndürülürse sıfır olmayan; aksi takdirde 0.

Açıklamalar

Kapsayıcı, OLE denetimini çizmek için gereken tüm renkleri almak için bu işlevi çağırır. Kapsayıcı, genel renk paletini ayarlamak için ihtiyaç duyduğu renklerle birlikte elde edilen renk kümelerini kullanabilir. Varsayılan uygulama FALSE döndürür.

Bu isteğin herhangi bir özel işlemini yapmak için bu işlevi geçersiz kılın.

COleControl::OnGetControlInfo

Denetimin kapsayıcısı denetim hakkında bilgi istediği zaman çerçeve tarafından çağrılır.

virtual void OnGetControlInfo(LPCONTROLINFO pControlInfo);

Parametreler

pControlInfo
Doldurulacak CONTROLINFO yapısının işaretçisi.

Açıklamalar

Bu bilgiler öncelikli olarak denetimin anımsatıcı anahtarlarının açıklamasından oluşur. Varsayılan uygulama, pControlInfo'yu varsayılan bilgilerle doldurur.

Denetiminizin anımsatıcı anahtarları işlemesi gerekiyorsa bu işlevi geçersiz kılın.

COleControl::OnGetDisplayString

dispid tarafından tanımlanan özelliğin geçerli değerini temsil eden bir dize almak için çerçeve tarafından çağrılır.

virtual BOOL OnGetDisplayString(
    DISPID dispid,
    CString& strValue);

Parametreler

dispid
Denetimin bir özelliğinin dağıtım kimliği.

strValue
Bir dizenin döndürüleceği CString nesnesine başvuru.

Dönüş Değeri

StrValue içinde bir dize döndürüldüyse sıfır olmayan; aksi takdirde 0.

Açıklamalar

Denetiminizin değeri doğrudan bir dizeye dönüştürülemeyen bir özelliği varsa ve özelliğin değerinin kapsayıcı tarafından sağlanan özellik tarayıcısında görüntülenmesini istiyorsanız bu işlevi geçersiz kılın.

COleControl::OnGetInPlaceMenu

Kapsayıcının mevcut menüsüyle birleştirilecek menüyü almak için denetim kullanıcı arabirimi etkinleştirildiğinde çerçeve tarafından çağrılır.

virtual HMENU OnGetInPlaceMenu();

Dönüş Değeri

Denetimin menüsünün tutamacı veya denetimin hiçbiri yoksa NULL. Varsayılan uygulama NULL döndürür.

Açıklamalar

OLE kaynaklarını birleştirme hakkında daha fazla bilgi için Menüler ve Kaynaklar (OLE) makalesine bakın.

COleControl::OnGetNaturalExtent

Kapsayıcının isteğine yanıt olarak çerçeve tarafından çağrılır IViewObjectEx::GetNaturalExtent .

virtual BOOL OnGetNaturalExtent(
    DWORD dwAspect,
    LONG lindex,
    DVTARGETDEVICE* ptd,
    HDC hicTargetDev,
    DVEXTENTINFO* pExtentInfo,
    LPSIZEL psizel);

Parametreler

dwAspect
Nesnenin nasıl temsil edilecek olduğunu belirtir. Gösterimler içerik, simge, küçük resim veya yazdırılan belgedir. Geçerli değerler DVASPECT veya DVASPECT2 numaralandırmasından alınır.

lindex
Nesnenin ilgi çekici olan bölümü. Şu anda yalnızca -1 geçerlidir.

ptd
Nesnenin boyutunun döndürülmesi gereken hedef cihazı tanımlayan DVTARGETDEVICE yapısını gösterir.

hicTargetDev
Nesnenin cihaz ölçümlerini ayıklayıp cihazın özelliklerini test ettiği ptd parametresiyle belirtilen hedef cihaz için bilgi bağlamını belirtir. ptd NULL ise, nesne hicTargetDev parametresindeki değeri yoksaymalıdır.

pExtentInfo
DVEXTENTINFO Boyutlandırma verilerini belirten yapıya işaret eder. Yapı DVEXTENTINFO şöyledir:

typedef struct tagExtentInfo
{
    UINT cb;
    DWORD dwExtentMode;
    SIZEL sizelProposed;
}   DVEXTENTINFO;

Yapı üyesi dwExtentMode iki değerden birini alabilir:

  • DVEXTENT_CONTENT İçeriği tam olarak sığdırmak için denetimin ne kadar büyük olması gerektiğini sorgula (küçük harfe uydur)

  • DVEXTENT_INTEGRAL Yeniden boyutlandırırken önerilen boyutu denetime geçirin

psizel
Denetim tarafından döndürülen boyutlandırma verilerini gösterir. Döndürülen boyutlandırma verileri, ayarlanmamış herhangi bir boyut için -1 olarak ayarlanır.

Dönüş Değeri

Boyutu başarıyla döndürür veya ayarlarsa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Nesnenin önerilen boyuta en yakın görüntü boyutunu ve yapıda DVEXTENTINFO ex çadır modu döndürmek için bu işlevi geçersiz kılın. Varsayılan uygulama YANLIŞ döndürür ve boyutta hiçbir ayarlama yapmaz.

COleControl::OnGetPredefinedStrings

Bir özelliğin olası değerlerini temsil eden önceden tanımlanmış dize kümesini almak için çerçeve tarafından çağrılır.

virtual BOOL OnGetPredefinedStrings(
    DISPID dispid,
    CStringArray* pStringArray,
    CDWordArray* pCookieArray);

Parametreler

dispid
Denetimin bir özelliğinin dağıtım kimliği.

pStringArray
Dönüş değerleriyle doldurulacak dize dizisi.

pCookieArray
Dönüş değerleriyle doldurulacak bir DWORD dizisi.

Dönüş Değeri

pStringArray ve pCookieArray öğeleri eklendiyse sıfır olmayan.

Açıklamalar

Denetiminizin dizelerle temsil edilebilecek olası değerler kümesine sahip bir özelliği varsa bu işlevi geçersiz kılın. pStringArray'e eklenen her öğe için, pCookieArray'e karşılık gelen bir "cookie" öğesi eklemeniz gerekir. Bu "tanımlama bilgisi" değerleri daha sonra çerçeve tarafından işleve COleControl::OnGetPredefinedValue geçirilebilir.

COleControl::OnGetPredefinedValue

Daha önce geçersiz kılma tarafından döndürülen önceden tanımlanmış dizelerden birine karşılık gelen değeri almak için çerçeve tarafından çağrılır COleControl::OnGetPredefinedStrings.

virtual BOOL OnGetPredefinedValue(
    DISPID dispid,
    DWORD dwCookie,
    VARIANT* lpvarOut);

Parametreler

dispid
Denetimin bir özelliğinin dağıtım kimliği.

dwCookie
Daha önce geçersiz kılma COleControl::OnGetPredefinedStringstarafından döndürülen bir tanımlama bilgisi değeri.

lpvarOut
Bir özellik değerinin döndürüleceği yapıya VARIANT işaretçi.

Dönüş Değeri

LpvarOut'ta bir değer döndürüldüyse sıfır olmayan; aksi takdirde 0.

COleControl::OnGetViewExtent

Kapsayıcının IViewObject2::GetExtent isteğine yanıt olarak çerçeve tarafından çağrılır .

virtual BOOL OnGetViewExtent(
    DWORD dwDrawAspect,
    LONG lindex,
    DVTARGETDEVICE* ptd,
    LPSIZEL lpsizel);

Parametreler

dwDrawAspect
Bir nesnenin hangi biçiminin veya yönünün görüntüleneceğini açıklayan DWORD. Geçerli değerler DVASPECT veya DVASPECT2 numaralandırmasından alınır.

lindex
Nesnenin ilgi çekici olan bölümü. Şu anda yalnızca -1 geçerlidir.

ptd
Nesnenin boyutunun döndürülmesi gereken hedef cihazı tanımlayan DVTARGETDEVICE yapısını gösterir.

lpsizel
Nesnenin boyutunun döndürüldüğü konumu gösterir.

Dönüş Değeri

Kapsam bilgileri başarıyla döndürülürse sıfır olmayan; aksi takdirde 0.

Açıklamalar

Denetiminiz iki geçişli çizim kullanıyorsa ve opak ve saydam bölümleri farklı boyutlara sahipse bu işlevi geçersiz kılın.

COleControl::OnGetViewRect

Kapsayıcının isteğine yanıt olarak çerçeve tarafından çağrılır IViewObjectEx::GetRect .

virtual BOOL OnGetViewRect(DWORD dwAspect, LPRECTL pRect);

Parametreler

dwAspect
Bir nesnenin hangi biçiminin veya yönünün görüntüleneceğini açıklayan DWORD. DVASPECT veya DVASPECT2 numaralandırmasından geçerli değerler alınır:

  • DVASPECT_CONTENT nesnenin tamamını sınırlayan dikdörtgen. Nesnenin kaynağında sol üst köşe ve tarafından GetViewExtentdöndürülen uzantıya eşit boyut.

  • DVASPECT_OPAQUE Dikdörtgen opak bölgeli nesneler bu dikdörtgeni döndürür. Diğerleri başarısız olur.

  • DVASPECT_TRANSPARENT Tüm saydam veya düzensiz parçaları kapsayan Dikdörtgen.

pRect
Nesnenin çizilmesi gereken dikdörtgeni belirten RECTL yapısını gösterir. Bu parametre nesnenin konumlandırılmasını ve esnetilmesini denetler.

Dönüş Değeri

Nesneye boyutlandırılmış dikdörtgen başarıyla döndürülürse sıfır olmayan; aksi takdirde 0.

Açıklamalar

Nesnenin boyutu, tarafından belirli bir konumdan başlayan bir dikdörtgene dönüştürülür OnGetViewRect (varsayılan değer, ekranın sol üst köşesidir). Denetiminiz iki geçişli çizim kullanıyorsa ve opak ve saydam bölümleri farklı boyutlara sahipse bu işlevi geçersiz kılın.

COleControl::OnGetViewStatus

Kapsayıcının isteğine yanıt olarak çerçeve tarafından çağrılır IViewObjectEx::GetViewStatus .

virtual DWORD OnGetViewStatus();

Dönüş Değeri

Başarılı olursa VIEWSTATUS numaralandırmasının değerlerinden biri; aksi takdirde 0. Olası değerler aşağıdakilerin herhangi bir bileşimidir:

Veri Akışı Adı Açıklama
VIEWSTATUS_OPAQUE Nesne tamamen opak. Bu bit ayarlanmazsa, nesne saydam parçalar içerir. Bu bit yalnızca içerikle ilgili konular için geçerlidir, DVASPECT_ICON veya DVASPECT_DOCPRINT için geçerli değildir.
VIEWSTATUS_SOLIDBKGND Nesnenin düz bir arka planı vardır (fırça deseni değil düz bir renkle oluşur). Bu bit yalnızca VIEWSTATUS_OPAQUE ayarlandığında ve yalnızca içerikle ilgili açılardan uygulandığında ve DVASPECT_ICON veya DVASPECT_DOCPRINT için geçerli değilse anlamlıdır.
VIEWSTATUS_DVASPECTOPAQUE Nesne DVASPECT_OPAQUE destekler. Bir çizim yönünü parametre olarak alan tüm IViewObjectEx yöntemleri bu açıdan çağrılabilir.
VIEWSTATUS_DVASPECTTRANSPARENT Nesne DVASPECT_TRANSPARENT destekler. Bir çizim yönünü parametre olarak alan tüm IViewObjectEx yöntemler bu yönüyle çağrılabilir.

Açıklamalar

Denetiminiz iki geçişli çizim kullanıyorsa bu işlevi geçersiz kılın. Varsayılan uygulama VIEWSTATUS_OPAQUE döndürür.

COleControl::OnHideToolBars

Denetim kullanıcı arabirimi devre dışı bırakıldığında çerçeve tarafından çağrılır.

virtual void OnHideToolBars();

Açıklamalar

Uygulama tarafından OnShowToolbarsgörüntülenen tüm araç çubuklarını gizlemelidir.

COleControl::OnInactiveMouseMove

WM_MOUSEMOVE iletisinin alınması üzerine fare işaretçisinin altında etkin olmayan nesne için kapsayıcı tarafından çağrılır.

virtual void OnInactiveMouseMove(
    LPCRECT lprcBounds,
    long x,
    long y,
    DWORD dwKeyState);

Parametreler

lprcBounds
İçeren pencerenin istemci koordinatlarında nesne sınırlayıcı dikdörtgen. WM_MOUSEMOVE iletisi alındığında nesneye ekrandaki konumunu ve boyutunu bildirir.

x
İçeren pencerenin istemci koordinatlarında fare konumunun x koordinatı.

y
İçeren pencerenin istemci koordinatlarında fare konumunun y koordinatı.

dwKeyState
Klavyedeki klavye değiştirici tuşlarının geçerli durumunu tanımlar. Geçerli değerler MK_CONTROL, MK_SHIFT, MK_ALT, MK_BUTTON, MK_LBUTTON, MK_MBUTTON ve MK_RBUTTON herhangi bir bayrak birleşimi olabilir.

Açıklamalar

Fare imlecinin konumunu geçirmek için pencere istemci koordinatlarının (piksel) kullanıldığını unutmayın. Bu, nesnenin sınırlayıcı dikdörtgeninin aynı koordinat sistemine geçirilmesiyle de mümkün hale gelir.

COleControl::OnInactiveSetCursor

WM_SETCURSOR iletisinin alınması üzerine fare işaretçisinin altında etkin olmayan nesne için kapsayıcı tarafından çağrılır.

virtual BOOL OnInactiveSetCursor(
    LPCRECT lprcBounds,
    long x,
    long y,
    DWORD dwMouseMsg,
    BOOL bSetAlways);

Parametreler

lprcBounds
İçeren pencerenin istemci koordinatlarında nesne sınırlayıcı dikdörtgen. WM_SETCURSOR iletisi alındığında nesneye ekrandaki konumunu ve boyutunu bildirir.

x
İçeren pencerenin istemci koordinatlarında fare konumunun x koordinatı.

y
İçeren pencerenin istemci koordinatlarında fare konumunun y koordinatı.

dwMouseMsg
WM_SETCURSOR oluştuğu fare iletisinin tanımlayıcısı.

bSetAlways
Nesnenin imleci ayarlayıp ayarlamayacağını belirtir. TRUE ise, nesne imleci ayarlamalıdır; FALSE ise, imleç imleci ayarlamakla yükümlü değildir ve bu durumda S_FALSE döndürmelidir.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Fare imlecinin konumunu geçirmek için pencere istemci koordinatlarının (piksel) kullanıldığını unutmayın. Bu, nesnenin sınırlayıcı dikdörtgeninin aynı koordinat sistemine geçirilmesiyle de mümkün hale gelir.

COleControl::OnKeyDownEvent

Hisse senedi KeyDown olayı işlendikten sonra çerçeve tarafından çağrılır.

virtual void OnKeyDownEvent(
    USHORT nChar,
    USHORT nShiftState);

Parametreler

nChar
Basılan anahtarın sanal anahtar kodu değeri. Standart sanal anahtar kodlarının listesi için bkz. Winuser.h

nShiftState
Aşağıdaki bayrakların bir bileşimini içerir:

  • SHIFT_MASK Eylem sırasında SHIFT tuşuna basıldı.

  • CTRL_MASK Eylem sırasında CTRL tuşuna basıldı.

  • ALT_MASK Eylem sırasında ALT tuşuna basıldı.

Açıklamalar

Olay tetiklendikten sonra denetiminizin anahtar bilgilerine erişmesi gerekiyorsa bu işlevi geçersiz kılın.

COleControl::OnKeyPressEvent

Stok KeyPress olayı tetiklendikten sonra çerçeve tarafından çağrılır.

virtual void OnKeyPressEvent(USHORT nChar);

Parametreler

nChar
Basılan anahtarın sanal anahtar kodu değerini içerir. Standart sanal anahtar kodlarının listesi için bkz. Winuser.h

Açıklamalar

nChar değerinin kapsayıcı tarafından değiştirilmiş olabileceğini unutmayın.

Bu olay gerçekleştikten sonra bildirim almak istiyorsanız bu işlevi geçersiz kılın.

COleControl::OnKeyUpEvent

Hisse senedi KeyDown olayı işlendikten sonra çerçeve tarafından çağrılır.

virtual void OnKeyUpEvent(
    USHORT nChar,
    USHORT nShiftState);

Parametreler

nChar
Basılan anahtarın sanal anahtar kodu değeri. Standart sanal anahtar kodlarının listesi için bkz. Winuser.h

nShiftState
Aşağıdaki bayrakların bir bileşimini içerir:

  • SHIFT_MASK Eylem sırasında SHIFT tuşuna basıldı.

  • CTRL_MASK Eylem sırasında CTRL tuşuna basıldı.

  • ALT_MASK Eylem sırasında ALT tuşuna basıldı.

Açıklamalar

Olay tetiklendikten sonra denetiminizin anahtar bilgilerine erişmesi gerekiyorsa bu işlevi geçersiz kılın.

COleControl::OnMapPropertyToPage

Belirtilen özelliğin düzenlenmesini uygulayan bir özellik sayfasının sınıf kimliğini almak için çerçeve tarafından çağrılır.

virtual BOOL OnMapPropertyToPage(
    DISPID dispid,
    LPCLSID lpclsid,
    BOOL* pbPageOptional);

Parametreler

dispid
Denetimin bir özelliğinin dağıtım kimliği.

lpclsid
Sınıf kimliğinin döndürüleceği yapıya CLSID işaret eder.

pbPageOptional
Belirtilen özellik sayfasının kullanımının isteğe bağlı olup olmadığını gösteren bir gösterge döndürür.

Dönüş Değeri

Lpclsid'de bir sınıf kimliği döndürüldüyse sıfır olmayan; aksi takdirde 0.

Açıklamalar

Kapsayıcının özellik tarayıcısından denetiminizin özellik sayfalarını çağırmak için bu işlevi geçersiz kılın.

COleControl::OnMnemonic

Kapsayıcı, OLE denetiminin bir anımsatıcı tuşuna basıldığını algıladığında çerçeve tarafından çağrılır.

virtual void OnMnemonic(LPMSG pMsg);

Parametreler

pMsg
Bir anımsatıcı tuşa basılarak oluşturulan Windows iletisinin işaretçisi.

COleControl::OnProperties

Denetimin özellikler fiili kapsayıcı tarafından çağrıldığında çerçeve tarafından çağrılır.

virtual BOOL OnProperties(
    LPMSG lpMsg,
    HWND hWndParent,
    LPCRECT lpRect);

Parametreler

lpMsg
Fiili çağıran Windows iletisinin işaretçisi.

hWndParent
Denetimin üst penceresinin tutamacı.

lpRect
Kapsayıcıdaki denetim tarafından kullanılan dikdörtgenin işaretçisi.

Dönüş Değeri

Çağrı başarılı olursa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Varsayılan uygulama kalıcı özellik iletişim kutusunu görüntüler.

Bu işlevi, denetiminizin özellik sayfalarının görüntülenmesine neden olmak için de kullanabilirsiniz. hWndParent parametresinde OnProperties denetiminizin üst öğesinin tutamacını geçirerek işleve bir çağrı yapın. Bu durumda, lpMsg ve lpRect parametrelerinin değerleri yoksayılır.

COleControl::OnQueryHitPoint

Kapsayıcının isteğine yanıt olarak çerçeve tarafından çağrılır IViewObjectEx::QueryHitPoint .

virtual BOOL OnQueryHitPoint(
    DWORD dwAspect,
    LPCRECT pRectBounds,
    POINT ptlLoc,
    LONG lCloseHint,
    DWORD* pHitResult);

Parametreler

dwAspect
Nesnenin nasıl temsil edilir belirtir. Geçerli değerler DVASPECT veya DVASPECT2 numaralandırmasından alınır.

pRectBounds
OLE denetimi istemci alanının sınırlayıcı dikdörtgenini belirten bir RECT yapı işaretçisi.

ptlLoc
Bir isabet için POINT denetlenecek noktayı belirten yapı işaretçisi. Nokta OLE istemci alanı koordinatlarında belirtilir.

lCloseHint
Bir isabet için denetlenen noktaya "yakın" ifadesini tanımlayan uzaklık.

pHitResult
İsabet sorgusunun sonucuna işaret eden işaretçi. Aşağıdaki değerlerden biri:

  • HITRESULT_OUTSIDE ptlLoc OLE nesnesinin dışında ve kapatılmıyor.

  • HITRESULT_TRANSPARENT ptlLoc OLE nesnesinin sınırları içindedir, ancak görüntüye yakın değildir. Örneğin, saydam dairenin ortasındaki bir nokta HITRESULT_TRANSPARENT olabilir.

  • HITRESULT_CLOSE ptlLoc OLE nesnesinin içinde veya dışındadır, ancak içinde dikkate alınması gereken nesneye yeterince yakındır. Küçük, ince veya ayrıntılı nesneler bu değeri kullanabilir. Bir nokta nesnenin sınırlayıcı dikdörtgeninin dışında olsa bile, yine de yakın olabilir (küçük nesnelere çarpmak için bu gereklidir).

  • HITRESULT_HIT ptlLoc nesnenin görüntüsü içindedir.

Dönüş Değeri

Bir isabet sonucu başarıyla döndürülürse sıfır olmayan; aksi takdirde 0. Isabet, OLE denetimi görüntüleme alanıyla örtüşmedir.

Açıklamalar

Nesnenin görüntü dikdörtgeninin verilen noktayla çakışıp çakışmadığını sorgular (noktaya isabet eder). QueryHitPoint dikdörtgen olmayan nesnelerin isabetlerini test etmek için geçersiz kılınabilir.

COleControl::OnQueryHitRect

Kapsayıcının isteğine yanıt olarak çerçeve tarafından çağrılır IViewObjectEx::QueryHitRect .

virtual BOOL OnQueryHitRect(
    DWORD dwAspect,
    LPCRECT pRectBounds,
    LPCRECT prcLoc,
    LONG lCloseHint,
    DWORD* pHitResult);

Parametreler

dwAspect
Nesnenin nasıl temsil edilecek olduğunu belirtir. Geçerli değerler DVASPECT veya DVASPECT2 numaralandırmasından alınır.

pRectBounds
OLE denetimi istemci alanının sınırlayıcı dikdörtgenini belirten bir RECT yapı işaretçisi.

prcLoc
Nesnenin RECT sol üst köşesine göre isabet için denetlenecek dikdörtgeni belirten yapı işaretçisi (nesne dikdörtgeniyle çakışıyor).

lCloseHint
Kullanılmadı.

pHitResult
İsabet sorgusunun sonucuna işaret eden işaretçi. Aşağıdaki değerlerden biri:

  • HITRESULT_OUTSIDE ole nesnesi dikdörtgendeki hiçbir noktaya isabet değil.

  • HITRESULT_HIT dikdörtgendeki en az bir nokta nesneye isabet eder.

Dönüş Değeri

Bir isabet sonucu başarıyla döndürülürse sıfır olmayan; aksi takdirde 0.

Açıklamalar

Nesnenin görüntü dikdörtgeninin verilen dikdörtgendeki herhangi bir noktayla çakışıp çakışmadığını sorgular (dikdörtgene isabet eder). QueryHitRect dikdörtgen olmayan nesnelerin isabetlerini test etmek için geçersiz kılınabilir.

COleControl::OnRenderData

Belirtilen biçimdeki verileri almak için çerçeve tarafından çağrılır.

virtual BOOL OnRenderData(
    LPFORMATETC lpFormatEtc,
    LPSTGMEDIUM lpStgMedium);

Parametreler

lpFormatEtc
Bilgilerin istendiği biçimi belirten FORMATETC yapısına işaret eder.

lpStgMedium
Verilerin döndürülecek olduğu STGMEDIUM yapısını gösterir.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Belirtilen biçim, gecikmeli işleme için DelayRenderData veya DelayRenderFileData üye işlevleri kullanılarak denetim nesnesine önceden yerleştirilmiş bir biçimdir. Bu işlevin varsayılan uygulaması, sağlanan depolama ortamı bir dosya veya bellekse sırasıyla veya öğesini çağırır OnRenderFileData OnRenderGlobalData. İstenen biçim CF_METAFILEPICT veya kalıcı özellik kümesi biçimiyse, varsayılan uygulama uygun verileri işler ve sıfır olmayan bir değer döndürür. Aksi takdirde, 0 döndürür ve hiçbir şey yapmaz.

lpStgMedium-tymed> TYMED_NULL ise, STGMEDIUM lpFormatEtc-tymed> tarafından belirtilen şekilde ayrılıp doldurulmalıdır. TYMED_NULL değilse, STGMEDIUM yerine verilerle doldurulmalıdır.

Verilerinizi istenen biçimde ve ortamda sağlamak için bu işlevi geçersiz kılın. Verilerinize bağlı olarak, bunun yerine bu işlevin diğer sürümlerinden birini geçersiz kılmak isteyebilirsiniz. Verilerinizin boyutu küçükse ve sabitse, öğesini geçersiz kılın OnRenderGlobalData. Verileriniz bir dosyadaysa veya değişken boyuttaysa, öğesini geçersiz kılın OnRenderFileData.

Daha fazla bilgi için bkz FORMATETC . Windows SDK'sı içindeki ve STGMEDIUM yapıları.

COleControl::OnRenderFileData

Depolama ortamı bir dosya olduğunda verileri belirtilen biçimde almak için çerçeve tarafından çağrılır.

virtual BOOL OnRenderFileData(
    LPFORMATETC lpFormatEtc,
    CFile* pFile);

Parametreler

lpFormatEtc
Bilgilerin istendiği biçimi belirten FORMATETC yapısına işaret eder.

pFile
Verilerin işlendiği bir CFile nesnesine işaret edilir.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Belirtilen biçim, gecikmeli işleme için DelayRenderData üye işlevi kullanılarak denetim nesnesine önceden yerleştirilmiş bir biçimdir. Bu işlevin varsayılan uygulaması YALNıZCA YANLIŞ döndürür.

Verilerinizi istenen biçimde ve ortamda sağlamak için bu işlevi geçersiz kılın. Verilerinize bağlı olarak, bunun yerine bu işlevin diğer sürümlerinden birini geçersiz kılmak isteyebilirsiniz. Birden çok depolama ortamı işlemek istiyorsanız, öğesini geçersiz kılın OnRenderData. Verileriniz bir dosyadaysa veya değişken boyuttaysa, öğesini geçersiz kılın OnRenderFileData.

Daha fazla bilgi için Bkz FORMATETC . Windows SDK'sı içindeki yapı.

COleControl::OnRenderGlobalData

Belirtilen depolama ortamı genel bellek olduğunda verileri belirtilen biçimde almak için çerçeve tarafından çağrılır.

virtual BOOL OnRenderGlobalData(
    LPFORMATETC lpFormatEtc,
    HGLOBAL* phGlobal);

Parametreler

lpFormatEtc
Bilgilerin istendiği biçimi belirten FORMATETC yapısına işaret eder.

phGlobal
Verilerin döndürülacağı genel belleğe ilişkin bir tanıtıcıyı gösterir. Bellek ayrılmamışsa, bu parametre NULL olabilir.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Belirtilen biçim, gecikmeli işleme için DelayRenderData üye işlevi kullanılarak denetim nesnesine önceden yerleştirilmiş bir biçimdir. Bu işlevin varsayılan uygulaması YALNıZCA YANLIŞ döndürür.

phGlobal NULL ise, phGlobal içinde yeni bir HGLOBAL ayrılıp döndürülmelidir. Aksi takdirde, phGlobal tarafından belirtilen HGLOBAL verilerle doldurulmalıdır. HGLOBAL'a yerleştirilen veri miktarı bellek bloğunun geçerli boyutunu aşmamalıdır. Ayrıca, blok daha büyük bir boyuta taşınamaz.

Verilerinizi istenen biçimde ve ortamda sağlamak için bu işlevi geçersiz kılın. Verilerinize bağlı olarak, bunun yerine bu işlevin diğer sürümlerinden birini geçersiz kılmak isteyebilirsiniz. Birden çok depolama ortamı işlemek istiyorsanız, öğesini geçersiz kılın OnRenderData. Verileriniz bir dosyadaysa veya değişken boyuttaysa, öğesini geçersiz kılın OnRenderFileData.

Daha fazla bilgi için Bkz FORMATETC . Windows SDK'sı içindeki yapı.

COleControl::OnResetState

Denetimin özelliklerinin varsayılan değerlerine ayarlanması gerektiğinde çerçeve tarafından çağrılır.

virtual void OnResetState();

Açıklamalar

Varsayılan uygulama, özelliklerin varsayılan değerlerine ayarlanmasına neden olan bir CPropExchange nesne geçirerek DoPropExchange'i çağırır.

Denetim yazıcısı, OLE denetimi için bu geçersiz kılınabilir öğeye başlatma kodu ekleyebilir. Bu işlev, IPersistStream::Load veya IPersistStorage::Load başarısız olduğunda veya IPersistStreamInit::InitNew veya IPersistStorage::InitNew çağrıldığında, ilk olarak veya IPersistStorage::Loadçağrılmadan IPersistStream::Load çağrılır.

COleControl::OnSetClientSite

Kapsayıcı denetimin işlevini çağırdığında çerçeve tarafından çağrılır IOleControl::SetClientSite .

virtual void OnSetClientSite();

Açıklamalar

Varsayılan olarak, OnSetClientSite veri yolu özelliklerinin yüklenip yüklenmediğini denetler ve yüklüyse öğesini çağırır DoDataPathPropExchange.

Bu bildirimin özel işlemlerini yapmak için bu işlevi geçersiz kılın. Özellikle bu işlevin geçersiz kılmaları temel sınıfı çağırmalıdır.

COleControl::OnSetData

Denetimin verilerini belirtilen verilerle değiştirmek için çerçeve tarafından çağrılır.

virtual BOOL OnSetData(
    LPFORMATETC lpFormatEtc,
    LPSTGMEDIUM lpStgMedium,
    BOOL bRelease);

Parametreler

lpFormatEtc
Verilerin biçimini belirten FORMATETC yapısının işaretçisi.

lpStgMedium
Verilerin bulunduğu STGMEDIUM yapısının işaretçisi.

bRelease
Denetimin depolama alanını boşaltması gerekiyorsa TRUE; Denetimin depolama alanını boşaltmaması gerekiyorsa YANLIŞ.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Veriler kalıcı özellik kümesi biçimindeyse, varsayılan uygulama denetimin durumunu buna göre değiştirir. Aksi takdirde, varsayılan uygulama hiçbir şey yapmaz. bRelease TRUE ise çağrısı ReleaseStgMedium yapılır; aksi takdirde yapılmaz.

Denetimin verilerini belirtilen verilerle değiştirmek için bu işlevi geçersiz kılın.

Daha fazla bilgi için bkz FORMATETC . Windows SDK'sı içindeki ve STGMEDIUM yapıları.

COleControl::OnSetExtent

IOleObject::SetExtent çağrısının bir sonucu olarak denetimin kapsamının değiştirilmesi gerektiğinde çerçeve tarafından çağrılır.

virtual BOOL OnSetExtent(LPSIZEL lpSizeL);

Parametreler

lpSizeL
Denetimin SIZEL genişliğini ve yüksekliğini hiMETRIC birimleriyle ifade etmek için uzun tamsayılar kullanan yapı işaretçisi.

Dönüş Değeri

Boyut değişikliği kabul edildiyse sıfır olmayan; aksi takdirde 0.

Açıklamalar

Varsayılan uygulama, denetimin kapsamını yeniden boyutlandırmayı işler. Denetim yerinde etkinse kapsayıcıya OnPosRectChanged bir çağrı yapılır.

Denetiminizin varsayılan yeniden boyutlandırmasını değiştirmek için bu işlevi geçersiz kılın.

COleControl::OnSetObjectRects

IOleInPlaceObject::SetObjectRects çağrısı uygulamak için çerçeve tarafından çağrılır.

virtual BOOL OnSetObjectRects(
    LPCRECT lpRectPos,
    LPCRECT lpRectClip);

Parametreler

lpRectPos
Denetimin kapsayıcıya göre yeni konumunu ve boyutunu gösteren bir RECT yapı işaretçisi.

lpRectClip
Denetimin RECT kırpılacağı dikdörtgen alanı gösteren bir yapı işaretçisi.

Dönüş Değeri

Yeniden konumlandırma kabul edildiyse sıfır olmayan; aksi takdirde 0.

Açıklamalar

Varsayılan uygulama, denetim penceresini yeniden konumlandırmayı ve yeniden boyutlandırmayı otomatik olarak işler ve TRUE döndürür.

Bu işlevin varsayılan davranışını değiştirmek için bu işlevi geçersiz kılın.

COleControl::OnShowToolBars

Denetim kullanıcı arabirimi etkinleştirildiğinde çerçeve tarafından çağrılır.

virtual void OnShowToolBars();

Açıklamalar

Varsayılan uygulama hiçbir şey yapmaz.

COleControl::OnTextChanged

Hisse senedi Caption veya Text özellik değeri değiştiğinde çerçeve tarafından çağrılır.

virtual void OnTextChanged();

Açıklamalar

Varsayılan uygulama öğesini çağırır InvalidateControl.

Bu özellik değiştikten sonra bildirim almak istiyorsanız bu işlevi geçersiz kılın.

COleControl::OnWindowlessMessage

Kapsayıcının isteğine yanıt olarak çerçeve tarafından çağrılır IOleInPlaceObjectWindowless::OnWindowMessage .

virtual BOOL OnWindowlessMessage(
    UINT msg,
    WPARAM wParam,
    LPARAM lParam,
    LRESULT* plResult);

Parametreler

Msg
Windows tarafından geçirilen ileti tanımlayıcısı.

wParam
Windows tarafından geçirildi. İletiye özgü ek bilgileri belirtir. Bu parametrenin içeriği msg parametresinin değerine bağlıdır.

lParam
Windows tarafından geçirildi. İletiye özgü ek bilgileri belirtir. Bu parametrenin içeriği msg parametresinin değerine bağlıdır.

plResult
Windows sonuç kodu. İleti işlemenin sonucunu belirtir ve gönderilen iletiye bağlıdır.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Penceresiz denetimler için pencere iletilerini işler. COleControl'ler OnWindowlessMessage fare iletileri ve klavye iletileri dışında pencere iletileri için kullanılmalıdır. COleControl, özellikle penceresiz OLE nesneleri için fare yakalama ve klavye odağı elde etmek için SetCapture ve SetFocus sağlar.

Penceresiz nesnelerin penceresi olmadığından, kapsayıcının kendilerine ileti göndermesine izin verecek bir mekanizmaya ihtiyaçları vardır. Penceresiz OLE nesnesi, arabirimindeki OnWindowMessage IOleInPlaceObjectWindowless yöntemi (penceresiz destek için IOleInPlaceObject uzantısı) aracılığıyla kapsayıcısından iletileri alır. OnWindowMessage parametre HWND almaz.

COleControl::P arentToClient

pPoint koordinatlarını istemci koordinatlarına çevirir.

virtual UINT ParentToClient(
    LPCRECT lprcBounds,
    LPPOINT pPoint,
    BOOL bHitTest = FALSE) const;

Parametreler

lprcBounds
Kapsayıcı içindeki OLE denetiminin sınırlarına yönelik işaretçi. İstemci alanı değil, kenarlıklar ve kaydırma çubukları da dahil olmak üzere denetimin tamamının alanı.

pPoint
Üst (kapsayıcı) noktasına yönelik işaretçi, denetimin istemci alanının koordinatlarına çevrilecek.

bHitTest
Noktasında isabet testi yapılıp yapılmayacağını belirtir.

Dönüş Değeri

bHitTest YANLIŞ ise, HTNOWHERE döndürür. bHitTest TRUE ise, üst (kapsayıcı) noktasının OLE denetiminin istemci alanına indiği konumu döndürür ve aşağıdaki fare isabet sınaması değerlerinden biridir:

  • HTBORDER Boyutlandırma kenarlı olmayan bir pencerenin kenarında.

  • HTBOTTOM Pencerenin alt yatay kenarında.

  • HTBOTTOMLEFT Pencere kenarlığı sol alt köşesinde.

  • HTBOTTOMRIGHT Pencere kenarlarının sağ alt köşesinde.

  • HTCAPTION Başlık çubuğu alanında.

  • İstemci alanında HTCLIENT.

  • HTERROR Ekran arka planında veya pencereler arasında bir bölme satırında (HTNOWHERE ile aynıdır, ancak Windows işlevinin DefWndProc bir hata belirtmek için bir sistem bip sesi üretmesi dışında).

  • HTGROWBOX Bir boyut kutusunda.

  • HTHSCROLL Yatay kaydırma çubuğunda.

  • HTLEFT Pencerenin sol kenarlığında.

  • HTMAXBUTTON Ekranı Kapla düğmesinde.

  • HTMENU Bir menü alanında.

  • HTMINBUTTON Simge Durumuna Küçült düğmesinde.

  • HTNOWHERE Ekran arka planında veya pencereler arasında bir bölme çizgisinde.

  • HTREDUCE Simge Durumuna Küçült düğmesinde.

  • HTRIGHT Pencerenin sağ kenarında.

  • HTSIZE Bir boyut kutusunda (HTGROWBOX ile aynıdır).

  • HTSYSMENU Denetim menüsünde veya alt penceredeki Kapat düğmesinde.

  • HTTOP Pencerenin üst yatay kenarında.

  • HTTOPLEFT Pencere kenarlığı sol üst köşesinde.

  • HTTOPRIGHT Pencere kenarlarının sağ üst köşesinde.

  • HTTRANSPARENT Şu anda başka bir pencere tarafından kapsanan bir pencerede.

  • HTVSCROLL Dikey kaydırma çubuğunda.

  • HTZOOM Ekranı Kapla düğmesinde.

Açıklamalar

Girişte pPoint , üst öğe başlangıcına göredir (kapsayıcının sol üst köşesinde). Çıkışta pPoint , OLE denetiminin istemci alanının başlangıcına bağlıdır (denetimin istemci alanının sol üst köşesinde).

COleControl::P ostModalDialog

Kapsayıcıya kalıcı bir iletişim kutusunun kapatıldığını bildirir.

void PostModalDialog(HWND hWndParent = NULL);

Parametreler

hWndParent
Kalıcı iletişim kutusunun üst penceresinin tutamacı.

Açıklamalar

Herhangi bir kalıcı iletişim kutusunu görüntüledikten sonra bu işlevi çağır. Kapsayıcının tarafından PreModalDialogdevre dışı bırakılan tüm üst düzey pencereleri etkinleştirebilmesi için bu işlevi çağırmanız gerekir. Bu işlev çağrısıyla PreModalDialogeşleştirilmelidir.

COleControl::P reModalDialog

Kapsayıcıya kalıcı bir iletişim kutusunun görüntülenmek üzere olduğunu bildirir.

void PreModalDialog(HWND hWndParent = NULL);

Parametreler

hWndParent
Kalıcı iletişim kutusunun üst penceresinin tutamacı.

Açıklamalar

Herhangi bir kalıcı iletişim kutusunu görüntülemeden önce bu işlevi çağır. Kapsayıcının tüm üst düzey pencerelerini devre dışı bırakabilmesi için bu işlevi çağırmanız gerekir. Kalıcı iletişim kutusu görüntülendikten sonra öğesini çağırmanız PostModalDialoggerekir.

COleControl::RecreateControlWindow

Denetimin penceresini yok eder ve yeniden oluşturur.

void RecreateControlWindow();

Açıklamalar

Pencerenin stil bitlerini değiştirmeniz gerekiyorsa bu gerekli olabilir.

COleControl::Refresh

OLE denetiminin yeniden boyanma işlemini zorlar.

void Refresh();

Açıklamalar

Bu işlev, temel sınıf tarafından COleControl Refresh adlı bir hisse senedi yöntemi olarak desteklenir. Bu, OLE denetiminizin kullanıcılarının denetimi belirli bir zamanda yeniden boyayabilmesini sağlar. Bu yöntem hakkında daha fazla bilgi için ActiveX Denetimleri: Yöntemler makalesine bakın.

COleControl::ReleaseCapture

Fare yakalamayı serbest bırakır.

BOOL ReleaseCapture();

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Denetimde şu anda fare yakalaması varsa yakalama serbest bırakılır. Aksi takdirde, bu işlevin hiçbir etkisi yoktur.

COleControl::ReleaseDC

Penceresiz bir denetimin kapsayıcısının görüntü cihazı bağlamını serbest bırakır ve cihaz bağlamını diğer uygulamalar tarafından kullanılmak üzere serbest bırakır.

int ReleaseDC(CDC* pDC);

Parametreler

pDC
Yayınlanacak kapsayıcı cihazı bağlamını tanımlar.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Uygulamanın GetDC'ye yapılan her çağrı için çağrısı ReleaseDC yapması gerekir.

COleControl::ReparentControlWindow

Denetimin üst öğesini ayarlar.

virtual void ReparentControlWindow(
    HWND hWndOuter,
    HWND hWndParent);

Parametreler

hWndOuter
Denetim penceresinin tutamacı.

hWndParent
Yeni üst pencerenin tutamacı.

Açıklamalar

Denetim penceresinin üst öğesini sıfırlamak için bu işlevi çağırın.

COleControl::ResetStockProps

Hisse senedi özelliklerinin durumunu COleControl varsayılan değerlerine başlatır.

void ResetStockProps();

Açıklamalar

Özellikler şunlardır: Görünüm, BackColor, BorderStyle, Caption, Enabled, Font, ForeColor, hWnd ve Text. Hisse senedi özelliklerinin açıklaması için bkz . ActiveX Denetimleri: Hisse Senedi Özellikleri Ekleme.

ve ResetVersion COleControl::OnResetStatekomutunu kullanarak ResetStockProps denetimin ikili başlatma performansını geliştirebilirsiniz. Aşağıdaki örneğe bakın. Başlatmayı iyileştirme hakkında daha fazla bilgi için bkz . ActiveX Denetimleri: İyileştirme.

Örnek

void CMyAxCtrl::OnResetState()
{
   ResetVersion(MAKELONG(_wVerMinor, _wVerMajor));
   ResetStockProps();

   // initialize custom properties here
}

COleControl::ResetVersion

Sürüm numarasını belirtilen değere başlatır.

void ResetVersion(DWORD dwVersionDefault);

Parametreler

dwVersionDefault
Denetime atanacak sürüm numarası.

Açıklamalar

ve ResetStockProps COleControl::OnResetStatekomutunu kullanarak ResetVersion denetimin ikili başlatma performansını geliştirebilirsiniz. ResetStockProps'daki örne bakın. Başlatmayı iyileştirme hakkında daha fazla bilgi için bkz . ActiveX Denetimleri: İyileştirme.

COleControl::ScrollWindow

Penceresiz bir OLE nesnesinin ekrandaki yerinde etkin görüntüsündeki bir alanı kaydırmasına izin verir.

void ScrollWindow(
    int xAmount,
    int yAmount,
    LPCRECT lpRect = NULL,
    LPCRECT lpClipRect = NULL);

Parametreler

xAmount
Cihaz birimlerinde yatay kaydırmanın miktarını belirtir. Bu parametrenin sola kaydırılabilmesi için negatif bir değer olması gerekir.

yAmount
Cihaz birimlerinde dikey kaydırmanın miktarını belirtir. Yukarı doğru kaydırmak için bu parametre negatif bir değer olmalıdır.

lpRect
İçeren pencerenin istemci koordinatlarında, KAYDıRILACAK OLE nesnesinin istemci alanının bölümünü belirten bir CRect nesnesine veya RECT yapısına işaret eder. lpRect NULL ise, OLE nesnesinin istemci alanının tamamı kaydırılır.

lpClipRect
Kırpacak dikdörtgeni belirten bir CRect nesneye veya RECT yapıya işaret eder. Yalnızca dikdörtgenin içindeki pikseller kaydırılır. Dikdörtgenin dışındaki bitler lpRect dikdörtgeninde olsalar bile etkilenmez. lpClipRect NULL ise, kaydırma dikdörtgeninde kırpma yapılmaz.

COleControl::SelectFontObject

Cihaz bağlamında bir yazı tipi seçer.

CFont* SelectFontObject(
    CDC* pDC,
    CFontHolder& fontHolder);

Parametreler

pDC
Cihaz bağlam nesnesinin işaretçisi.

fontHolder
Seçilecek yazı tipini temsil eden CFontHolder nesnesine başvuru.

Dönüş Değeri

Daha önce seçili yazı tipini gösteren bir işaretçi. Çağıran fontHolder kullanan tüm çizim işlemlerini tamamladığında, CDC::SelectObject'e parametre olarak geçirerek daha önce seçilen yazı tipini yeniden seçmesi gerekir.

COleControl::SelectStockFont

Stok Font özelliğini bir cihaz bağlamında seçer.

CFont* SelectStockFont(CDC* pDC);

Parametreler

pDC
Yazı tipinin seçileceği cihaz bağlamı.

Dönüş Değeri

Daha önce seçilen CFont nesnenin işaretçisi. İşiniz bittiğinde bu yazı tipini cihaz bağlamı içine geri seçmek için CDC::SelectObject kullanmalısınız.

COleControl::SerializeExtent

Denetime ayrılan görüntü alanının durumunu serileştirir veya başlatır.

void SerializeExtent(CArchive& ar);

Parametreler

Ar
' CArchive a veya 'den seri hale getirmek için bir nesne.

Açıklamalar

, ve kullanarak SerializeExtentSerializeStockPropsdenetimin ikili kalıcılık performansını geliştirebilir ve SerializeVersion geçersiz kılabilirsinizCOleControl::Serialize. Aşağıdaki örneğe bakın. Başlatmayı iyileştirme hakkında daha fazla bilgi için bkz . ActiveX Denetimleri: İyileştirme.

Örnek

void CMyAxCtrl::Serialize(CArchive &ar)
{
   SerializeVersion(ar, MAKELONG(_wVerMinor, _wVerMajor));
   SerializeExtent(ar);
   SerializeStockProps(ar);

   if (ar.IsStoring())
   { // storing code
   }
   else
   { // loading code
   }
}

COleControl::SerializeStockProps

Hisse senedi özelliklerinin durumunu COleControl serileştirir veya başlatır: Görünüm, BackColor, BorderStyle, Caption, Enabled, Font, ForeColor ve Text.

void SerializeStockProps(CArchive& ar);

Parametreler

Ar
' CArchive a veya 'den seri hale getirmek için bir nesne.

Açıklamalar

Hisse senedi özelliklerinin açıklaması için bkz . ActiveX Denetimleri: Hisse Senedi Özellikleri Ekleme.

, ve kullanarak SerializeStockPropsSerializeExtentdenetimin ikili kalıcılık performansını geliştirebilir ve SerializeVersion geçersiz kılabilirsinizCOleControl::Serialize. Bir örnek için SerializeExtent konumundaki koda bakın. Başlatmayı iyileştirme hakkında daha fazla bilgi için bkz . ActiveX Denetimleri: İyileştirme.

COleControl::SerializeVersion

Denetimin sürüm bilgilerinin durumunu serileştirir veya başlatır.

DWORD SerializeVersion(
    CArchive& ar,
    DWORD dwVersionDefault,
    BOOL bConvert = TRUE);

Parametreler

Ar
' CArchive a veya 'den seri hale getirmek için bir nesne.

dwVersionDefault
Denetimin geçerli sürüm numarası.

bConvert
Kalıcı verilerin kaydedildiğinde en son biçime dönüştürülüp dönüştürülmeyeceğini veya yüklendiğindekiyle aynı biçimde tutulması gerektiğini gösterir.

Dönüş Değeri

Denetimin sürüm numarası. Belirtilen arşiv yükleniyorsa, SerializeVersion bu arşivden yüklenen sürümü döndürür. Aksi takdirde, yüklü olan sürümü döndürür.

Açıklamalar

, ve kullanarak SerializeVersionSerializeExtentdenetimin ikili kalıcılık performansını geliştirebilir ve SerializeStockProps geçersiz kılabilirsinizCOleControl::Serialize. Bir örnek için SerializeExtent konumundaki koda bakın. Başlatmayı iyileştirme hakkında daha fazla bilgi için bkz . ActiveX Denetimleri: İyileştirme.

COleControl::SetAppearance

Denetiminizin hisse senedi Görünüm özellik değerini ayarlar.

void SetAppearance (short sAppearance);

Parametreler

sAppearance
short Denetiminizin görünümü için kullanılacak bir (VT_I2) değeri. Sıfır değeri denetimin görünümünü düz, 1 değeri ise denetimin görünümünü 3B olarak ayarlar.

Açıklamalar

Stok özellikleri hakkında daha fazla bilgi için bkz . ActiveX Denetimleri: Özellikler.

COleControl::SetBackColor

Denetiminizin stok BackColor özellik değerini ayarlar.

void SetBackColor(OLE_COLOR dwBackColor);

Parametreler

dwBackColor
Denetiminizin arka plan çizimi için kullanılacak bir OLE_COLOR değeri.

Açıklamalar

Bu özelliği ve diğer ilgili özellikleri kullanma hakkında daha fazla bilgi için ActiveX Denetimleri: Özellikler makalesine bakın.

COleControl::SetBorderStyle

Denetiminizin hisse senedi BorderStyle özellik değerini ayarlar.

void SetBorderStyle(short sBorderStyle);

Parametreler

sBorderStyle
Denetimin yeni kenarlık stili; 0 kenarlık olmadığını, 1 ise normal bir kenarlıyı gösterir.

Açıklamalar

Ardından denetim penceresi yeniden oluşturulur ve OnBorderStyleChanged çağrılır.

COleControl::SetCapture

Denetimin kapsayıcı penceresinin denetimin adına fare yakalamayı ele geçirmesine neden olur.

CWnd* SetCapture();

Dönüş Değeri

Daha önce fare girişi alan pencere nesnesinin işaretçisi CWnd .

Açıklamalar

Denetim etkin ve penceresizse, bu işlev denetimin kapsayıcı penceresinin denetimin adına fare yakalamayı ele geçirmesine neden olur. Aksi takdirde, bu işlev denetimin kendisinin fare yakalamasını (ile aynı) CWnd::SetCapturealmasına neden olur.

COleControl::SetControlSize

OLE denetim penceresinin boyutunu ayarlar ve kapsayıcıya denetim sitesinin değiştiğini bildirir.

BOOL SetControlSize(int cx, int cy);

Parametreler

cx
Denetimin yeni genişliğini piksel cinsinden belirtir.

Cy
Denetimin yeni yüksekliğini piksel cinsinden belirtir.

Dönüş Değeri

Çağrı başarılı olursa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Bu işlev denetiminizin oluşturucusunda kullanılmamalıdır.

Denetim pencerelerinin tüm koordinatlarının denetimin sol üst köşesine göre olduğunu unutmayın.

COleControl::SetEnabled

Denetiminizin hisse senedi Etkin özellik değerini ayarlar.

void SetEnabled(BOOL bEnabled);

Parametreler

bEnabled
Denetim etkinleştirilecekse TRUE; aksi takdirde YANLIŞ.

Açıklamalar

Bu özellik OnEnabledChange ayarlandıktan sonra çağrılır.

COleControl::SetFocus

Denetimin kapsayıcı penceresinin denetimin adına giriş odağını ele geçirmesine neden olur.

CWnd* SetFocus();

Dönüş Değeri

Daha önce giriş odağına CWnd sahip olan pencere nesnesinin işaretçisi veya böyle bir pencere yoksa NULL.

Açıklamalar

Denetim etkin ve penceresizse, bu işlev denetimin kapsayıcı penceresinin denetimin adına giriş odağını ele geçirmesine neden olur. Giriş odağı, klavye girişini kapsayıcının penceresine yönlendirir ve kapsayıcı sonraki tüm klavye iletilerini çağıran SetFocusOLE nesnesine yönlendirir. Daha önce giriş odağına sahip olan tüm pencerelerde bu durum kaybolur.

Denetim penceresiz değilse, bu işlev denetimin kendisinin giriş odağını (ile aynı) CWnd::SetFocusalmasına neden olur.

COleControl::SetFont

Denetiminizin stock Font özelliğini ayarlar.

void SetFont(LPFONTDISP pFontDisp);

Parametreler

pFontDisp
Yazı Tipi dağıtım arabirimi işaretçisi.

COleControl::SetForeColor

Denetiminizin stok ForeColor özellik değerini ayarlar.

void SetForeColor(OLE_COLOR dwForeColor);

Parametreler

dwForeColor
Denetiminizin ön plan çizimi için kullanılacak OLE_COLOR değeri.

Açıklamalar

Bu özelliği ve diğer ilgili özellikleri kullanma hakkında daha fazla bilgi için ActiveX Denetimleri: Özellikler makalesine bakın.

COleControl::SetInitialDataFormats

Denetim tarafından desteklenen veri biçimleri listesini başlatmak için çerçeve tarafından çağrılır.

virtual void SetInitialDataFormats();

Açıklamalar

Varsayılan uygulama iki biçim belirtir: CF_METAFILEPICT ve kalıcı özellik kümesi.

COleControl::SetInitialSize

Bir kapsayıcıda ilk kez görüntülendiğinde OLE denetiminin boyutunu ayarlar.

void SetInitialSize(
    int cx,
    int cy);

Parametreler

cx
OLE denetiminin piksel cinsinden başlangıç genişliği.

Cy
OLE denetiminin piksel cinsinden ilk yüksekliği.

Açıklamalar

Denetiminizin ilk boyutunu ayarlamak için oluşturucunuzda bu işlevi çağırın. İlk boyut, cihaz birimleri veya piksel cinsinden ölçülür. Bu çağrının denetiminizin oluşturucusunda yapılması önerilir.

COleControl::SetModifiedFlag

Denetimin değiştirilmiş durumunu değiştirir.

void SetModifiedFlag(BOOL bModified = TRUE);

Parametreler

bModified
Denetimin değiştirilmiş bayrağı için yeni değer. TRUE, denetimin durumunun değiştirildiğini gösterir; YANLIŞ, denetimin durumunun yeni kaydedildiğini gösterir.

Açıklamalar

Denetiminizin kalıcı durumunu etkileyecek bir değişiklik gerçekleştiğinde bu işlevi çağır. Örneğin, kalıcı bir özelliğin değeri değişirse, bModified TRUE ile bu işlevi çağırın.

COleControl::SetNotPermitted

Düzenleme isteğinin başarısız olduğunu gösterir.

void SetNotPermitted();

Açıklamalar

Başarısız olduğunda BoundPropertyRequestEdit bu işlevi çağır. Bu işlev, küme işlemine izin verilmediğini belirtmek için türünde COleDispScodeException bir özel durum oluşturur.

COleControl::SetNotSupported

Denetimin özellik değerinde kullanıcı tarafından değişiklik yapılmasını engeller.

void SetNotSupported();

Açıklamalar

Denetimin kullanıcısı tarafından özellik değerinin değiştirilmesinin desteklenmediği herhangi bir özelliğin Set işlevi yerine bu işlevi çağırın. Bir örnek, salt okunur bir özellik olabilir.

COleControl::SetRectInContainer

Denetimin dikdörtgeninin kapsayıcıya göre koordinatlarını, cihaz birimleriyle ifade edilen şekilde ayarlar.

BOOL SetRectInContainer(LPCRECT lpRect);

Parametreler

lpRect
Kapsayıcıya göre denetimin yeni koordinatlarını içeren bir dikdörtgen işaretçisi.

Dönüş Değeri

Çağrı başarılı olursa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Denetim açıksa yeniden boyutlandırılır; aksi takdirde kapsayıcının OnPosRectChanged işlevi çağrılır.

COleControl::SetText

Denetiminizin stok Caption veya Text özelliğinin değerini ayarlar.

void SetText(LPCTSTR pszText);

Parametreler

pszText
Karakter dizesi işaretçisi.

Açıklamalar

Stok Resim Yazısı ve Metin özelliklerinin her ikisinin de aynı değere eşlendiğini unutmayın. Bu, iki özellikte yapılan tüm değişikliklerin her iki özelliği de otomatik olarak değiştireceği anlamına gelir. Genel olarak, bir denetim stok Caption veya Text özelliğini desteklemelidir, ancak ikisini birden desteklememelidir.

COleControl::ThrowError

Denetiminizde bir hatanın oluştuğuna işaret eder.

void ThrowError(
    SCODE sc,
    UINT nDescriptionID,
    UINT nHelpID = -1);

void ThrowError(
    SCODE sc,
    LPCTSTR pszDescription = NULL,
    UINT nHelpID = 0);

Parametreler

Sc
Bildirilecek durum kodu değeri. Olası kodların tam listesi için ActiveX Denetimleri: Gelişmiş Konular makalesine bakın.

nDescriptionID
Bildirilecek özel durumun dize kaynak kimliği.

nHelpID
Bildirilecek konunun yardım kimliği.

pszDescription
Bildirilecek özel durumun açıklamasını içeren bir dize.

Açıklamalar

Bu işlev yalnızca bir OLE özelliği için Get veya Set işlevinin içinden veya OLE otomasyon yönteminin uygulanmasından çağrılmalıdır. Başka zamanlarda oluşan hataların sinyalini vermeniz gerekiyorsa hisse senedi Hatası olayını tetiklemelisiniz.

COleControl::TransformCoords

HIMETRIC birimleri ile kapsayıcının yerel birimleri arasındaki koordinat değerlerini dönüştürür.

void TransformCoords(
    POINTL* lpptlHimetric,
    POINTF* lpptfContainer,
    DWORD flags);

Parametreler

lpptlHimetric
HIMETRIC birimlerinde koordinatları içeren bir POINTL yapıya yönelik işaretçi.

lpptfContainer
Kapsayıcının birim boyutunda koordinatları içeren bir POINTF yapıya yönelik işaretçi.

Bayrak
Aşağıdaki değerlerin birleşimi:

  • XFORMCOORDS_POSITION Kapsayıcıda A konumu.

  • XFORMCOORDS_SIZE Kapsayıcıda A boyutu.

  • XFORMCOORDS_HIMETRICTOCONTAINER HIMETRIC birimlerini kapsayıcının birimlerine dönüştürün.

  • XFORMCOORDS_CONTAINERTOHIMETRIC Kapsayıcının birimlerini HIMETRIC birimlerine dönüştürün.

Açıklamalar

XFORMCOORDS_POSITION ve XFORMCOORDS_SIZE ilk iki bayrak, koordinatların konum veya boyut olarak ele alınıp alınmayacağını belirtir. Kalan iki bayrak dönüştürme yönünü gösterir.

COleControl::TranslateColor

renk değerini OLE_COLOR veri türünden COLORREF veri türüne dönüştürür.

COLORREF TranslateColor(
    OLE_COLOR clrColor,
    HPALETTE hpal = NULL);

Parametreler

clrColor
OLE_COLOR veri türü. Daha fazla bilgi için bkz. Windows OleTranslateColor işlevi.

hpal
İsteğe bağlı palet için tanıtıcı; NULL olabilir.

Dönüş Değeri

Cihazın gösterebileceği clrColor değerine en yakın düz rengi tanımlayan RGB (kırmızı, yeşil, mavi) 32 bit renk değeri.

Açıklamalar

Bu işlev, stok ForeColor ve BackColor özelliklerini CDC üye işlevleri tarafından kullanılan COLORREF türlerine çevirmek için kullanışlıdır.

COleControl::WillAmbientsBeValidDuringLoad

Denetiminizin, daha sonra kalıcı durumundan yüklendiğinde ortam özelliklerinin değerlerini varsayılan değerler olarak kullanıp kullanmayacağını belirler.

BOOL WillAmbientsBeValidDuringLoad();

Dönüş Değeri

Sıfır olmayan, ortam özelliklerinin geçerli olacağını belirtir; aksi takdirde ortam özellikleri geçerli olmaz.

Açıklamalar

Bazı kapsayıcılarda, denetiminin geçersiz kılınması COleControl::DoPropExchangeiçin yapılan ilk çağrı sırasında denetiminizin ortam özelliklerine erişimi olmayabilir. Bu durum, kapsayıcının IOleObject::SetClientSite çağrılmadan önce IPersistStreamInit::Load veya IPersistStorage::Load çağrısı yapma durumudur (yani, OLEMISC_SETCLIENTSITEFIRST durum bitine uymazsa).

COleControl::WindowProc

Bir nesne için COleControl bir Windows yordamı sağlar.

virtual LRESULT WindowProc(
    UINT message,
    WPARAM wParam,
    LPARAM lParam);

Parametreler

ileti
İşlenecek Windows iletisini belirtir.

wParam
İletiyi işlerken kullanılan ek bilgiler sağlar. Parametre değeri iletiye bağlıdır.

lParam
İletiyi işlerken kullanılan ek bilgiler sağlar. Parametre değeri iletiye bağlıdır.

Dönüş Değeri

Dağıtılan iletinin dönüş değeri.

Açıklamalar

Denetimin ileti eşlemesi aracılığıyla belirli iletileri göndermek için bu işlevi çağırın.

Ayrıca bkz.

MFC Örnek CIRC3
MFC Örnek TESTHELP
COlePropertyPage Sınıfı
CWnd Sınıfı
Hiyerarşi Grafiği
CFontHolder Sınıfı
CPictureHolder Sınıfı