OleComponent.IOleComponent.OnActivationChange Yöntem

Tanım

Yeni bir nesne etkinleştirildiğinde bileşene uyar. Yalnızca ' a çağrı yapın OnActivationChangeCore(IOleComponent, Int32, OLECRINFO[], Int32, OLECHOSTINFO[], UInt32) .

 virtual void Microsoft.VisualStudio.OLE.Interop.IOleComponent.OnActivationChange(Microsoft::VisualStudio::OLE::Interop::IOleComponent ^ pic, int fSameComponent, cli::array <Microsoft::VisualStudio::OLE::Interop::OLECRINFO> ^ pcrinfo, int fHostIsActivating, cli::array <Microsoft::VisualStudio::OLE::Interop::OLECHOSTINFO> ^ pchostinfo, System::UInt32 dwReserved) = Microsoft::VisualStudio::OLE::Interop::IOleComponent::OnActivationChange;
 virtual void Microsoft.VisualStudio.OLE.Interop.IOleComponent.OnActivationChange(Microsoft::VisualStudio::OLE::Interop::IOleComponent ^ pic, int fSameComponent, Platform::Array <Microsoft::VisualStudio::OLE::Interop::OLECRINFO> ^ pcrinfo, int fHostIsActivating, Platform::Array <Microsoft::VisualStudio::OLE::Interop::OLECHOSTINFO> ^ pchostinfo, unsigned int dwReserved) = Microsoft::VisualStudio::OLE::Interop::IOleComponent::OnActivationChange;
void Microsoft.VisualStudio.OLE.Interop.IOleComponent.OnActivationChange(Microsoft::VisualStudio::OLE::Interop::IOleComponent const & pic, int fSameComponent, std::Array <Microsoft::VisualStudio::OLE::Interop::OLECRINFO> const & pcrinfo, int fHostIsActivating, std::Array <Microsoft::VisualStudio::OLE::Interop::OLECHOSTINFO> const & pchostinfo, unsigned int dwReserved);
void IOleComponent.OnActivationChange (Microsoft.VisualStudio.OLE.Interop.IOleComponent pic, int fSameComponent, Microsoft.VisualStudio.OLE.Interop.OLECRINFO[] pcrinfo, int fHostIsActivating, Microsoft.VisualStudio.OLE.Interop.OLECHOSTINFO[] pchostinfo, uint dwReserved);
abstract member Microsoft.VisualStudio.OLE.Interop.IOleComponent.OnActivationChange : Microsoft.VisualStudio.OLE.Interop.IOleComponent * int * Microsoft.VisualStudio.OLE.Interop.OLECRINFO[] * int * Microsoft.VisualStudio.OLE.Interop.OLECHOSTINFO[] * uint32 -> unit
override this.Microsoft.VisualStudio.OLE.Interop.IOleComponent.OnActivationChange : Microsoft.VisualStudio.OLE.Interop.IOleComponent * int * Microsoft.VisualStudio.OLE.Interop.OLECRINFO[] * int * Microsoft.VisualStudio.OLE.Interop.OLECHOSTINFO[] * uint32 -> unit
Sub OnActivationChange (pic As IOleComponent, fSameComponent As Integer, pcrinfo As OLECRINFO(), fHostIsActivating As Integer, pchostinfo As OLECHOSTINFO(), dwReserved As UInteger) Implements IOleComponent.OnActivationChange

Parametreler

pic
IOleComponent

NULL değilse, bu, etkinleştirilmekte olan bileşendir.

fSameComponent
Int32

picBu yöntemi çağıran bileşense true.

pcrinfo
OLECRINFO[]

OLECRINFOöğesinin pic null değil.

fHostIsActivating
Int32

picNull ise ve bu true ise (1) konağın etkinleşmekte olduğunu gösterir. picNull ise ve bu yanlış (0) ise geçerli etkin nesne yoktur.

pchostinfo
OLECHOSTINFO[]

TRUE ise (1), bu, bu fHostIsActivating ana bilgisayar, OLECHOSTINFO Bu durumda null olur.

dwReserved
UInt32

Gelecekte kullanılmak üzere ayrılmış, 0 olmalıdır.

Uygulamalar

Açıklamalar

picEtkinleştiriliyorsa ve pcrinfo . grf ExclusiveBorderSpace bit kümesine sahipse, bileşen kenarlık alanı araçlarını (araç çubukları, durum çubukları vb.) gizlemelidir; Ayrıca, ana bilgisayar etkinleştiriliyorsa ve pchostinfo . grfchost ExclusiveBorderSpace bit kümesine sahip olur. Bu durumların her birinde, bileşen bir sonraki etkinleştirililişinde onun kenarlık alanı araçlarını göstermelidir.

picEtkinleştirilirse ve pcrinfo . grf ExclusiveActivation bit kümesine sahipse, pic "ExclusiveActive" modunda etkinleştiriliyor. Bileşen, barındıran üst çerçeve penceresini almalıdır pic (PIC aracılığıyla). HwndGetWindow (WindowTypes. WindowToplevel, 0)). Bu pencere, bileşenin kendi üst penceresinden farklıysa, bileşen Windows 'u devre dışı bırakmalı ve OnEnterState. Modal, TRUE, doğru bildirimi alırken yaptığı diğer şeyleri yapar.

Aksi takdirde, bileşen üst düzeyse, WM_MOUSEACTIVATE uygun şekilde işlem yaparak kendi penceresini etkinleştirmelerini reddedecek (aşağıdaki WM_MOUSEACTIVATE notuna bakın). ExclusiveActive Mode sonlanana kadar bileşen bu durumlardan birinde kalmalıdır, ExclusiveActivation bit ayarlanmamış veya NULL ile birlikte OnActivationChange için gelecekteki bir çağrı tarafından belirtilir pcrinfo

WM_MOUSEACTIVATE Note (en üst düzey Birleşik ve ana bilgisayar için): Etkin (veya izleme) comp reg Info, fare iletileri istediğini gösteriyorsa, etkin (veya izleme) kompozisyonunun ortaya çıkan fare iletisini işleyebilmesi için WM_MOUSEACTIVATE MA_xxxANDEAT değer döndürülmemelidir. Bunlardan biri, Reg bilgilerini incelemek istemiyorlarsa, herhangi bir comp etkin (veya izleme) varsa WM_MOUSEACTIVATE MA_xxxANDEAT değer döndürülmemelidir. Bir tane, etkin (veya izleme) bileşenin reg bilgilerini, IOleComponentManager. FGetActiveComponent aracılığıyla dilediğiniz zaman sorgulayabilir

Şunlara uygulanır