Tôi muốn biết cách tạo gương theo dõi trackbar thứ hai theo hướng ngược lại của trackbar1.position. ví dụ: Phạm vi từ 1 đến 100.Hai tấm gương TrackBar
Vì vậy, Khi TrackBar1.Position := 2
, sau đó trackbar2.Position := 99
Bất kể con đường trackbars đi, tôi muốn phản ánh theo hướng ngược lại.
Heres mã của tôi cho đến nay: (không quan tâm đến việc sử dụng các phím để thực hiện việc này), chỉ tương tác chuột.
Direction : string;
Skip : boolean;
procedure TForm1.TrackBar1Change(Sender: TObject);
begin
if TrackBar1.Position = TrackBar2.Position then
begin
if Direction = 'up' then TrackBar2.Position := TrackBar2.Position + 1;
if Direction = 'down' then TrackBar2.Position := TrackBar2.Position - 1;
skip := true;
end;
if TrackBar1.Position < TrackBar2.Position then
begin
if skip = false then
begin
TrackBar2.Position := TrackBar2.Position - 1;
Direction := 'down';
end;
end
else
begin
if skip = false then
begin
TrackBar2.Position := TrackBar2.Position + 1;
Direction := 'up';
end;
end;
end;
Có lẽ tôi đã làm quá mức điều này. Có thể có một cách đơn giản hơn. Tôi thích cách đơn giản hơn. Cảm ơn,
Bến
'tbTo.Position: = 100 - tbFrom.Position + 1;' (1-100,2-99) – teran
Cảm ơn những kẻ heaps – Ben
@teran: Tôi đã sử dụng 'min: = 0' &' max: = 100'. .. đây là lý do; o) nhưng tôi cập nhật để trả lời câu hỏi ** chính xác **; o) – Whiler