Soweit ich mich errinern kann, gibt div nur den Wert an, der vor dem Komma steht. Also 10 div 5 = 2 statt 2,0 (als Beispiel). Wenn man jetzt aber Gauge.Progress div Gauge.MaxValue rechnet und Progress viel Kleiner ist als MaxValue, dann würde ja 0,XX rauskommen. Div nimmt aber hier 0. Damit rechnet er mit 0*100 weiter, was natürlich 0 ist.
[Edit]
i:= round(Gauge.Progress / Gauge.MaxValue * 100);
Grüße
Webo
_________________
Man kann nur das aus dem Ärmel schütteln, was man auch vorher reingesteckt hat.