Método IStylusPlugin::StylusInRange (rtscom.h)
Notifica al complemento de implementación que el lápiz óptico entra en el intervalo de detección del digitalizador.
Sintaxis
HRESULT StylusInRange(
[in] IRealTimeStylus *piRtsSrc,
[in] TABLET_CONTEXT_ID tcid,
[in] STYLUS_ID sid
);
Parámetros
[in] piRtsSrc
Objeto RealTimeStylus Class que envió la notificación.
[in] tcid
Identificador de contexto de tableta.
[in] sid
Identificador de lápiz óptico.
Valor devuelto
Para obtener una descripción de los valores devueltos, vea RealTimeStylus Classes and Interfaces (Clases e interfaces de RealTimeStylus).
Comentarios
El lápiz óptico está en rango del digitalizador. Este es un buen lugar para comprobar si el lápiz óptico está invertido y, si es así, cambiar al modo borrador.
Ejemplos
En el siguiente ejemplo de C++ se implementa un método IStylusPlugin::StylusInRange Method que obtiene el estado de todos los botones de un lápiz óptico e informa a la ventana de depuración mediante la macro TRACE .
STDMETHODIMP CPacketModifier::StylusInRange(
/* [in] */ IRealTimeStylus *piRtsSrc,
/* [in] */ TABLET_CONTEXT_ID tcid,
/* [in] */ STYLUS_ID sid)
{
IInkCursor* pInkCursor;
HRESULT hr = piRtsSrc->GetStylusForId(sid, &pInkCursor);
if (SUCCEEDED(hr))
{
IInkCursorButtons* pInkCursorButtons;
hr = pInkCursor->get_Buttons(&pInkCursorButtons);
if (SUCCEEDED(hr))
{
LONG lButtonCount;
pInkCursorButtons->get_Count(&lButtonCount);
if (SUCCEEDED(hr))
{
IInkCursorButton* pInkCursorButton;
VARIANT index;
VariantInit(&index);
index.vt = VT_I4;
for (index.intVal = 0; index.intVal < lButtonCount; index.intVal++)
{
hr = pInkCursorButtons->Item(index, &pInkCursorButton);
if (SUCCEEDED(hr))
{
InkCursorButtonState currentState;
hr = pInkCursorButton->get_State(¤tState);
if (SUCCEEDED(hr))
{
switch(currentState)
{
case ICBS_Unavailable:
TRACE("ICBS_Unavailable\n");
break;
case ICBS_Up:
TRACE("ICBS_Up\n");
break;
case ICBS_Down:
TRACE("ICBS_Down\n");
break;
default:
TRACE("Cursor button state unknown.\n");
break;
}
}
}
}
VariantClear(&index);
}
}
}
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 |