Gracias por responder. Te voy a intentar pegar dos lineas de codigo a ver q te parece
Código Delphi
[-]
procedure TForm1.BarMarcajeChange(Sender: TObject);
begin
if (BarPase.Position + BarDesmarque.Position + BarTirolibre.Position + BarEntrada.Position + BarParada.Position + BarMarcaje.Position + BarRegate.Position + BarCreatividad.Position + BarControl.Position + BarRemate.Position) = 100) then
BarMarcaje.Enabled := False
else
LabelMarcaje.Caption := IntToStr(BarMarcaje.Position);
end;
Cada BarLoquesea es un Trackbar que corresponde a una habilidad de un jugador y lo primero que hago al entrar en el evento OnChange es comprobar que la suma de todas las habilidades no sea 100. Si es 100 deshabilito el TrackBar. Si no, lo dejo modificar y cambio su Label (para que se muestre el valor en una etiqueta).
Ahora bien, el evento Enabled del Trackbar es demasiado radical... No existe alguna otra forma de que el usuario no pueda mover el Trackbar sin que se le quede el boton deshabilitado ?? Ademas no se muy bien donde podría volver a habilitarlo y no se como podría saber si el usuario cambia la position del Trackbar para subir (que no se podría en caso de sumar 100) o para bajar (que si se podria). Alguien tiene alguna solución ??