Método IStrokeBuilder::BeginStroke (rtscom.h)
Comienza un trazo en un objeto de entrada de lápiz mediante datos de paquete de un objeto RealTimeStylus Class .
Sintaxis
HRESULT BeginStroke(
[in] TABLET_CONTEXT_ID tcid,
[in] STYLUS_ID sid,
[in] const LONG *pPacket,
[in] ULONG cPacketProperties,
[in] PACKET_PROPERTY *pPacketProperties,
[in] FLOAT fInkToDeviceScaleX,
[in] FLOAT fInkToDeviceScaleY,
[in, out] IInkStrokeDisp **ppIInkStroke
);
Parámetros
[in] tcid
Identificador de contexto de tableta.
[in] sid
Identificador del lápiz óptico.
[in] pPacket
Inicio de los datos del paquete. Es de solo lectura.
[in] cPacketProperties
Recuento de LONG, que es el número de paquetes multiplicados por el número de propiedades, en el búfer pPacketProperties .
[in] pPacketProperties
Búfer que contiene las propiedades del paquete.
[in] fInkToDeviceScaleX
Factor de conversión horizontal, o x, del eje horizontal del espacio de entrada de lápiz a las coordenadas del digitalizador.
[in] fInkToDeviceScaleY
Factor de conversión vertical, o eje Y, para el eje vertical del espacio de entrada de lápiz a las coordenadas del digitalizador.
[in, out] ppIInkStroke
Puntero al nuevo trazo. Este valor puede ser NULL.
Valor devuelto
Para obtener una descripción de los valores devueltos, vea RealTimeStylus Classes and Interfaces (Clases e interfaces de RealTimeStylus).
Comentarios
Se usa junto con los métodos IStrokeBuilder::AppendPackets yIStrokeBuilder::EndStroke Method . IStrokeBuilder::BeginStroke (Método) comienza a crear el trazo. A medida que el movimiento continúa y se reciben paquetes adicionales, el método IStrokeBuilder::AppendPackets Method agrega esos datos de trazo adicionales. Cuando el lápiz de tableta se eleva desde la superficie y no hay más paquetes entrantes, se llama al método IStrokeBuilder::EndStroke Method .
Ejemplos
En el siguiente ejemplo de C++ se muestra la implementación de un método IStylusPlugin::StylusDown Method en un objeto IStylusPlugin Interface . El complemento usa un objeto StrokeBuilder para crear un nuevo trazo de lápiz. Se llama al método IStrokeBuilder::BeginStroke Method desde IStylusPlugin::StylusDown Method para iniciar la construcción de un trazo.
STDMETHODIMP CStrokeBuilderPlugin::StylusDown(
/* [in] */ IRealTimeStylus *piRtsSrc,
/* [in] */ const StylusInfo *pStylusInfo,
/* [in] */ ULONG cPropCountPerPkt,
/* [size_is][in] */ LONG *pPacket,
/* [out][in] */ LONG **ppInOutPkt)
{
FLOAT fInkToDeviceScaleX;
FLOAT fInkToDeviceScaleY;
ULONG cPacketProperties;
PACKET_PROPERTY* pPacketProperties;
// Get the info we need to call BeginStroke
HRESULT hr = piRtsSrc->GetPacketDescriptionData(pStylusInfo->tcid, &fInkToDeviceScaleX, &fInkToDeviceScaleY,
&cPacketProperties, &pPacketProperties);
if (SUCCEEDED(hr))
{
// Start creating the stroke
hr = m_pStrokeBuilder->BeginStroke(pStylusInfo->tcid, pStylusInfo->cid, pPacket, cPropCountPerPkt,
pPacketProperties, fInkToDeviceScaleX, fInkToDeviceScaleY, &m_piStroke);
}
return hr;
}
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows XP Tablet PC Edition [solo aplicaciones de escritorio] |
Servidor mínimo compatible | No se admite ninguno |
Plataforma de destino | Windows |
Encabezado | rtscom.h |
Archivo DLL | RTSCom.dll |
Consulte también
IStrokeBuilder::AppendPackets (Método)
IStrokeBuilder::CreateStroke (Método)