Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Ett plugin-program för dynamisk återgivning är ett objekt som visar penndata för surfplattor i realtid när de hanteras av RealTimeStylus--objektet. Senare, för händelser som en formuläruppdatering, kan plugin-programmet för dynamisk återgivning eller ett plugin-program för ink-insamlare rita om pennanteckningen.
DynamicRenderer-objektet
Objektet RealTimeStylus implementerar gränssnittet IStylusSyncPlugin. Objektet DynamicRenderer återger pennanteckningen i realtid när den ritas. När metoden Uppdatera anropas medan DynamicRenderer--objektet är aktiverat, ritar DynamicRenderer-objektet om linjen som för närvarande samlas in. Egenskapen DynamicRenderer objektets aktiverade är ursprungligen inställd på FALSE.
Not
När du anropar DynamicRenderer-objektets Refresh-metod inifrån en Paint-händelsehanterare i hanterad kod anger du DynamicRenderer objektets egenskap ClipRectangle till egenskapen PaintEventArgs objektets egenskap ClipRectangle.
Objektet DynamicRenderer kan tillfälligt cachelagra pennanteckningsdata. Om du vill använda den här funktionen i hanterad kod anger du egenskapen EnableDataCache till TRUE. När objektet DynamicRenderer tar emot ett anrop till dess IStylusSyncPlugin.StylusUp-metod cachelagrar det linjedata och lägger till anpassade pennadata i indatakön som svar på StylusUpData-objektet för stroken. Egenskapen CustomStylusData-objektets CustomDataId anges till värdet DynamicRendererCachedDataGuid och CustomStylusData-objektets dataegenskap innehåller ett DynamicRendererCachedData-objekt. Anropa metoden DynamicRenderer objektets ReleaseCachedData när stroken har samlats in och kan återges statiskt. När metoden Uppdatera anropas medan DynamicRenderer-objektet är aktiverat, ritar DynamicRenderer-objektet om alla linjer som cachelagras. När egenskapen DataCacheEnabled är inställd på falsetas cachelagrade linjedata bort.
Följande diagram visar hur objektet DynamicRenderer lägger till data i tablet pen-data när egenskapen DynamicRenderer-objektets DataCacheEnabled har angetts.
I det här diagrammet representerar cirkeln "SD" ett StylusDown- objekt och cirklarna med bokstaven "P" representerar Paket objekt som redan har lagts till i RealTimeStylus objektets utdatakö och som ännu inte har skickats till den asynkrona plugin-samlingen. Cirkeln med bokstaven "SU" representerar ett StylusUp- objekt som RealTimeStylus-objektet bearbetas för närvarande. Den skickas till den synkrona plugin-samlingen och placeras sedan i utdatakön. Cirklarna med namnet "DR" representerar anpassade pennadata som läggs till i indatakön av DynamicRenderer plugin-program som svar på den penna som är associerad med "SU". De anpassade pennadata med namnet "DR" skickas sedan till de synkrona plugin-programmen och sedan till utdatakön innan nästa tablet pen-data bearbetas. Den tomma cirkeln representerar positionen i utdatakön där framtida penndata för surfplattor läggs till. I diagrammet visas även plugin-programmet ink-collector som anropar DynamicRenderer-objektets ReleaseCachedData-metod för att frigöra cachelagrade linjedata efter att ink-collection-plugin-programmet har bearbetat stroken.
Särskilda överväganden
I följande lista beskrivs andra punkter att ta hänsyn till när du använder DynamicRenderer--objektet.
Du bör inte koppla ett DynamicRenderer- objekt till fler än en RealTimeStylus- objekt. När två RealTimeStylus- objekt som DynamicRenderer-objektet är kopplat till är aktiverade, inträffar följande.
- Objektet DynamicRenderer genererar ett undantag som svar på det andra anropet till metoden RealTimeStylusEnabled.
- Det andra RealTimeStylus- objekt som aktiverades genererar ett Fel-objekt och meddelar de återstående plugin-programmen i dess plugin-samlingar av felet.
- DynamicRenderer--objektet slutar återge penndata för surfplattor.
Objektet RealTimeStylus genererar ett undantag när dess AddCustomStylusDataToQueue-metoden anropas med guid parameter inställd på dynamiskrendererCachedDataGuid globalt unik identifierare (GUID).
objektet DynamicRenderer implementeras som en COM-omslutning (Component Object Model) och du kan inte anropa dess IStylusSyncPlugin gränssnittsmetoder direkt. Mer information om COM-åtgärden och objektet RealTimeStylus finns i Implementation Notes for the StylusInput API:er.
Anpassad återgivning
Du kan skapa ett eget plugin-program för dynamisk återgivning genom att skapa ett synkront plugin-program som prenumererar på StylusDown, Packetsoch StylusUp-meddelanden. Plugin-programmet kan sedan återge linjen när den ritas. Detta kan vara ett sätt att implementera ett urvalsverktyg som använder en fri formulärmarkering eller markeringsruta, till exempel.