Compartir a través de


IMAPITable::QueryPosition

Hace referencia a: Outlook 2013 | Outlook 2016

Recupera la posición actual de la fila de tabla del cursor, en función de un valor fraccionario.

HRESULT QueryPosition(
ULONG FAR * lpulRow,
ULONG FAR * lpulNumerator,
ULONG FAR * lpulDenominator
);

Parameters

lpulRow

[out] Puntero al número de la fila actual. El número de fila es de base cero; la primera fila de la tabla es cero.

lpulNumerator

[out] Puntero al numerador de la fracción que identifica la posición de la tabla.

lpulDenominator

[out] Puntero al denominador de la fracción que identifica la posición de la tabla. El parámetro lpulDenominator no puede ser cero.

Valor devuelto

S_OK

El método devolvió valores válidos en lpulRow, lpulNumerator y lpulDenominator.

Comentarios

El método IMAPITable::QueryPosition determina la posición actual de la fila y devuelve tanto el número de la fila actual como un valor fraccionario que indica su posición relativa al final de la tabla. MAPI define la fila actual como la siguiente fila que se va a leer.

Notas a los implementadores

No es necesario devolver el número exacto de filas de la tabla para el parámetro lpulDenominator ; puede ser una aproximación.

Si no puede determinar la fila actual, devuelva un valor de 0xFFFFFFFF en lpulRow.

Notas para los llamadores

Puede usar QueryPosition para colocar un cuadro de desplazamiento en una barra de desplazamiento. Por ejemplo, en una tabla que contiene 100 filas, si QueryPosition devuelve un valor de 75 en el parámetro lpulNumerator , 100 en el parámetro lpulDenominator y 75 en el parámetro lpulRow , puede colocar el cuadro de desplazamiento 3/4 del camino a través de la barra de desplazamiento.

No confíe en que el valor de lpulDenominator sea el número de filas de la tabla. QueryPosition no siempre puede identificar la fila exacta en la que está colocado el cursor.

Una llamada a QueryPosition puede implicar grandes cantidades de memoria, especialmente para tablas categorizadas de gran tamaño. Si el parámetro lpulRow se establece en 0xFFFFFFFF, se requiere demasiada memoria para que QueryPosition determine la fila actual. Llame al método IMAPITable::SeekRowApprox para colocar la tabla en la fila identificada por los parámetros lpulNumerator e lpulDenominator . Sin embargo, no siempre espere que SeekRowApprox establezca como la posición actual que tendría la misma fila QueryPosition si la memoria no hubiera sido un factor.

Vea también

IMAPITable::SeekRowApprox
IMAPITable : IUnknown