Внимание!
void InitMenuItems(
const struct InitMenuItem *Init,
struct FarMenuItem *Item,
int ItemsNumber)
{
int I;
struct FarMenuItem *PItem=Item;
const struct InitMenuItem *PInit=Init;
for (I=0; I < ItemsNumber; I++,PItem++,PInit++)
{
PItem->Selected=PInit->Selected;
PItem->Checked=PInit->Checked;
PItem->Separator=PInit->Separator;
if ((unsigned int)PInit->Text < 2000)
strcpy(PItem->Text,GetMsg((unsigned int)PInit->Text));
else
strcpy(PItem->Text,PInit->Text);
}
}
Нет.
Введение функции InitMenuItems обусловлено следующим:
Поскольку переменная FarMenuItem.Text имеет большой размер, прямая
инициализация массива FarMenuItem, может заметно увеличить
потребление памяти.
В примере (см. ниже) показано как использовать функцию InitMenuItems и структуру InitMenuItem для создания меню.