Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of mappen te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen om mappen te wijzigen.
Opmerking
De Microsoft Foundation Classes-bibliotheek (MFC) wordt nog steeds ondersteund. We voegen echter geen functies meer toe of werken de documentatie bij.
Hiermee kunnen gegevens naar een neergezet doel worden gesleept.
Syntaxis
class COleDropSource : public CCmdTarget
Leden
Openbare constructors
| Naam | Description |
|---|---|
| COleDropSource::COleDropSource | Maakt een COleDropSource object. |
Openbare methoden
| Naam | Description |
|---|---|
| COleDropSource::GiveFeedback | Hiermee wijzigt u de cursor tijdens een slepen-en-neerzetten-bewerking. |
| COleDropSource::OnBeginDrag | Verwerkt het vastleggen van de muis tijdens een slepen-en-neerzetten-bewerking. |
| COleDropSource::QueryContinueDrag | Hiermee wordt gecontroleerd of slepen moet worden voortgezet. |
Opmerkingen
De COleDropTarget-klasse verwerkt het ontvangende gedeelte van de bewerking slepen en neerzetten. Het COleDropSource object is verantwoordelijk voor het bepalen wanneer een sleepbewerking begint, feedback geeft tijdens de sleepbewerking en het bepalen wanneer de sleepbewerking eindigt.
Als u een COleDropSource object wilt gebruiken, roept u de constructor aan. Dit vereenvoudigt het proces om te bepalen welke gebeurtenissen, zoals een muisklik, een sleepbewerking starten met behulp van de functie COleDataSource::D oDragDrop, COleClientItem::D oDragDrop of COleServerItem::D oDragDrop . Met deze functies wordt een COleDropSource object voor u gemaakt. Mogelijk wilt u het standaardgedrag van de COleDropSource overschrijfbare functies wijzigen. Deze lidfuncties worden op de juiste tijdstippen door het framework aangeroepen.
Zie het artikel OLE slepen en neerzetten voor meer informatie over slepen en neerzetten met OLE.
Zie IDropSource in de Windows SDK voor meer informatie.
Overnamehiƫrarchie
COleDropSource
Requirements
Koptekst: afxole.h
COleDropSource::COleDropSource
Maakt een COleDropSource object.
COleDropSource();
COleDropSource::GiveFeedback
Aangeroepen door het framework na het aanroepen van COleDropTarget::OnDragOver of COleDropTarget::D ragEnter.
virtual SCODE GiveFeedback(DROPEFFECT dropEffect);
Parameterwaarden
dropEffect
Het effect dat u aan de gebruiker wilt weergeven, geeft meestal aan wat er zou gebeuren als er op dit moment een daling optrad met de geselecteerde gegevens. Dit is doorgaans de waarde die wordt geretourneerd door de meest recente aanroep naar CView::OnDragEnter of CView::OnDragOver. Dit kan een of meer van de volgende zijn:
DROPEFFECT_NONE Een neerval is niet toegestaan.
DROPEFFECT_COPY Er wordt een kopieerbewerking uitgevoerd.
DROPEFFECT_MOVE een verplaatsingsbewerking wordt uitgevoerd.
DROPEFFECT_LINK Er wordt een koppeling van de verwijderde gegevens naar de oorspronkelijke gegevens tot stand gebracht.
DROPEFFECT_SCROLL Een schuifbewerking voor slepen staat op het punt of in het doel op te treden.
Retourwaarde
Retourneert DRAGDROP_S_USEDEFAULTCURSORS als slepen wordt uitgevoerd, NOERROR als dat niet het is.
Opmerkingen
Overschrijf deze functie om feedback te geven aan de gebruiker over wat er zou gebeuren als er op dit moment een daling optrad. Voor de standaard implementatie worden de OLE-standaardcursors gebruikt. Zie het artikel OLE slepen en neerzetten voor meer informatie over slepen en neerzetten met OLE.
Zie IDropSource::GiveFeedback, IDropTarget::D ragOver en IDropTarget::D ragEnter in de Windows SDK voor meer informatie.
COleDropSource::OnBeginDrag
Aangeroepen door het framework wanneer een gebeurtenis optreedt die een sleepbewerking kan starten, zoals het drukken op de linkermuisknop.
virtual BOOL OnBeginDrag(CWnd* pWnd);
Parameterwaarden
pWnd
Verwijst naar het venster met de geselecteerde gegevens.
Retourwaarde
Nonzero als slepen is toegestaan, anders 0.
Opmerkingen
Overschrijf deze functie als u de manier wilt wijzigen waarop het sleepproces wordt gestart. De standaard implementatie legt de muis vast en blijft in de sleepmodus totdat de gebruiker op de linker- of rechtermuisknop klikt of op Esc klikt, op welk moment de muis wordt losgelaten.
COleDropSource::QueryContinueDrag
Nadat slepen is gestart, wordt deze functie herhaaldelijk aangeroepen door het framework totdat de sleepbewerking is geannuleerd of voltooid.
virtual SCODE QueryContinueDrag(
BOOL bEscapePressed,
DWORD dwKeyState);
Parameterwaarden
bEscapePressed
Geeft aan of de ESC-toets is ingedrukt sinds de laatste aanroep naar COleDropSource::QueryContinueDrag.
dwKeyState
Bevat de status van de wijzigingstoetsen op het toetsenbord. Dit is een combinatie van een willekeurig aantal van de volgende: MK_CONTROL, MK_SHIFT, MK_ALT, MK_LBUTTON, MK_MBUTTON en MK_RBUTTON.
Retourwaarde
DRAGDROP_S_CANCEL als de ESC-toets of de rechterknop wordt ingedrukt of als de linkerknop omhoog gaat voordat u sleept. DRAGDROP_S_DROP als er een drop-bewerking moet plaatsvinden. Anders S_OK.
Opmerkingen
Overschrijf deze functie als u het punt wilt wijzigen waarop slepen wordt geannuleerd of als er een neerval optreedt.
De standaard implementatie initieert de drop of annuleert de slepen als volgt. Het annuleert een sleepbewerking wanneer de ESC-toets of de rechtermuisknop wordt ingedrukt. Er wordt een neerzetbewerking gestart wanneer de linkermuisknop wordt verhoogd nadat slepen is gestart. Anders wordt S_OK geretourneerd en worden er geen verdere bewerkingen uitgevoerd.
Omdat deze functie vaak wordt aangeroepen, moet deze zoveel mogelijk worden geoptimaliseerd.
Zie ook
MFC-voorbeeld HIERSVR
MFC-voorbeeld-OCLIENT
CCmdTarget-klasse
Hiƫrarchiegrafiek