# Progress SET PROGRESS   > Progress SET PROGRESS ( id ; progress {; message {; foreground}} ) | Parameter | Type | | Description | | --- | --- | --- | --- | | id | Longint | ⬅️ | ID of progress bar | | progress | Real | ⬅️ | Value of progress (\[0...1\] or -1) | | message | Text | ⬅️ | Message of progress bar | | foreground | Boolean | ⬅️ | Show progress bar in foreground | ## Description The **Progress SET PROGRESS** method modifies the value of the progress bar along with the information shown in the progress window. It is useful for updating a progress bar within a loop. In `id`, you pass the unique ID of the progress bar, returned by the [Progress New](Progress%20New.md) method. In `progress`, you pass the current value of the progress bar. You can pass a Real value (between 0 and 1) or -1 to specify an undefined progress bar (also known as a "Barber shop" bar under Mac OS). In `message`, you pass additional text to display under the main title (Windows) or under the progress bar (Mac OS). This parameter is optional. Pass True in `foreground`when you want to force the progress window to the foreground of the application. ### Example   Updating of progress bar: ```4d  $P:=Progress New // we create a new bar   // Carry out processing in a loop  For($i;1;100)   // ... code of processing   // Update progress bar     $r:=$i/100     Progress SET PROGRESS($P;$r;"More info")  End for   // Deletion of bar once processing is over  PROGRESS QUIT($P) ``` ![](../Assets/pict926830.en.png) ## See also [Progress Get Progress](Progress%20Get%20Progress.md)