Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.30;
Скачать: CL | DM;

Вниз

maskedit   Найти похожие ветки 

 
zep ©   (2004-05-17 23:30) [0]

привет всем. У меня есть 2 вопросса
1 подскажите кок мне сделать такую весч,в maskedit"е ограничить
ввод числа до 24:59:59
и второй вопросс вот тоже число 24:59:58 как при нажатии
на число 24 с помощью кампанента Updown уменьшать или увеличивать только его,а при нажатии
на число 59 с помощью кампанента Updown уменьшать или увеличивать его ...

зарание спасибо


 
connect   (2004-05-17 23:32) [1]

Так и не сделал. Спроси у Билла. Шутка. Мне самому интересно как это сделать.


 
zep ©   (2004-05-17 23:44) [2]

никто не знает чтоли


 
connect   (2004-05-17 23:48) [3]

Погодь я пробую. Если получиться то вышлю


 
connect   (2004-05-18 00:35) [4]

procedure TForm1.UpDown1Changing(Sender: TObject;
 var AllowChange: Boolean);
begin
If (MaskEdit1.SelStart=0)or(MaskEdit1.SelStart=1)
 then
   begin
     UpDown1.Max:=24;
     MaskEdit1.Text:=inttostr(UpDown1.Position)+copy(MaskEdit1.Text,3,length(MaskEdit1.Text));
   end;
end;


 
zep ©   (2004-05-18 01:17) [5]

connect большое спасибо за код, но не мог ли ты подсказать как для 59 минут сделать или дать сылочку на инфу по этим компанентам


 
connect   (2004-05-18 08:55) [6]

Щас погодь


 
connect   (2004-05-18 10:03) [7]

Почти как в виндузе

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, ComCtrls, StdCtrls, Mask;

type
 TForm1 = class(TForm)
   MaskEdit1: TMaskEdit;
   UpDown1: TUpDown;
   procedure FormCreate(Sender: TObject);
   procedure UpDown1Click(Sender: TObject; Button: TUDBtnType);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;
 h,m,s:string;
 hh,mm,ss,ms:word;
 sel:integer;
implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin

decodetime(time,hh,mm,ss,ms);
if (hh<10)
then
h:="0"+inttostr(hh)
else
 h:=inttostr(hh);

if mm<10
then
m:="0"+inttostr(mm)
else
m:=inttostr(mm);

if ss<10
then
s:="0"+inttostr(ss)
else
s:=inttostr(ss);

MaskEdit1.Text:=h+":"+m+":"+s;
MaskEdit1.SelStart:=0;
MaskEdit1.SelLength:=2;
end;

procedure TForm1.UpDown1Click(Sender: TObject; Button: TUDBtnType);
begin
   sel:=MaskEdit1.SelStart;
   if (MaskEdit1.SelStart=0)or(MaskEdit1.SelStart=1)
     then
       begin
        UpDown1.Max:=23;
        if  updown1.Position<10
             then
              h:="0"+inttostr(updown1.Position)
             else
              h:=inttostr(updown1.Position);
         sel:=0;
       end;

  if (MaskEdit1.SelStart=3)or(MaskEdit1.SelStart=4)
     then
       begin
         UpDown1.Max:=59;
         if  updown1.Position<10
             then
              m:="0"+inttostr(updown1.Position)
             else
              m:=inttostr(updown1.Position);
          sel:=3;
       end;

   if (MaskEdit1.SelStart=6)or(MaskEdit1.SelStart=7)
     then
       begin
         UpDown1.Max:=59;
           if  updown1.Position<10
             then
              s:="0"+inttostr(updown1.Position)
             else
              s:=inttostr(updown1.Position);

         sel:=6;
       end;
MaskEdit1.Text:=h+":"+m+":"+s;

end;

end.


 
connect   (2004-05-18 10:07) [8]

В конце надо добавить

MaskEdit1.SelStart:=sel;
MaskEdit1.SelLength:=2;



Страницы: 1 вся ветка

Текущий архив: 2004.05.30;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.037 c
1-1084802384
Brenagwynn
2004-05-17 17:59
2004.05.30
Надписи на русском в NT4 Eng


14-1083752201
Vlad Oshin
2004-05-05 14:16
2004.05.30
Логические задачи в среду :)


1-1084566997
Sanek_metaller
2004-05-15 00:36
2004.05.30
Как програмно отследить изменения в реестре?


14-1084130055
Piter
2004-05-09 23:14
2004.05.30
Сколько же мы тратим времени...


1-1084605159
AlexLebed
2004-05-15 11:12
2004.05.30
Проблема при переходе из одного типа в другой.