How Form and Toolbar Strings Are Translated

When a form or toolbar is instantiated, code in the Init method calls the TranslateObject method of the Multilingual object to translate the values of some of the properties in the form and objects within the form to values stored in the String Translations table.

The first 50 characters of the value in the property to be translated  is used to find the record in the String Translations table that contains the translated value. The objects whose properties are translated are _SCREEN, forms, and controls. The properties that are translated are listed below along with the objectís property (i_lOverridePropertyName) that controls whether the translation take place:

∑       Caption (_SCREEN, checkbox, commandbutton, form, header, label, optionbutton, page, toolbar): When the caption of a label is changed, the label is repositioned, taking into account the value in the Alignment property. The objectís i_lOverrideCaption property can be set to .T. to bypass the translation. The i_lOverrideCaption property of the grid can be set to .T. to bypass the translation for all headers in the grid.

∑       ControlSource (checkbox, column, combobox, editbox, listbox, optiongroup, spinner, textbox): The objectís i_lOverrideControlSource property can be set to .T. to bypass the translation.

∑       DownPicture (checkbox, commandbutton, optionbutton): The objectís i_lOverrideDownPicture property can be set to .T. to bypass the translation.

∑       DragIcon (checkbox, combobox, commandbutton, container, editbox, grid, image, label, line, listbox, optionbutton, optiongroup, pageframe, page, shape, spinner, textbox): The objectís i_lOverrideDragIcon property can be set to .T. to bypass the translation.

∑       Font Name and FontSize (_SCREEN, checkbox, column, combobox, commandbutton, editbox, form, header, label, listbox, optionbutton, page, spinner, textbox): Font Name and FontSize are stored in combination in S<Prefix>IStr and S<Prefix>IS (i.e. Arial,9). When the font of a label is changed, the label is repositioned, taking into account the value in the Alignment property. When the font of a column, combobox, spinner, or textbox is changed, the column or control is resized. The objectís i_lOverrideFont property can be set to .T. to bypass the translation. When a gridís i_lOverrideFont property is set to .T., the translation is bypassed for the grid and all headers in the grid.

∑       Icon (_SCREEN, form): The objectís i_lOverrideIcon property can be set to .T. to bypass the translation.

∑       InputMask (column, combobox, spinner, textbox): The objectís i_lOverrideInputMask property can be set to .T. to bypass the translation.

∑       Picture (_SCREEN, checkbox, commandbutton, container, form, image, optionbutton, page): The objectís i_lOverridePicture property can be set to .T. to bypass the translation.

∑       RecordSource (grid): The objectís i_lOverrideRecordSource property can be set to .T. to bypass the translation.

∑       RowSource (combobox, listbox): The objectís i_lOverrideRowSource property can be set to .T. to bypass the translation.

∑       StatusBarText (checkbox, combobox, commandbutton, editbox, grid, listbox, optionbutton, spinner, textbox): The objectís i_lOverrideStatusBarText property can be set to .T. to bypass the translation.

∑       ToolTipText (checkbox, combobox, commandbutton, editbox, grid, image, label, listbox, optionbutton, shape, spinner, textbox): The objectís i_lOverrideToolTipText property can be set to .T. to bypass the translation.

More:

How Menu Prompts and Messages Are Translated