Mybackuap и ProgressBar
Mybackuap и ProgressBar
Доброго всем дня! Подскажите как используя Mybackuap вывести ProgressBar для отображения хода резервирования базы данных? Заранее всем спасибо.
Re: Mybackuap и ProgressBar
Код: Выделить всё
procedure TForm1.MyDump1BackupProgress(Sender: TObject; ObjectName: String;
ObjectNum, ObjectCount, Percent: Integer);
begin
Label1.Caption := 'Категория: ' + ObjectName;
Label2.Caption := 'Таблица ' + IntToStr(ObjectNum + 1) + ' из ' + IntToStr(ObjectCount);
ProgressBar1.Position := Percent;
end;
Re: Mybackuap и ProgressBar
переписал под builder xe прогрес отображается нормально, а лейблы не изменяются, пока весь процесс не закончитсяtim21701 писал(а):Вот Результат:Код: Выделить всё
procedure TForm1.MyDump1BackupProgress(Sender: TObject; ObjectName: String; ObjectNum, ObjectCount, Percent: Integer); begin Label1.Caption := 'Категория: ' + ObjectName; Label2.Caption := 'Таблица ' + IntToStr(ObjectNum + 1) + ' из ' + IntToStr(ObjectCount); ProgressBar1.Position := Percent; end;
Попробуйте использовать следующий код:
Код: Выделить всё
void __fastcall TForm1::MyDump1BackupProgress(TObject *Sender, UnicodeString ObjectName,
int ObjectNum, int ObjectCount, int Percent)
{
UnicodeString ts1, ts2;
ts1 = "Категория: " + ObjectName;
ts2 = "Таблица " + IntToStr(ObjectNum + 1) + " из " + IntToStr(ObjectCount);
if (Label1->Caption != ts1) {
Label1->Caption = ts1;
Label1->Refresh();
}
if (Label2->Caption != ts2) {
Label2->Caption = ts2;
Label2->Refresh();
}
ProgressBar1->Position = Percent;
}