Forum: Programmieren allgemein
by stahli,
2. Apr 2014
... und dazu mal für alle Eigenschaften "Setter" vorsehen in folgender Form:
procedure Form1.SetMaxValue(aValue: Integer);
begin
if MaxValue <> aValue then
begin
CalcXPosition;
PaintTrackbar;
end;
end;
Forum: Programmieren allgemein
by stahli,
2. Apr 2014
Ok, dann mach einfach etwas Ordnung.
Folgende Eigenschaften brauchst Du:
MinValue, MaxValue für Minimal- und Maximalwert.
Position für den aktuellen Wert.
Width für die Breite der Trackbar.
XPosition für den Mittelwert des Schiebers in der Horizontalen.
XPosition errechnest Du prozentual zu Width wie Position zu (MaxValue - MinValue) und zwar immer dann wenn eine der anderen...
Forum: Programmieren allgemein
by stahli,
2. Apr 2014
Hmm, ich weiß nicht recht, was Du da erreichen willst.
Auf jeden Fall solltest Du Dein Ziel etwas einfacher angehen.
Je einfacher, desto besser nachvollziehbar und wartbar.
Ich denke, Dein Problem liegt in dem max div 60)div max.
Wenn max > 60 ist dann hat das natürlich deutliche Auswirkungen.
Aber für eine bessere Lösung müsste man wissen, was Du erreichen willst.
Sind die Timer...
Forum: Programmieren allgemein
by stahli,
1. Apr 2014
Mir erschließt sich nicht, was Du mit den Timern machst.
Häng doch mal Dein Testprojekt als Zip an.
Vielleicht kann dann ja jemand mal drauf schauen.
Forum: Programmieren allgemein
by stahli,
28. Mär 2014
Etwas genauer wäre vermutlich noch:
pos := ((Trb.Position * (Trb.Width - Links - Rechts)) div 100))+ Links - (Image.Width div 2);
// (Image.Width div 2) wenn das Image zentriert über dem Strich sitzen soll
Wobei Links und Rechts der Abstand des ersten und letzten Strichs zum Rand wäre.
Forum: Programmieren allgemein
by stahli,
27. Mär 2014
Da es TrackBar.SchiebereglerPositionX m.E. nicht gibt wird es wohl schwierig werden.
Du könntest ggf. eine eigene Komponente ableiten und die obige (neu hinzu zu fügende) Eigenschaft innerhalb der Zeichenfunktion selbst belegen.
Ansonsten kannst Du vielleicht die Position selbst über Prozente von Width ermitteln, aber das kann dann durchaus Abweichungen enthalten.