БОЛЬШОЙ FAQ ПО DELPHI



Предварительная загрузка элементов

Автор: Scott Samet

Я пытаюсь осуществить предварительную загрузку элементов наследника TListBox со множеством строк. Для этого я перекрываю конструктор, добавляя в него строки типа items.add('foo'); но когда я выполняю это, то получаю исключение "window has no parent window" (окно не имеет родительского окна). Почему у меня не получается сделать это?

Listbox сохраняет элементы, передавая их Windows. При этом требуется дескриптор окна, а дескриптору окна требуется родитель. Родитель не устанавливается даже после возврата из конструктора.

Решение проблемы:

    SaveVis := Visible;
    Visible := False;
    Parent  := Owner;
    <заполнение ListBox>
    Parent  := Nil;
    Visible := SaveVis;



<< ВЕРНУТЬСЯ В ОГЛАВЛЕНИЕ



Материалы находятся на сайте https://exelab.ru/pro/



Видеокурс ВЗЛОМ