Форум: "Начинающим";
Текущий архив: 2006.08.27;
Скачать: [xml.tar.bz2];
ВнизTrackBar и время Найти похожие ветки
← →
MSVN (2006-08-04 08:22) [0]Добрый день!
Есть TrackBar у которого макс. значениее постоянное. Так же есть таймер который отсчитывает время указанное пользователем. Требуется что бы у TrackBar ползунок постепенно снижал свою позициию (относительно времени).
Например, ползунок стоит на макс. значении, пользователь указал 21 мин. 55 сек. и начался отчет времени. Как сделать что б за это время ползунок приблизился к минимальной точке?
Всем спасибО!
← →
Elen © (2006-08-04 08:29) [1]Пробуй так
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, ExtCtrls;
type
TForm1 = class(TForm)
Timer1: TTimer;
TrackBar1: TTrackBar;
procedure FormCreate(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
TrackBar1.Max:=21*60+55;
TrackBar1.Position :=TrackBar1.Max;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
TrackBar1.Position:=TrackBar1.Position-1;
end;
end.
← →
MSVN (2006-08-04 08:45) [2]а если TrackBar.max = 65000 ?? и менять его нельзя? объясните плиз.
← →
07BB (2006-08-04 08:51) [3]MSVN (04.08.06 08:45) [2]
Тогда двигай в зависимости от времяни, скажем не каждую секунду а раз в три секунды
← →
Elen © (2006-08-04 08:52) [4]
> а если TrackBar.max = 65000 ?? и менять его нельзя?
Уточни почему? Что это за цифра преткновения? Поподробнее обьясни задачу.
← →
07BB (2006-08-04 08:54) [5]Elen © (04.08.06 08:52) [4]
максимальное значение int16 скорее всего..
← →
MSVN (2006-08-04 08:59) [6]нет, просто изначально задана цифра от которой надо отталкиваться.
← →
MSVN (2006-08-04 09:02) [7]to Elen
> максимальное значение int16 скорее всего..
а почему?
← →
Elen © (2006-08-04 09:16) [8]Тогда тебе надо вычислить шаг изменения типа
st:=65000/(21*60+55)
TrackBar1.Max:=65000
а в процедуре прописать
TrackBar1.Position:=TrackBar1.Position-stunit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, ExtCtrls;
type
TForm1 = class(TForm)
Timer1: TTimer;
TrackBar1: TTrackBar;
procedure FormCreate(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var st:integer;
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
TrackBar1.Max:=65000;
st:=round(65000/(21*60+55))
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
TrackBar1.Position:=TrackBar1.Position-st;
end;
end.
> максимальное значение int16 скорее всего..
Это не я говорю
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.08.27;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.046 c