Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Динамически создаваемое меню

6.0K
11 августа 2006 года
Tramp
71 / / 25.07.2006
Есть код:
Код:
void __fastcall TMain::AClick(TObject *Sender)
{
 //
 ..
}
...
void __fastcall TMain::FormCreate(TObject *Sender)
{
...
 SetCurrentDir(ExePath+"\\Language");
 TSearchRec sr;
  int iAttributes = 0;
  iAttributes |= faAnyFile;
  if (FindFirst("*.ini", iAttributes, sr) == 0)
  {
    do
    {
      if ((sr.Attr & iAttributes) == sr.Attr)
      {
        TMenuItem* NewItem = new TMenuItem(Language1);
        NewItem->Caption = sr.Name;
        Language1->Add(NewItem);
        NewItem->RadioItem = True;
        NewItem->OnClick = AClick;
      }
    } while (FindNext(sr) == 0);
    FindClose(sr);
  }
....
}

Как вы поняли при создание главной формы в каталоге Language ишется языковый файл и добавляется в меню
А событие AClick срабатывает при клике на появившееся динамическое меню.
Проблема в том как разделить события скажем, если кликнули по English.ini или по Russian.ini?
Заранее спасибо!
6.9K
11 августа 2006 года
RZ_RZ
53 / / 09.06.2005
 
Код:
void __fastcall TMain::AClick(TObject *Sender)
{
 //
    ShowMessage(dynamic_cast<TMenuItem *> (Sender)->Caption);
}
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог