Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.01.30;
Скачать: [xml.tar.bz2];

Вниз

Можно ли как нибудь в статус бар положить прогресс бар?   Найти похожие ветки 

 
siliks   (2003-01-19 01:25) [0]

Можно ли как нибудь в статус бар положить прогресс бар?


 
Nick_N_A   (2003-01-19 06:49) [1]

По-секрету говоря в любой TWinControl можно ложить что угодно,
но иногда бывают проблемы с прорисовкой.

Client1.Parent:=Site1;
Client1.Left=0;
Client1.Top=0;



 
Song   (2003-01-19 10:43) [2]

With TProgressBar.Create(Self) Do Parent:=StatusBar1;


 
siliks   (2003-01-20 03:08) [3]

хмм. если честно, то я не совсем понял. Попробовал - у меня не получилось. То есть прогресс бар куда-то исчезает, но на статус баре ее тоже не видно .


 
Nick_N_A   (2003-01-20 06:40) [4]

При создании компонента нужно еще: Visible:=true;
У тебя случай сложнее:

#панели=0;
StatusBar1.panels[#панели].style:=psOwnerDraw;{Object Inspector}

procedure TForm1.StatusBar1DrawPanel(StatusBar: TStatusBar;
Panel: TStatusPanel; const Rect: TRect);
Var
cn:TCanvas;
begin
cn:=TCanvas.Create;
cn.Handle:=GetDC(ProgressBar1.Handle);{У ProgressBar1 отсутствует Canvas, но мы его получили через hWnd}
if panel.Index=0{#панели} then
StatusBar1.Canvas.CopyRect(ProgressBar1.ClientRect,cn,
Classes.rect(3,3,100,15){координаты, должны совпадать с
координатами видимой части твоей секции с #панели}
);
cn.Handle:=0;
cn.Free;
end;



 
Паша   (2003-01-20 13:31) [5]

Нашел как-то такую штуку, вроде работает:

{
ALStatusBar v1.0

(C)1999 Andrew Leigh
http://www.alphalink.com.au/~leigh/components
}
unit ALStatusBar;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ComCtrls;

type
TALStatusBar = class(TStatusBar)
public
constructor Create(AOwner: TComponent); override;
end;

procedure Register;

implementation

procedure Register;
begin
RegisterComponents("ALComps", [TALStatusBar]);
end;

{ TALStatusBar }

constructor TALStatusBar.Create(AOwner: TComponent);
begin
inherited;

ControlStyle := ControlStyle + [csAcceptsControls];
end;

end.


 
han_malign   (2003-01-20 13:45) [6]

ну дак можно и без лишних компонентов -
with StatusBar1 do ControlStyle := ControlStyle + [csAcceptsControls];


 
Паша   (2003-01-20 15:02) [7]

Можно, только в дизайнере ничего не выйдет, надо ручками писать


 
Calm   (2003-01-20 15:09) [8]

> При создании компонента нужно еще: Visible:=true;

Что-то я не видел компонентов, которые при создании в run-time появлялись невидимыми. Но это так, к слову...

Когда работал под D5, использовал замечательную библиотеку компонентов Raize. Так там со строкой состояния можно было делатль почти все что угодно в design-time. Но под D6 не могу найти эти компоненты :(


 
Игорь Шевченко   (2003-01-20 15:34) [9]

Свои две копейки...
procedure TfrmMain.HideProgress;
begin
ProgressBar1.Visible := false;
ssBar.Invalidate();
end;


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;



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2003.01.30;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.008 c
1-96841
Palladin
2003-01-21 06:03
2003.01.30
А мона ли... ?


1-96786
AsSa
2003-01-23 01:21
2003.01.30
Minimize


14-97007
mate
2003-01-13 13:59
2003.01.30
Документация


14-96971
Иксик
2003-01-11 12:28
2003.01.30
PCI, ISA


14-97035
Дмитрий К.К.
2003-01-14 11:47
2003.01.30
Библиотека RX





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский