JobProgress
TsgcHTMLComponent_JobProgress — renderuje aktualizowaną na żywo listę pasków postępu zadań w tle z plakietkami statusu, przyciskami anulowania i aktualizacjami fragmentów poza pasmem, w Delphi, C++ Builder i .NET.
TsgcHTMLComponent_JobProgress — renderuje aktualizowaną na żywo listę pasków postępu zadań w tle z plakietkami statusu, przyciskami anulowania i aktualizacjami fragmentów poza pasmem, w Delphi, C++ Builder i .NET.
Zarejestruj zadania za pomocą AddJob, aktualizuj ich postęp za pomocą UpdateJob, a następnie odczytaj HTML dla wstępnego renderowania lub wypchnij pojedynczy wiersz za pomocą GetJobFragmentHTML.
TsgcHTMLComponent_JobProgress
Lista pasków postępu Bootstrap 5 + dedykowany CSS
Delphi, C++ Builder, .NET
Wywołaj AddJob, aby zarejestrować zadanie, wyrenderuj wstępny HTML, a następnie przy każdym kroku postępu wywołuj UpdateJob i rozgłaszaj GetJobFragmentHTML, aby odświeżyć tylko ten wiersz.
uses
sgcHTML_Enums, sgcHTML_Component_JobProgress;
var
oJobs: TsgcHTMLComponent_JobProgress;
begin
oJobs := TsgcHTMLComponent_JobProgress.Create(nil);
try
oJobs.JobsID := 'exports';
oJobs.Title := 'Background Exports';
oJobs.ShowCompleted := False;
oJobs.AddJob('exp-42', 'Export customers.csv', 'Generating CSV export');
WebModule.Response := oJobs.HTML; // card + progress rows + cancel-form script
finally
oJobs.Free;
end;
end;
// On a later progress tick, push just that row over the WebSocket:
oJobs.UpdateJob('exp-42', 65, jsRunning);
Engine.BroadcastFragment(oJobs.GetJobFragmentHTML('exp-42'));
// includes: sgcHTML_Enums.hpp, sgcHTML_Component_JobProgress.hpp
TsgcHTMLComponent_JobProgress *oJobs = new TsgcHTMLComponent_JobProgress(NULL);
try
{
oJobs->JobsID = "exports";
oJobs->Title = "Background Exports";
oJobs->ShowCompleted = false;
oJobs->AddJob("exp-42", "Export customers.csv", "Generating CSV export");
String html = oJobs->HTML; // card + progress rows + cancel-form script
}
__finally
{
delete oJobs;
}
// On a later progress tick, push just that row over the WebSocket:
oJobs->UpdateJob("exp-42", 65, jsRunning, "");
Engine->BroadcastFragment(oJobs->GetJobFragmentHTML("exp-42"));
using esegece.sgcWebSockets;
var jobs = new TsgcHTMLComponent_JobProgress();
jobs.JobsID = "exports";
jobs.Title = "Background Exports";
jobs.ShowCompleted = false;
jobs.AddJob("exp-42", "Export customers.csv", "Generating CSV export");
string html = jobs.HTML; // card + progress rows + cancel-form script
// On a later progress tick, push just that row over the WebSocket:
jobs.UpdateJob("exp-42", 65, TsgcHTMLJobStatus.jsRunning, "");
engine.BroadcastFragment(jobs.GetJobFragmentHTML("exp-42"));
Składniki, po które sięgasz najczęściej.
AddJob(aId, aName, aDescription) rejestruje zadanie i zwraca jego TsgcHTMLJobItem (Id, Name, Description, Percent, Status, StatusText, StartedAt).
UpdateJob(aId, aPercent, aStatus, aStatusText) aktualizuje zadanie po identyfikatorze, ograniczając Percent do zakresu 0–100.
TsgcHTMLJobStatus (jsQueued, jsRunning, jsCompleted, jsFailed, jsCancelled) steruje kolorem plakietki i paska postępu, który podczas trwania zadania jest w paski i animowany.
GetJobFragmentHTML/GetJobAppendFragmentHTML zwracają fragmenty podmiany poza pasmem dla PushFragment/BroadcastFragment, dzięki czemu każdy krok aktualizuje jeden wiersz zamiast całej strony.
ShowCompleted ukrywa zakończone zadania z listy; AutoRemoveCompleted usuwa je całkowicie z Jobs po zakończeniu.
ShowCancelButton, CancelCaption i CancelAction kontrolują formularz anulowania dla każdego wiersza, wysyłany tym samym mechanizmem co Grid i Chat.
| Pomoc onlinePełna dokumentacja API i przewodnik użytkowania tego komponentu. | Otwórz | |
| Wszystkie komponenty sgcHTMLPrzejrzyj pełną matrycę funkcji 80+ komponentów. | Otwórz | |
| Pobierz bezpłatną wersję próbną30-dniowa wersja próbna zawiera projekty demonstracyjne 60.HTML. | Otwórz | |
| CennikLicencje Single, Team i Site z pełnym kodem źródłowym. | Otwórz |