Bei deinem Pseudocode verschiebst du nichts, du weißt allen Trackbars Elementen denselben Wert zu.
Aber zum angesprochenen Problem:
Schau dir mal die Funktion Math.Min an!
Min(a, b) liefert dir den kleineren Wert aus der Menge {a, b}
Also wenn a < b, dann a, ansonsten b!
Du könntest dann, falls du
verschiebst (also einen Wert auf den aktuellen draufaddierst) bei der Zuweisung per Min(NeuerWert, 100) dafür sorgen, dass der Wert 100 nicht überschritten wird.
Ich schätze mal dein Pseudocode war so gemeint:
Delphi-Quellcode:
For IntI := 0 to 15 do
Trackbars[IntI] := Trackbars[IntI] + MasterTrackbar.Value;
Dann solltest du folgendes machen:
Delphi-Quellcode:
For IntI := 0 to 15 do
Trackbars[IntI] := Min(Trackbars[IntI] + MasterTrackbar.Value, 100);
Btw. bin mir nicht ganz sicher, was Min für einen Typ zurückliefert. Falls es ein Fließkommawert ist, müsste noch ein Round vornedran!
Edit: Faaalllss ich dein Problem richtig verstanden habe...