Конференция "KOL" » Проблема с Menu.InsertItem
 
  • L`Autour © (07.10.08 12:46) [0]
    При попытке добавить элемент перед текущим созданным через InsertItem прога спокойно вылетает с еррором. Элементы меню нормально вставляются только перед элементом добавленным через IDE (MCK), т.е. приходится вставлять новые элементы постоянно сдвигая указатель на место новой вставки:

           while (Length(TempStr) <> 0) do
           begin
             Inc(MenuIdx);
             pTempStr := PKOLChar(Parse(TempStr, ','));
             MainMenu1.InsertItem(MenuIdx, pTempStr, nil, [moRadioMark]);
           end; //while

    Дополнительно при этом возникает проблемы при выходе из программы, выражаемая как: "Инструкция по адресу 0x00000000 обратилась к памяти по адресу  0x00000000. Память не может быть read".
  • blackman2003 (07.10.08 18:10) [1]
    Нумерация меню - вообще дело темное. И id-ы вовсе не обязательно идут по порядку.
    Используй в качестве индекса предыдущего меню значиние, возвращаемое InsertItem
  • L`Autour © (08.10.08 05:52) [2]
    С этим я уже смирился, а вот что делать с еррором при выходе?
  • L`Autour © (08.10.08 07:23) [3]
    Проблему решил.

    procedure TForm1.KOLForm1Close(Sender: PObj; var Accept: Boolean);
    begin
     MainMenu1.Destroy;
    end;
 
Конференция "KOL" » Проблема с Menu.InsertItem
Есть новые Нет новых   [134432   +18][b:0][p:0]