Specifies the alphabet codes to use for a range of boxes.

int SetBoxAlphabetHRC( HRC hrc, LPALC rgalc, UINT cAlc )



Handle to an HRC object.


An array of cAlc ALC_ values. The array is mapped onto boxes starting at box zero.


Number of ALC_ values in rgalc. This should match the number of boxes. If this parameter is 0, SetBoxAlphabetHRC simply returns 0.

Return Value

Returns HRCR_OK if successful; otherwise, returns one of the following negative values:

Invalid parameter or other error.
Insufficient memory.
The recognizer does not support this function.


applies only when an HRC has been configured for box guides with the SetGuideHRC function. Although SetAlphabetHRC can also specify an alphabet set for boxed input, it attaches the same alphabet setting to all boxes indiscriminately. SetBoxAlphabetHRC offers greater control by allowing an application to set different alphabets for individual boxes of a single HRC.


For example, consider a boxed entry on a requisition form that expects a part number consisting of five characters. The first two characters are uppercase letters, the next two are numerals, and the last character can be either another numeral or a lowercase revision code. The following example demonstrates how to configure the HRC for this hypothetical scenario:

#define PART_LEN 5 // Five characters in entry

HRC hrcPart; // HRC for parts entry

GUIDE guidePart; // GUIDE for parts entry

ALC alcPart[PART_LEN]; // Array of ALC_ codes for entry


. // Initialize the GUIDE here


guidePart.cHorzBox = PART_LEN; // Number of boxes in entry

guidePart.cVertBox = 1; // Single row

guidePart.cyMid = 0; // No midline

iret = SetGuideHRC( hrcPart, (LPGUIDE)&guidePart, 0 );

if (iret == HRCR_OK)


alcPart[0] = alcPart[1] = ALC_UCALPHA; // Uppercase in boxes 1-2

alcPart[2] = alcPart[3] = ALC_NUMERIC; // Numerals in boxes 3-4

alcPart[4] = ALC_LCALPHA | ALC_NUMERIC; // Lower or numeral in box 5

// Map alphabet codes onto boxes of parts number entry

SetBoxAlphabet( hrcPart, (LPALC)&alcPart, PART_LEN );


See Also

, SetAlphabetHRC, ALC_

Software for developers
Delphi Components
.Net Components
Software for Android Developers
More information resources
Unix Manual Pages
Delphi Examples