COleServerItem Sınıfı
OLE öğelerine sunucu arabirimi sağlar.
Sözdizimi
class COleServerItem : public CDocItem
Üyeler
Korumalı Oluşturucular
Veri Akışı Adı | Açıklama |
---|---|
COleServerItem::COleServerItem | Bir COleServerItem nesne oluşturur. |
Genel Yöntemler
Veri Akışı Adı | Açıklama |
---|---|
COleServerItem::AddOtherClipboardData | Sunu ve dönüştürme biçimlerini bir COleDataSource nesneye yerleştirir. |
COleServerItem::CopyToClipboard | Öğeyi Pano'ya kopyalar. |
COleServerItem::D oDragDrop | Sürükle ve bırak işlemi gerçekleştirir. |
COleServerItem::GetClipboardData | Veri aktarımında kullanılacak veri kaynağını alır (sürükleyip bırakma veya Pano). |
COleServerItem::GetDocument | Öğeyi içeren sunucu belgesini döndürür. |
COleServerItem::GetEmbedSourceData | Ole öğesinin CF_EMBEDSOURCE verilerini alır. |
COleServerItem::GetItemName | Öğenin adını döndürür. Yalnızca bağlı öğeler için kullanılır. |
COleServerItem::GetLinkSourceData | Ole öğesinin CF_LINKSOURCE verilerini alır. |
COleServerItem::GetObjectDescriptorData | Ole öğesinin CF_OBJECTDESCRIPTOR verilerini alır. |
COleServerItem::IsConnected | Öğenin etkin bir kapsayıcıya bağlı olup olmadığını gösterir. |
COleServerItem::IsLinkedItem | Öğenin bağlı bir OLE öğesini temsil edip etmediğini gösterir. |
COleServerItem::NotifyChanged | Tüm kapsayıcıları otomatik bağlantı güncelleştirmesi ile güncelleştirir. |
COleServerItem::OnDoVerb | Fiili yürütmek için çağrıldı. |
COleServerItem::OnDraw | Kapsayıcı öğeyi çizmek istediğinde çağrılır; uygulama gerekli. |
COleServerItem::OnDrawEx | Özel öğe çizimi için çağrıldı. |
COleServerItem::OnGetClipboardData | Pano'ya kopyalanacak verileri almak için çerçeve tarafından çağrılır. |
COleServerItem::OnGetExtent | OLE öğesinin boyutunu almak için çerçeve tarafından çağrılır. |
COleServerItem::OnInitFromData | Çerçeve tarafından, belirtilen veri aktarımı nesnesinin içeriğini kullanarak bir OLE öğesini başlatmak için çağrılır. |
COleServerItem::OnQueryUpdateItems | Herhangi bir bağlı öğenin güncelleştirilmesini gerektirip gerektirmediğini belirlemek için çağrılır. |
COleServerItem::OnRenderData | Gecikmeli işlemenin bir parçası olarak verileri alır. |
COleServerItem::OnRenderFileData | Gecikmeli işlemenin bir parçası olarak bir CFile nesneye veri alır. |
COleServerItem::OnRenderGlobalData | Gecikmeli işlemenin bir parçası olarak HGLOBAL'a veri alır. |
COleServerItem::OnSetColorScheme | Öğenin renk düzenini ayarlamak için çağrılır. |
COleServerItem::OnSetData | Öğenin verilerini ayarlamak için çağrılır. |
COleServerItem::OnSetExtent | OLE öğesinin boyutunu ayarlamak için çerçeve tarafından çağrılır. |
COleServerItem::OnUpdate | Öğenin ait olduğu belgenin bir bölümü değiştirildiğinde çağrılır. |
COleServerItem::OnUpdateItems | Sunucu belgesindeki tüm öğelerin sunu önbelleğini güncelleştirmek için çağrılır. |
COleServerItem::SetItemName | Öğenin adını ayarlar. Yalnızca bağlı öğeler için kullanılır. |
Korumalı Yöntemler
Veri Akışı Adı | Açıklama |
---|---|
COleServerItem::GetDataSource | Dönüştürme biçimlerini depolamak için kullanılan nesneyi alır. |
COleServerItem::OnHide | OLE öğesini gizlemek için çerçeve tarafından çağrılır. |
COleServerItem::OnOpen | OLE öğesini kendi üst düzey penceresinde görüntülemek için çerçeve tarafından çağrılır. |
COleServerItem::OnShow | Kapsayıcı öğeyi göstermek istediğinde çağrılır. |
Ortak Veri Üyeleri
Veri Akışı Adı | Açıklama |
---|---|
COleServerItem::m_sizeExtent | Sunucuya OLE öğesinin ne kadarının görünür olduğu hakkında bilgi sağlar. |
Açıklamalar
Bağlantılı öğe sunucu belgesinin bir bölümünü veya tümünü temsil edebilir. Katıştırılmış öğe her zaman bir sunucu belgesinin tamamını temsil eder.
sınıfı, COleServerItem
genellikle kapsayıcı uygulamasından gelen isteklere yanıt olarak OLE sistemi dinamik bağlantı kitaplıkları (DLL' ler) tarafından çağrılan birkaç geçersiz kılınabilir üye işlevi tanımlar. Bu üye işlevleri kapsayıcı uygulamasının öğeyi görüntüleme, fiillerini yürütme veya çeşitli biçimlerde verilerini alma gibi çeşitli yollarla dolaylı olarak işlemesine olanak tanır.
kullanmak COleServerItem
için, öğesinden bir sınıf türetip OnDraw ve Serialize üye işlevlerini uygulayın. OnDraw
işlevi bir öğenin meta dosyası gösterimini sağlayarak kapsayıcı uygulaması bileşik bir belge açtığında görüntülenmesini sağlar. Serialize
işleviCObject
, bir öğenin yerel gösterimini sağlayarak ekli bir öğenin sunucu ve kapsayıcı uygulamaları arasında aktarılmasını sağlar. OnGetExtent , kapsayıcıya öğenin doğal boyutunu sağlayarak kapsayıcının öğeyi boyutlandırmasını sağlar.
Sunucular ve ilgili konular hakkında daha fazla bilgi için Kapsayıcılar: Gelişmiş Özellikler makalesindeki Sunucular: Sunucu Uygulama ve "Kapsayıcı/Sunucu Uygulaması Oluşturma" makalesine bakın.
Devralma Hiyerarşisi
COleServerItem
Gereksinimler
Üst bilgi: afxole.h
COleServerItem::AddOtherClipboardData
OLE öğesinin sunu ve dönüştürme biçimlerini belirtilen COleDataSource
nesneye yerleştirmek için bu işlevi çağırın.
void AddOtherClipboardData(COleDataSource* pDataSource);
Parametreler
pDataSource
COleDataSource
Verilerin yerleştirilmesi gereken nesnenin işaretçisi.
Açıklamalar
Öğenin sunu biçimini (meta dosyası resmi) sağlamak için OnDraw üye işlevini uygulamış olmanız gerekir. Diğer dönüştürme biçimlerini desteklemek için, GetDataSource tarafından döndürülen COleDataSource nesnesini kullanarak bunları kaydedin ve desteklemek istediğiniz biçimlerde veri sağlamak için OnRenderData üye işlevini geçersiz kılın.
COleServerItem::COleServerItem
Bir COleServerItem
nesne oluşturur ve bunu sunucu belgesinin belge öğeleri koleksiyonuna ekler.
COleServerItem(
COleServerDoc* pServerDoc,
BOOL bAutoDelete);
Parametreler
pServerDoc
Yeni öğeyi içerecek belge işaretçisi.
bAutoDelete
Nesnenin bağlantısı yayınlandığında silinip silinemeyeceğini gösteren bayrak. Nesne, belgenizin verilerinin COleServerItem
silmeniz gereken ayrılmaz bir parçasıysa, bunu YANLIŞ olarak ayarlayın. Nesne, belgenizin verilerinde çerçeve tarafından silinebilecek bir aralığı tanımlamak için kullanılan ikincil bir yapıysa bunu TRUE olarak ayarlayın.
COleServerItem::CopyToClipboard
OLE öğesini Pano'ya kopyalamak için bu işlevi çağırın.
void CopyToClipboard(BOOL bIncludeLink = FALSE);
Parametreler
bIncludeLink
Bağlantı verilerinin Pano'ya kopyalanması gerekiyorsa bunu TRUE olarak ayarlayın. Sunucu uygulamanız bağlantıları desteklemiyorsa bunu YANLIŞ olarak ayarlayın.
Açıklamalar
İşlev, OLE öğesinin verilerini desteklenen biçimlerde içeren bir COleDataSource nesnesi oluşturmak için OnGetClipboardData üye işlevini kullanır. İşlev daha sonra COleDataSource::SetClipboard işlevini kullanarak nesneyi Pano'ya yerleştirirCOleDataSource
. nesnesi, COleDataSource
öğenin yerel verilerini ve CF_METAFILEPICT biçimindeki gösterimini ve ayrıca desteklemeyi seçtiğiniz dönüştürme biçimlerindeki verileri içerir. Bu üye işlevinin çalışması için Serialize ve OnDraw'ı uygulamış olmanız gerekir.
COleServerItem::D oDragDrop
DoDragDrop
Sürükle ve bırak işlemi gerçekleştirmek için üye işlevini çağırın.
DROPEFFECT DoDragDrop(
LPCRECT lpRectItem,
CPoint ptOffset,
BOOL bIncludeLink = FALSE,
DWORD dwEffects = DROPEFFECT_COPY | DROPEFFECT_MOVE,
LPCRECT lpRectStartDrag = NULL);
Parametreler
lpRectItem
Öğenin ekrandaki dikdörtgeni, istemci alanına göre piksel cinsinden.
ptOffset
Fare konumunun sürükleme sırasında olduğu lpItemRect uzaklığı.
bIncludeLink
Bağlantı verilerinin Pano'ya kopyalanması gerekiyorsa bunu TRUE olarak ayarlayın. Uygulamanız bağlantıları desteklemiyorsa FALSE olarak ayarlayın.
dwEffects
Sürükleme kaynağının sürükleme işleminde izin verecek etkilerini belirler (Kopyala, Taşı ve Bağla'nın birleşimi).
lpRectStartDrag
Sürüklemenin gerçekten nerede başlatıldığını tanımlayan dikdörtgenin işaretçisi. Daha fazla bilgi için aşağıdaki Açıklamalar bölümüne bakın.
Dönüş Değeri
DROPEFFECT sabit listesinden bir değer. DROPEFFECT_MOVE ise, özgün veriler kaldırılmalıdır.
Açıklamalar
Sürükle ve bırak işlemi hemen başlatılmaz. Fare imleci lpRectStartDrag tarafından belirtilen dikdörtgenden ayrılana kadar veya belirtilen sayıda milisaniye geçene kadar bekler. lpRectStartDrag NULL ise, fare imleci bir piksel hareket ettiğinde sürüklemenin başlaması için varsayılan bir dikdörtgen kullanılır.
Gecikme süresi bir kayıt defteri anahtarı ayarı tarafından belirtilir. Gecikme süresini CWinApp::WriteProfileString veya CWinApp::WriteProfileInt çağrısı yaparak değiştirebilirsiniz. Gecikme süresini belirtmezseniz, varsayılan 200 milisaniyelik bir değer kullanılır. Sürükleme gecikme süresi aşağıdaki gibi depolanır:
Windows NT Sürükleme gecikme süresi HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\NT\CurrentVersion\IniFileMapping\win.ini\Windows\DragDelay konumunda depolanır.
Windows 3.x Sürükleme gecikme süresi WIN'de depolanır. INI dosyası, [Windows} bölümü altında.
Windows 95/98 Sürükleme gecikme süresi win'in önbelleğe alınmış bir sürümünde depolanır. INI.
Sürükleme gecikmesi bilgilerinin kayıt defterinde veya içinde nasıl depolandığı hakkında daha fazla bilgi için. INI dosyası, bkz . Windows SDK'sında WriteProfileString .
COleServerItem::GetClipboardData
Belirtilen COleDataSource nesnesini CopyToClipboard olarak adlandırdıysanız Pano'ya kopyalanacak tüm verilerle doldurmak için bu işlevi çağırın (DoDragDrop olarak adlandırdıysanız aynı veriler de aktarılır).
void GetClipboardData(
COleDataSource* pDataSource,
BOOL bIncludeLink = FALSE,
LPPOINT lpOffset = NULL,
LPSIZE lpSize = NULL);
Parametreler
pDataSource
OLE öğesinin COleDataSource
verilerini desteklenen tüm biçimlerde alacak nesnenin işaretçisi.
bIncludeLink
Bağlantı verilerinin Pano'ya kopyalanması gerekiyorsa TRUE. Sunucu uygulamanız bağlantıları desteklemiyorsa YANLIŞ.
lpOffset
Fare imlecinin nesnenin kaynağından piksel cinsinden uzaklığı.
lpSize
Nesnenin piksel cinsinden boyutu.
Açıklamalar
Bu işlev, OLE öğesinin yerel verilerini almak için GetEmbedSourceData üye işlevini çağırır ve sunu biçimini ve desteklenen dönüştürme biçimlerini almak için AddOtherClipboardData üye işlevini çağırır. bIncludeLink TRUE ise işlev, öğenin bağlantı verilerini almak için GetLinkSourceData'yı da çağırır.
Bir nesneye tarafından CopyToClipboard
sağlanan biçimlerden önce veya sonra biçimler COleDataSource
koymak istiyorsanız bu işlevi geçersiz kılın.
COleServerItem::GetDataSource
Sunucu uygulamasının desteklediği dönüştürme biçimlerini depolamak için kullanılan COleDataSource nesnesini almak için bu işlevi çağırın.
COleDataSource* GetDataSource();
Dönüş Değeri
Dönüştürme biçimlerini depolamak COleDataSource
için kullanılan nesne işaretçisi.
Açıklamalar
Sunucu uygulamanızın veri aktarımı işlemleri sırasında çeşitli biçimlerde veri sunmasını istiyorsanız, bu biçimleri bu işlev tarafından döndürülen nesneye COleDataSource
kaydedin. Örneğin, Pano veya sürükle ve bırak işlemleri için OLE öğesinin CF_TEXT bir gösterimini sağlamak istiyorsanız, biçimi bu işlevin COleDataSource
döndürdüğü nesneye kaydeder ve sonra verileri sağlamak için üye işlevini geçersiz kılarsınız OnRenderXxxData
.
COleServerItem::GetDocument
Öğeyi içeren belgeye bir işaretçi almak için bu işlevi çağırın.
COleServerDoc* GetDocument() const;
Dönüş Değeri
Öğeyi içeren belge işaretçisi; Öğe bir belgenin parçası değilse NULL.
Açıklamalar
Bu, oluşturucuya bağımsız değişken olarak iletmiş olduğunuz sunucu belgesine COleServerItem
erişim sağlar.
COleServerItem::GetEmbedSourceData
Ole öğesinin CF_EMBEDSOURCE verilerini almak için bu işlevi çağırın.
void GetEmbedSourceData(LPSTGMEDIUM lpStgMedium);
Parametreler
lpStgMedium
OLE öğesinin CF_EMBEDSOURCE verilerini alacak STGMEDIUM yapısının işaretçisi.
Açıklamalar
Bu biçim, öğenin yerel verilerini içerir. Bu işlevin Serialize
düzgün çalışması için üye işlevini uygulamış olmanız gerekir.
Sonuç daha sonra COleDataSource::CacheData kullanılarak bir veri kaynağına eklenebilir. Bu işlev COleServerItem::OnGetClipboardData tarafından otomatik olarak çağrılır.
Daha fazla bilgi için bkz . Windows SDK'sında STGMEDIUM .
COleServerItem::GetItemName
Öğenin adını almak için bu işlevi çağırın.
const CString& GetItemName() const;
Dönüş Değeri
Öğenin adı.
Açıklamalar
Bu işlevi genellikle yalnızca bağlı öğeler için çağırırsınız.
COleServerItem::GetLinkSourceData
Ole öğesinin CF_LINKSOURCE verilerini almak için bu işlevi çağırın.
BOOL GetLinkSourceData(LPSTGMEDIUM lpStgMedium);
Parametreler
lpStgMedium
OLE öğesinin CF_LINKSOURCE verilerini alacak STGMEDIUM yapısının işaretçisi.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Bu biçim, OLE öğesinin türünü açıklayan CLSID'yi ve OLE öğesini içeren belgeyi bulmak için gereken bilgileri içerir.
Sonuç daha sonra COleDataSource::CacheData ile bir veri kaynağına eklenebilir. Bu işlev, OnGetClipboardData tarafından otomatik olarak çağrılır.
Daha fazla bilgi için bkz . Windows SDK'sında STGMEDIUM .
COleServerItem::GetObjectDescriptorData
Ole öğesinin CF_OBJECTDESCRIPTOR verilerini almak için bu işlevi çağırın.
void GetObjectDescriptorData(
LPPOINT lpOffset,
LPSIZE lpSize,
LPSTGMEDIUM lpStgMedium);
Parametreler
lpOffset
OLE öğesinin sol üst köşesinden fare tıklamasının uzaklığı. NULL olabilir.
lpSize
OLE öğesinin boyutu. NULL olabilir.
lpStgMedium
OLE öğesinin CF_OBJECTDESCRIPTOR verilerini alacak STGMEDIUM yapısının işaretçisi.
Açıklamalar
Bilgiler lpStgMedium tarafından işaret edilen yapıya STGMEDIUM
kopyalanır. Bu biçim, Özel Yapıştır iletişim kutusu için gereken bilgileri içerir.
Daha fazla bilgi için bkz . Windows SDK'sında STGMEDIUM .
COleServerItem::IsConnected
OLE öğesinin bağlı olup olmadığını görmek için bu işlevi çağırın.
BOOL IsConnected() const;
Dönüş Değeri
Öğe bağlıysa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Bir veya daha fazla kapsayıcının öğeye başvurusu varsa ole öğesi bağlı olarak kabul edilir. Bir öğe, başvuru sayısı 0'dan büyükse veya eklenmiş bir öğeyse bağlanır.
COleServerItem::IsLinkedItem
OLE öğesinin bağlı bir öğe olup olmadığını görmek için bu işlevi çağırın.
BOOL IsLinkedItem() const;
Dönüş Değeri
Öğe bağlantılı bir öğeyse sıfır olmayan; aksi takdirde 0.
Açıklamalar
Öğe geçerliyse ve belgenin katıştırılmış öğeler listesinde döndürülmezse bir öğe bağlanır. Bağlantılı bir öğe bir kapsayıcıya bağlı olabilir veya olmayabilir.
Hem bağlı hem de eklenmiş öğeler için aynı sınıfın kullanılması yaygın bir durumdur. IsLinkedItem
bağlı öğelerin katıştırılmış öğelerden farklı davranmasını sağlar, ancak kod birçok kez ortaktır.
COleServerItem::m_sizeExtent
Bu üye sunucuya kapsayıcı belgesinde nesnenin ne kadarının görünür olduğunu söyler.
CSize m_sizeExtent;
Açıklamalar
OnSetExtent'in varsayılan uygulaması bu üyeyi ayarlar.
COleServerItem::NotifyChanged
Bağlantılı öğe değiştirildikten sonra bu işlevi çağırın.
void NotifyChanged(DVASPECT nDrawAspect = DVASPECT_CONTENT);
Parametreler
nDrawAspect
DVASPECT numaralandırmasından OLE öğesinin hangi yönünün değiştiğini gösteren bir değer. Bu parametre aşağıdaki değerlerden herhangi birine sahip olabilir:
DVASPECT_CONTENT Öğesi, kapsayıcısında eklenmiş bir nesne olarak görüntülenebileceği şekilde temsil edilir.
DVASPECT_THUMBNAIL Öğe, gözatma aracında görüntülenebilmesi için "küçük resim" gösteriminde işlenir.
DVASPECT_ICON Öğesi bir simgeyle gösterilir.
DVASPECT_DOCPRINT Öğe, Dosya menüsündeki Yazdır komutu kullanılarak yazdırılmış gibi gösterilir.
Açıklamalar
Bir kapsayıcı öğesi belgeye otomatik bağlantıyla bağlıysa, öğe değişiklikleri yansıtacak şekilde güncelleştirilir. Microsoft Foundation Sınıf Kitaplığı kullanılarak yazılan kapsayıcı uygulamalarında COleClientItem ::OnChange yanıt olarak çağrılır.
COleServerItem::OnDoVerb
Belirtilen fiili yürütmek için çerçeve tarafından çağrılır.
virtual void OnDoVerb(LONG iVerb);
Parametreler
iVerb
Yürütülecek fiili belirtir. Aşağıdakilerden herhangi biri olabilir:
Değer | Anlamı | Simge |
---|---|---|
0 | Birincil fiil | OLEIVERB_PRIMARY |
1 | İkincil fiil | (Yok) |
-1 | Öğeyi düzenleme için görüntüle | OLEIVERB_SHOW |
-2 | Öğeyi ayrı pencerede düzenleme | OLEIVERB_OPEN |
-3 | Öğeyi gizle | OLEIVERB_HIDE |
-1 değeri genellikle başka bir fiilin diğer adıdır. Açık düzenleme desteklenmiyorsa- 2, -1 ile aynı etkiye sahiptir. Ek değerler için bkz . Windows SDK'sında IOleObject::D oVerb .
Açıklamalar
Kapsayıcı uygulaması Microsoft Foundation Sınıf Kitaplığı ile yazıldıysa, ilgili COleClientItem
nesnenin COleClientItem::Activate üye işlevi çağrıldığında bu işlev çağrılır. Birincil fiil veya OLEIVERB_SHOW belirtilirse varsayılan uygulama OnShow üye işlevini, ikincil fiil veya OLEIVERB_OPEN belirtilirse OnOpen ve OLEIVERB_HIDE belirtilirse OnHide'yi çağırır. iVerb yukarıda listelenen fiillerden biri değilse, varsayılan uygulama çağırırOnShow
.
Birincil fiilinizde öğe gösterilmiyorsa bu işlevi geçersiz kılın. Örneğin, öğe bir ses kaydıysa ve birincil fiili Oynat ise, öğeyi yürütmek için sunucu uygulamasını görüntülemeniz gerekmez.
Daha fazla bilgi için bkz . Windows SDK'sında IOleObject::D oVerb .
COleServerItem::OnDraw
OLE öğesini bir meta dosyaya işlemek için çerçeve tarafından çağrılır.
virtual BOOL OnDraw(
CDC* pDC,
CSize& rSize) = 0;
Parametreler
pDC
Öğenin çizildiği CDC nesnesine yönelik bir işaretçi. Görüntüleme bağlamı öznitelik görüntüleme bağlamı ile otomatik olarak bağlantılıdır, bu nedenle öznitelik işlevlerini çağırabilirsiniz, ancak bunu yaptığınızda meta dosyası cihaza özgü olur.
rSize
Meta dosyasının çizileceği HIMETRIC birimlerinde boyut.
Dönüş Değeri
Öğe başarıyla çizildiyse sıfır olmayan; aksi takdirde 0.
Açıklamalar
OLE öğesinin meta dosyası gösterimi, kapsayıcı uygulamasında öğeyi görüntülemek için kullanılır. Kapsayıcı uygulaması Microsoft Foundation Sınıf Kitaplığı ile yazılmışsa, meta dosyası ilgili COleClientItem nesnesinin Draw üye işlevi tarafından kullanılır. Varsayılan uygulama yoktur. Öğeyi belirtilen cihaz bağlamı içine çizmek için bu işlevi geçersiz kılmalısınız.
COleServerItem::OnDrawEx
Tüm çizimler için çerçeve tarafından çağrılır.
virtual BOOL OnDrawEx(
CDC* pDC,
DVASPECT nDrawAspect,
CSize& rSize);
Parametreler
pDC
Öğenin çizildiği CDC nesnesine yönelik bir işaretçi. DC öznitelik DC'sine otomatik olarak bağlanır, bu nedenle öznitelik işlevlerini çağırabilirsiniz, ancak bunu yaptığınızda meta dosyası cihaza özgü olur.
nDrawAspect
DVASPECT numaralandırmasından bir değer. Bu parametre aşağıdaki değerlerden herhangi birine sahip olabilir:
DVASPECT_CONTENT Öğesi, kapsayıcısında eklenmiş bir nesne olarak görüntülenebileceği şekilde temsil edilir.
DVASPECT_THUMBNAIL Öğe, gözatma aracında görüntülenebilmesi için "küçük resim" gösteriminde işlenir.
DVASPECT_ICON Öğesi bir simgeyle gösterilir.
DVASPECT_DOCPRINT Öğe, Dosya menüsündeki Yazdır komutu kullanılarak yazdırılmış gibi gösterilir.
rSize
Öğenin HIMETRIC birimlerindeki boyutu.
Dönüş Değeri
Öğe başarıyla çizildiyse sıfır olmayan; aksi takdirde 0.
Açıklamalar
Varsayılan uygulama, DVASPECT DVASPECT_CONTENT eşit olduğunda çağırır OnDraw
; aksi takdirde başarısız olur.
DVASPECT_ICON veya DVASPECT_THUMBNAIL gibi DVASPECT_CONTENT dışındaki yönlerin sunu verilerini sağlamak için bu işlevi geçersiz kılın.
COleServerItem::OnGetClipboardData
CopyToClipboard üye işlevine yapılan bir COleDataSource
çağrıyla Pano'ya yerleştirilecek tüm verileri içeren bir nesneyi almak için çerçeve tarafından çağrılır .
virtual COleDataSource* OnGetClipboardData(
BOOL bIncludeLink,
LPPOINT lpOffset,
LPSIZE lpSize);
Parametreler
bIncludeLink
Bağlantı verilerinin Pano'ya kopyalanması gerekiyorsa bunu TRUE olarak ayarlayın. Sunucu uygulamanız bağlantıları desteklemiyorsa bunu YANLIŞ olarak ayarlayın.
lpOffset
Fare imlecinin nesnenin kaynağından piksel cinsinden uzaklığı.
lpSize
Nesnenin piksel cinsinden boyutu.
Dönüş Değeri
Pano verilerini içeren COleDataSource nesnesine yönelik bir işaretçi.
Açıklamalar
Bu işlevin varsayılan uygulaması GetClipboardData'yi çağırır.
COleServerItem::OnGetExtent
OLE öğesinin boyutunu HIMETRIC birimlerinde almak için çerçeve tarafından çağrılır.
virtual BOOL OnGetExtent(
DVASPECT nDrawAspect,
CSize& rSize);
Parametreler
nDrawAspect
Sınırları alınacak OLE öğesinin yönünü belirtir. Bu parametre aşağıdaki değerlerden herhangi birine sahip olabilir:
DVASPECT_CONTENT Öğesi, kapsayıcısında eklenmiş bir nesne olarak görüntülenebileceği şekilde temsil edilir.
DVASPECT_THUMBNAIL Öğe, gözatma aracında görüntülenebilmesi için "küçük resim" gösteriminde işlenir.
DVASPECT_ICON Öğesi bir simgeyle gösterilir.
DVASPECT_DOCPRINT Öğe, Dosya menüsündeki Yazdır komutu kullanılarak yazdırılmış gibi gösterilir.
rSize
OLE öğesinin boyutunu alacak bir CSize
nesneye başvuru.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Kapsayıcı uygulaması Microsoft Foundation Sınıf Kitaplığı ile yazıldıysa, ilgili COleClientItem
nesnenin GetExtent üye işlevi çağrıldığında bu işlev çağrılır. Varsayılan uygulama hiçbir şey yapmaz. Bunu kendiniz uygulamalısınız. OLE öğesinin boyutu için bir isteği işlerken özel işlem gerçekleştirmek istiyorsanız bu işlevi geçersiz kılın.
COleServerItem::OnHide
OLE öğesini gizlemek için çerçeve tarafından çağrılır.
virtual void OnHide();
Açıklamalar
Varsayılan olarak öğesini çağırır COleServerDoc::OnShowDocument( FALSE )
. İşlev ayrıca kapsayıcıya OLE öğesinin gizlendiğini bildirir. Ole öğesini gizlerken özel işlem gerçekleştirmek istiyorsanız bu işlevi geçersiz kılın.
COleServerItem::OnInitFromData
pDataObject içeriğini kullanarak bir OLE öğesini başlatmak için çerçeve tarafından çağrılır.
virtual BOOL OnInitFromData(
COleDataObject* pDataObject,
BOOL bCreation);
Parametreler
pDataObject
OLE öğesini başlatmak için çeşitli biçimlerde veri içeren bir OLE veri nesnesi işaretçisi.
bCreation
bir kapsayıcı uygulaması tarafından yeni oluşturulan bir OLE öğesini başlatmak için işlev çağrılırsa TRUE. İşlev, zaten var olan bir OLE öğesinin içeriğini değiştirmek için çağrılırsa YANLIŞ.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
bCreation TRUE ise, kapsayıcı geçerli seçimi temel alarak Yeni Nesne Ekle'yi uygularsa bu işlev çağrılır. Seçilen veriler yeni OLE öğesi oluşturulurken kullanılır. Örneğin, elektronik tablo programında bir hücre aralığı seçip Yeni Nesne Ekle'yi kullanarak seçili aralıktaki değerleri temel alan bir grafik oluştururken. Varsayılan uygulama hiçbir şey yapmaz. pDataObject tarafından sunulanlardan kabul edilebilir bir biçim seçmek ve sağlanan verilere göre OLE öğesini başlatmak için bu işlevi geçersiz kılın. Bu, gelişmiş bir geçersiz kılınabilir.
Daha fazla bilgi için bkz . Windows SDK'sında IOleObject::InitFromData .
COleServerItem::OnOpen
OLE öğesini yerinde değil, sunucu uygulamasının ayrı bir örneğinde görüntülemek için çerçeve tarafından çağrılır.
virtual void OnOpen();
Açıklamalar
Varsayılan uygulama, OLE öğesini içeren belgeyi görüntüleyen ilk çerçeve penceresini etkinleştirir; uygulama bir mini sunucuysa, varsayılan uygulama ana pencereyi gösterir. İşlev ayrıca ole öğesinin açıldığını kapsayıcıya bildirir.
Ole öğesini açarken özel işlem gerçekleştirmek istiyorsanız bu işlevi geçersiz kılın. Bu özellikle, açıldığında seçimi bağlantıya ayarlamak istediğiniz bağlı öğelerde yaygındır.
Daha fazla bilgi için bkz . Windows SDK'sında IOleClientSite::OnShowWindow .
COleServerItem::OnQueryUpdateItems
Geçerli sunucu belgesindeki bağlantılı öğelerin güncel olup olmadığını belirlemek için çerçeve tarafından çağrılır.
virtual BOOL OnQueryUpdateItems();
Dönüş Değeri
Belgenin güncelleştirmeleri gereken öğeleri varsa sıfır olmayan; Tüm öğeler güncelse 0.
Açıklamalar
Kaynak belge değiştirildiyse ancak bağlantılı öğe belgedeki değişiklikleri yansıtacak şekilde güncelleştirilmediyse, öğe güncel değildir.
COleServerItem::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şlevi kullanılarak nesneye önceden yerleştirilmiş COleDataSource
bir biçimdir. Bu işlevin varsayılan uygulaması, sağlanan depolama ortamı bir dosya veya bellekse sırasıyla OnRenderFileData veya OnRenderGlobalData'yı çağırır. Bu biçimlerden hiçbiri sağlanmazsa, varsayılan uygulama 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.
Bu, gelişmiş bir geçersiz kılınabilir. 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 . Windows SDK'sında IDataObject::GetData, STGMEDIUM, FORMATETC ve TYMED .
COleServerItem::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 nesneyi CFile
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 üye işlevi kullanılarak nesneye önceden yerleştirilmiş COleDataSource
bir biçimdir. Bu işlevin varsayılan uygulaması YALNıZCA YANLIŞ döndürür.
Bu, gelişmiş bir geçersiz kılınabilir. 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, OnRenderData'yı geçersiz kılın. Verileriniz bir dosyadaysa veya değişken boyuttaysa, OnRenderFileData'yı geçersiz kılın.
Daha fazla bilgi için bkz . Windows SDK'sında IDataObject::GetData ve FORMATETC .
COleServerItem::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 nesneye önceden yerleştirilmiş COleDataSource
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.
Bu, gelişmiş bir geçersiz kılınabilir. 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, OnRenderData'yı geçersiz kılın. Verileriniz bir dosyadaysa veya değişken boyuttaysa, OnRenderFileData'yı geçersiz kılın.
Daha fazla bilgi için bkz . Windows SDK'sında IDataObject::GetData ve FORMATETC .
COleServerItem::OnSetColorScheme
OLE öğesini düzenlerken kullanılacak renk paletini belirtmek için çerçeve tarafından çağrılır.
virtual BOOL OnSetColorScheme(const LOGPALETTE* lpLogPalette);
Parametreler
lpLogPalette
Windows LOGPALETTE yapısının işaretçisi.
Dönüş Değeri
Renk paleti kullanılıyorsa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Kapsayıcı uygulaması Microsoft Foundation Sınıf Kitaplığı kullanılarak yazıldıysa, ilgili COleClientItem
nesnenin IOleObject::SetColorScheme işlevi çağrıldığında bu işlev çağrılır. Varsayılan uygulama FALSE döndürür. Önerilen paleti kullanmak istiyorsanız bu işlevi geçersiz kılın. Sunucu uygulamasının önerilen paleti kullanması gerekmez.
Daha fazla bilgi için bkz . Windows SDK'sında IOleObject::SetColorScheme .
COleServerItem::OnSetData
OLE öğesinin 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
İşlev çağrısını tamamladıktan sonra depolama ortamı sahipliğini kimlerin olduğunu gösterir. Arayan, depolama ortamı adına ayrılan kaynakların serbest bırakılmasından kimin sorumlu olduğuna karar verir. Çağıran, bRelease ayarını yaparak bunu yapar. bRelease sıfır değilse, sunucu öğesi sahipliği alır ve kullanımı bittiğinde ortamı boşaltır. bRelease 0 olduğunda, çağıran sahipliği korur ve sunucu öğesi depolama medyasını yalnızca çağrı süresi boyunca kullanabilir.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Sunucu öğesi, verileri başarıyla elde edene kadar verilerin sahipliğini almaz. Yani, 0 döndürürse sahipliği almaz. Veri kaynağı sahipliği alırsa ReleaseStgMedium işlevini çağırarak depolama medyasını serbest bırakır.
Varsayılan uygulama hiçbir şey yapmaz. OLE öğesinin verilerini belirtilen verilerle değiştirmek için bu işlevi geçersiz kılın. Bu, gelişmiş bir geçersiz kılınabilir.
Daha fazla bilgi için bkz . Windows SDK'sında STGMEDIUM, FORMATETC ve ReleaseStgMedium .
COleServerItem::OnSetExtent
Ole öğesine kapsayıcı belgesinde ne kadar boş alan olduğunu bildirmek için çerçeve tarafından çağrılır.
virtual BOOL OnSetExtent(
DVASPECT nDrawAspect,
const CSize& size);
Parametreler
nDrawAspect
Sınırları belirtilen OLE öğesinin yönünü belirtir. Bu parametre aşağıdaki değerlerden herhangi birine sahip olabilir:
DVASPECT_CONTENT Öğesi, kapsayıcısında eklenmiş bir nesne olarak görüntülenebileceği şekilde temsil edilir.
DVASPECT_THUMBNAIL Öğe, gözatma aracında görüntülenebilmesi için "küçük resim" gösteriminde işlenir.
DVASPECT_ICON Öğesi bir simgeyle gösterilir.
DVASPECT_DOCPRINT Öğe, Dosya menüsündeki Yazdır komutu kullanılarak yazdırılmış gibi gösterilir.
boyut
OLE öğesinin yeni boyutunu belirten bir CSize yapısı.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Kapsayıcı uygulaması Microsoft Foundation Sınıf Kitaplığı ile yazılmışsa, ilgili COleClientItem
nesnenin SetExtent üye işlevi çağrıldığında bu işlev çağrılır. Varsayılan uygulama, nDrawAspect DVASPECT_CONTENT ise m_sizeExtent üyeyi belirtilen boyuta ayarlar; aksi takdirde 0 döndürür. Öğenin boyutunu değiştirdiğinizde özel işlem gerçekleştirmek için bu işlevi geçersiz kılın.
COleServerItem::OnShow
Sunucu uygulamasına OLE öğesini yerinde görüntülemesini bildirmek için çerçeve tarafından çağrılır.
virtual void OnShow();
Açıklamalar
Bu işlev genellikle kapsayıcı uygulamasının kullanıcısı bir öğe oluşturduğunda veya öğenin gösterilmesini gerektiren Düzenle gibi bir fiil yürüttüğünde çağrılır. Varsayılan uygulama yerinde etkinleştirmeyi dener. Bu başarısız olursa işlev, OLE öğesini ayrı bir pencerede görüntülemek için üye işlevini çağırır OnOpen
.
Bir OLE öğesi gösterildiğinde özel işlem gerçekleştirmek istiyorsanız bu işlevi geçersiz kılın.
COleServerItem::OnUpdate
Bir öğe değiştirildiğinde çerçeve tarafından çağrılır.
virtual void OnUpdate(
COleServerItem* pSender,
LPARAM lHint,
CObject* pHint,
DVASPECT nDrawAspect);
Parametreler
pSender
Belgeyi değiştiren öğenin işaretçisi. NULL olabilir.
lHint
Değişiklik hakkında bilgi içerir.
pHint
Değişiklikle ilgili bilgileri depolayarak nesne işaretçisi.
nDrawAspect
DVASPECT numaralandırmasından bir değer. Bu parametre aşağıdaki değerlerden herhangi birine sahip olabilir:
DVASPECT_CONTENT Öğesi, kapsayıcısında eklenmiş bir nesne olarak görüntülenebileceği şekilde temsil edilir.
DVASPECT_THUMBNAIL Öğe, gözatma aracında görüntülenebilmesi için "küçük resim" gösteriminde işlenir.
DVASPECT_ICON Öğesi bir simgeyle gösterilir.
DVASPECT_DOCPRINT Öğe, Dosya menüsündeki Yazdır komutu kullanılarak yazdırılmış gibi gösterilir.
Açıklamalar
Varsayılan uygulama, ipucundan veya gönderenden bağımsız olarak NotifyChanged'i çağırır.
COleServerItem::OnUpdateItems
Sunucu belgesindeki tüm öğeleri güncelleştirmek için çerçeve tarafından çağrılır.
virtual void OnUpdateItems();
Açıklamalar
Varsayılan uygulama, belgedeki tüm COleClientItem
nesneler için UpdateLink'i çağırır.
COleServerItem::SetItemName
Adını ayarlamak için bağlı bir öğe oluşturduğunuzda bu işlevi çağırabilirsiniz.
void SetItemName(LPCTSTR lpszItemName);
Parametreler
lpszItemName
Öğenin yeni adına işaret eden işaretçi.
Açıklamalar
Adın belge içinde benzersiz olması gerekir. Bağlı bir öğeyi düzenlemek için bir sunucu uygulaması çağrıldığında, uygulama öğeyi bulmak için bu adı kullanır. Katıştırılmış öğeler için bu işlevi çağırmanız gerekmez.
Ayrıca bkz.
MFC Örnek HIERSVR
CDocItem Sınıfı
Hiyerarşi Grafiği
COleClientItem Sınıfı
COleServerDoc Sınıfı
COleTemplateServer Sınıfı