Hvordan opretter jeg en progress bar i en statusbar1.panels[1] den skal køre sådan at når en side på nettet åbnes skal den køre samtidig. Kan det lade sig gøre og hvordan?
hvis nogen har en kode til det vil jeg blive glad.
Put en ProgressBar på din form et sted, lige meget hvor, or sæt Visible property til False. Dan nogle Panels i StatusBar og sæt et af panelernes Style property til psOwnerDraw. Dan OnDrawPanel event til StatusBar og skriv følgende kode:
const PanelNumber = 1; // 0..N
procedure TMainForm.StatusBarDrawPanel(StatusBar: TStatusBar; Panel: TStatusPanel; const Rect: TRect); begin // sæt Panels[i].Style = psOwnerDraw (i = StatusBar.Panel hvor ProgressBar skal vises) if (StatusBar = Self.StatusBar) and (Panel = StatusBar.Panels[PanelNumber]) then ProgressBar.BoundsRect := Rect; end;
Det er alt.
For at gøre det simpelt at bruge ProgressBar kan du tilføje denne procedure:
procedure TMainForm.ShowProgressBar(Show: Boolean; Min, Max, Position: Integer); begin if not Show then ProgressBar.Visible := False else if Position > 0 then ProgressBar.Position := Position else begin ProgressBar.Min := Min; ProgressBar.Max := Max; ProgressBar.Position := Position; ProgressBar.Parent := StatusBar; ProgressBar.Visible := True; end; end;
Nu kan du gøre sådan noget her: ShowProgressBar(True, 0, MaxCount, 0); // vis p.bar for Count := 1 to MaxCount do begin ShowProgressBar(True, 0, 0, Count); // opdater p.bar {do something} end; ShowProgressBar(False, 0, 0, 0); // skjul p.bar
Så er det op til dig selv at finde ud af hvornår du vil opdatere ProgressBar.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.