Ver Mensaje Individual
  #5  
Antiguo 13-03-2009
NeoNew NeoNew is offline
Miembro
 
Registrado: mar 2009
Ubicación: Bogotá
Posts: 49
Reputación: 0
NeoNew Va por buen camino
Bueno ya casi....
Solo falta pintar el rango a medida que se va corriendo el Slider o Thumb (Mouse), !!Si alguien le sirve la idea, lo mejora o le adiciona la pintada del recorrido!!
(1 TTRackBar y 3 TEdit)
Adicionar los eventos MouseDown y MouseUp al TRackBar.
Código Delphi [-]
private
    { Private declarations }
    Procedure Trackbar1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
    Procedure TrackBar1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
  public
    { Public declarations }
  end;
var
  Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm4.FormCreate(Sender: TObject);
begin
 Trackbar1.ControlStyle := Trackbar1.ControlStyle + [csClickEvents];
 TForm(Trackbar1).OnMouseDown :=Trackbar1mouseDown;
 TForm(Trackbar1).OnMouseUp :=Trackbar1mouseUp;
end;
En los eventos capturar los valores de SelStart y SelEnd;
Código Delphi [-]
procedure TForm4.TrackBar1Change(Sender: TObject);
begin
  Edit3.Text := IntToStr(TrackBar1.Position);
end;
procedure TForm4.Trackbar1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
  TRackBar1.SelStart := TRackBar1.Position;
  Edit1.Text := IntToStr(TRackBar1.SelStart);
end;
procedure TForm4.Trackbar1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
  TRackBar1.SelEnd := TRackBar1.Position;
  Edit2.Text := IntToStr(TrackBar1.SelEnd);
end;
Saludos...
Responder Con Cita