Gets the specified value from a container.
#include "lttwn.h"
L_LTTWN_API L_INT L_TwainGetNumericContainerFRAMEValue(pCapability, nIndex, ptwFrame)
Pointer to a TW_CAPABILITY structure that references the container value to get.
Index of the value to get. Possible values are:
Value | Meaning |
---|---|
LTWAIN_VALUE_COUNT | [-1] Update ptwFrame with the number of items in the item list of the specified container. This option is only valid if the container is of type TW_ARRAY or TW_ENUMERATION. If the container is of any other type, this function will return an error code. |
LTWAIN_VALUE_CURRENT | [-2] Update ptwFrame with the current value of the container. If the container is of type TW_RANGE, ptwFrame is updated with the CurrentValue member of the TW_RANGE structure. If the container is of type TW_ENUMERATION, ptwFrame is updated with the CurrentIndex member of the TW_ENUMERATION structure. If the container is of any other type, the function will return an error code. |
LTWAIN_VALUE_DEFAULT | [-3] Update ptwFrame with the default value of the container. If the container is of type TW_RANGE, ptwFrame is updated with the DefaultValue member of the TW_RANGE structure. If the container is of type TW_ENUMERATION, ptwFrame is updated with the DefaultIndex member of the TW_ENUMERATION structure. If the container is of any other type, the function will return an error code. |
LTWAIN_VALUE_MINIMUM | [-4] Update ptwFrame with the minimum value of the container. If the container is of type TW_RANGE, ptwFrame is updated with the MinValue member of the TW_RANGE structure. If the container is of any other type, the function will return an error code. |
LTWAIN_VALUE_MAXIMUM | [-5] Update ptwFrame with the maximum value of the container. If the container is of type TW_RANGE, ptwFrame is updated with the MaxValue member of the TW_RANGE structure. If the container is of any other type, the function will return an error code. |
LTWAIN_VALUE_STEPSIZE | [-6] Update ptwFrame with the step size of the container. If the container is of type TW_RANGE, ptwFrame is updated with the StepSize membr of the TW_RANGE structure. If the container is of any other type, the function will return an error code. |
>= 0 | Update ptwFrame with the value at the specified index. If the container is of type TW_ONEVALUE, nIndex must be zero and ptwFrame will be updated with the value of the TW_ONEVALUE structure. If the container is of type TW_ARRAY or TW_ENUMERATION, ptwFrame will be updated with the value at the specified index in the list of items. If the container is of type TW_ENUMERATION or TW_ARRAY, the value must not exceed the number of items in the container's item list or the function will return an error code. |
Reference to a TW_FRAME value to be updated with the specified container value.
Value | Meaning |
---|---|
SUCCESS | The function was successful. |
! = SUCCESS | An error occurred. Refer to Return Codes. |
Use this function to get a value from a container's item list when the item list type is TW_FRAME.
L_INT TwainGetNumericContainerFRAMEValueExample(L_INT nItemType,HTWAINSESSION hSession)
{
L_INT nRet;
TW_CAPABILITY twCap;
TW_FRAME twFrame;
nRet = L_TwainStartCapsNeg(hSession);
if(nRet != SUCCESS)
return nRet;
// Fill the TW_CAPABILITY structure with values
twCap.Cap = ICAP_FRAMES;
twCap.ConType = TWON_ONEVALUE;
nRet = L_TwainGetCapability(hSession, &twCap, LTWAIN_CAPABILITY_GETCURRENT);
if (nRet != SUCCESS)
{
MessageBox (NULL, TEXT("Failed to get capability"), TEXT("ERROR"), MB_OK);
return nRet;
}
nRet = L_TwainGetNumericContainerItemType(&twCap, &nItemType);
if (nRet != SUCCESS)
{
MessageBox (NULL, TEXT("Failed to get capability item type"), TEXT("ERROR"), MB_OK);
return nRet;
}
else if (nItemType == TWTY_FRAME)
{
nRet = L_TwainGetNumericContainerFRAMEValue (&twCap, 0, &twFrame);
if (nRet != SUCCESS)
{
MessageBox (NULL, TEXT("Failed to get capability item value"), TEXT("ERROR"), MB_OK);
return nRet;
}
}
nRet = L_TwainEndCapsNeg(hSession);
if(nRet != SUCCESS)
return nRet;
return nRet;
}