![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ProgressBar и StatusBar [D6, WinXP]
Igor_thief © (2002-10-20 18:57:00)Как сделать, чтобы progressbar отображался на одной из пенелей statusbar?
Igor_thief (2002-10-25 20:01:00) [1]Большое спасибо!
Игорь Шевченко (2002-10-21 11:11:00) [2]REA © (21.10.02 11:08)
Одинаково вычисляется. Дело не в вычислениях а в привычке писать программы так, чтобы через полгода в них что-то понимать
REA (2002-10-21 11:08:00) [3]Pred(ssBar.Panels.Count) - а оно быстрее что ли чем -1 сделать?
кстати -1 вроде всегда вычисляется или просто я неоптимизированный код смотрел?
Игорь Шевченко (2002-10-21 10:28:00) [4]Например, так:
procedure TfrmMain.ShowProgress;
var I : Integer;
R : TRect;
begin
SetRect(R, 0, 0, 0, 0);
for I:=0 to Pred(ssBar.Panels.Count) do
Inc(R.Left, ssBar.Panels[I].Width);
R.Right := ssBar.ClientWidth;
if WindowState <> wsMaximized then
Dec(R.Right, ssBar.ClientHeight);
R.Top := 3;
R.Bottom := ssBar.ClientHeight;
with ProgressBar1 do begin
BoundsRect := R;
Parent := ssBar;
Visible := True;
end;
end;
Показывается в последней по счету панели
Reindeer Moss Eater (2002-10-21 08:55:00) [5]ProgressBar.PainTo(...
TTCustomDelphiMaster (2002-10-20 19:13:00) [6]ProgressBar.Parent := StatusBar;
ProgressBar.Left := 100;