Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

На форме не появляется 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;


Наверх

Титульная страница Поиск, карта сайта Написать письмо