Delen via


Containers: Client-Item staten

In dit artikel worden de verschillende statussen uitgelegd die een clientitem in zijn levensduur doormaakt.

Een clientitem doorloopt verschillende statussen wanneer het wordt gemaakt, geactiveerd, gewijzigd en opgeslagen. Telkens wanneer de status van het item wordt gewijzigd, roept het framework COleClientItem::OnChange aan met de melding OLE_CHANGED_STATE . De tweede parameter is een waarde uit de COleClientItem::ItemState opsomming. Dit kan een van de volgende zijn:

  • COleClientItem::emptyState

  • COleClientItem::loadedState

  • COleClientItem::openState

  • COleClientItem::activeState

  • COleClientItem::activeUIState

In de lege toestand is een klantitem nog niet volledig een item. Er is geheugen voor toegewezen, maar het is nog niet geïnitialiseerd met de gegevens van het OLE-item. Dit is de status waarin een client-item zich bevindt wanneer het is gemaakt via een oproep naar new, maar nog niet de tweede stap van het typische twee-stappenproces heeft ondergaan.

In de tweede stap, uitgevoerd via een aanroep naar COleClientItem::CreateFromFile of een andere CreateFromxxxx-functie, wordt het item volledig gemaakt. De OLE-gegevens (uit een bestand of een andere bron, zoals het Klembord) zijn gekoppeld aan het COleClientItem-afgeleide object. Nu bevindt het item zich in de geladen toestand.

Wanneer een item is geopend in het venster van de server in plaats van dat het is geopend in het document van de container, heeft het de status Open (of volledig geopend). In deze toestand wordt meestal een kruispatroon over de weergave van het item in het venster van de container aangebracht om aan te geven dat het item ergens anders actief is.

Wanneer een item ter plaatse is geactiveerd, gaat het meestal slechts kort door de actieve status. Vervolgens wordt de actieve gebruikersinterfacestatus ingevoerd, waarin de server de menu's, werkbalken en andere onderdelen van de gebruikersinterface heeft samengevoegd met die van de container. De aanwezigheid van deze gebruikersinterface-componenten onderscheidt de UI-actieve toestand van de actieve toestand. Anders lijkt de actieve status op de actieve gebruikersinterfacestatus. Als de server Ongedaan maken ondersteunt, moet de server de statusgegevens van de ongedaan maken-functie van het OLE-item behouden totdat deze de geladen of geopende status heeft bereikt.

Zie ook

Containers
Activering
Containers: Client-Item meldingen
Trackers
CRectTracker-klasse