Автор: Scott Samet
Я пытаюсь осуществить предварительную загрузку элементов
наследника TListBox со множеством строк. Для этого я перекрываю конструктор,
добавляя в него строки типа items.add('foo'); но когда я выполняю это, то
получаю исключение "window has no parent window" (окно не имеет родительского
окна). Почему у меня не получается сделать это?
Listbox сохраняет элементы, передавая их Windows. При этом требуется
дескриптор окна, а дескриптору окна требуется родитель. Родитель не
устанавливается даже после возврата из конструктора.
Решение проблемы:
SaveVis := Visible;
Visible := False;
Parent := Owner;
<заполнение ListBox>
Parent := Nil;
Visible := SaveVis;
|