![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
На форме не появляется TStatusBar [D6, Win2k, WinXP]
Alexis © (2004-08-07 14:16:00)Надо создавать StatusBar в run-time.
private
StatusBar : TStatusBar;
...
procedure TmainForm.FormCreate(Sender: TObject);
begin
StatusBar := TStatusBar.Create(MainForm);
StatusBar.ParentWindow := MainForm.Handle;
StatusBar.SimplePanel := True;
StatusBar.Left := 0;
StatusBar.Top := MainForm.Height - 20;
StatusBar.Width := MainForm.Width;
StatusBar.Height := 20;
StatusBar.Show;
end;
При этом он на форме не появляется. В чем причина? Кстати то же самое и с TProgressBar...
Заранее спасибо.
Юрий Зотов (2004-08-07 15:15:00) [1]Дополнение к [1].
А StatusBar.Show - убрать.
Кроме того, не нужны:
StatusBar.Left := 0;
StatusBar.Top := MainForm.Height - 20;
StatusBar.Width := MainForm.Width;
StatusBar.Height := 20;
поскольку достаточно сделать StatusBar.Align := alBottom (если это уже не делается по умолчанию).
И еще: ссылка на MainForm - дурной стиль. Ссылаться надо на Self.
начинающий (2004-08-07 14:40:00) [2]Попробуйте вместо:
StatusBar.ParentWindow := MainForm.Handle;
написать:
StatusBar.Parent := MainForm;