Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Najjednostavniji alarm?

[es] :: Pascal / Delphi / Kylix :: Najjednostavniji alarm?

[ Pregleda: 3440 | Odgovora: 13 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

MajorFatal
Milija Jakic
opravljam oluke, 1337LAB
Bg

Član broj: 36595
Poruke: 1325
217.24.21.*



+557 Profil

icon Najjednostavniji alarm?01.11.2007. u 16:40 - pre 199 meseci
Drugar hoce da ga aplikacija par puta dnevno obavestava o necemu, evo kako sam ja pokusao:

Code:
procedure Alarm(Sender: TObject);
begin
 if TDateTime(Now).AsString = Edit1.Text or TDateTime(Now).AsString = Edit2.Text or
 TDateTime(Now).AsString = Edit3.Text or TDateTime(Now).AsString = Edit4.Text
 TDateTime(Now).AsString = Edit5.Text or TDateTime(Now).AsString = Edit6.Text or
 TDateTime(Now).AsString = Edit7.Text or TDateTime(Now).AsString = Edit8.Text then
 Form5.Visible = True;
end;

Ali naravno ne radi, ko ni sve dosad sto nije radilo. Kako se pravilno koristi TDateTime ili ako ima neki drugi nacin da napravim alarm?
Nemoj da pricas?
 
Odgovor na temu

Miloš Baić
Miloš Baić
ERP (Dynamics NAV) programer
Beograd

Član broj: 72468
Poruke: 1155
*.dialup.neobee.net.



Profil

icon Re: Najjednostavniji alarm?01.11.2007. u 21:49 - pre 199 meseci
U sklopu JEDI(JCL & JVCL) imaš TJvAlarms(Non - Visual).
Someone's sitting in the shade today because someone planted a tree a long time ago.
 
Odgovor na temu

MajorFatal
Milija Jakic
opravljam oluke, 1337LAB
Bg

Član broj: 36595
Poruke: 1325
217.24.21.*



+557 Profil

icon Re: Najjednostavniji alarm?03.11.2007. u 13:05 - pre 199 meseci
Nece pa nece:
Code:
procedure TForm4.Button1Click(Sender: TObject);
begin
 JvAlarms1.Alarms.Add(Edit1.Text + ' ' + DateTimeToStr(Now));
  //if TimeToStr(SysUtils.Time) = a then Form5.Visible := True;
   Form4.Close;
end;

Sta da radim? Uvek mi ispise reised exception It's not valid date and time??? Sta god da upisem u Edit...
Nemoj da pricas?
 
Odgovor na temu

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 2739



+92 Profil

icon Re: Najjednostavniji alarm?03.11.2007. u 18:05 - pre 199 meseci
> Sta da radim? Uvek mi ispise reised exception It's not valid date and time??? Sta god da upisem u Edit...

Zar tekst greške nije selfexplanatory? Upisuješ nešto što nije ispravan datum, verovatno neki string. Nije ni jasno šta želiš da dobiješ sabiranjem trenutnog vremena kao stringa sa unetim tekstom, napiši šta očekuješ da dobiješ a šta dobijaš. Ako je potrebno da korisnik unese neki datum, onda je bolje da koristiš TDateTimePicker.

 
Odgovor na temu

MajorFatal
Milija Jakic
opravljam oluke, 1337LAB
Bg

Član broj: 36595
Poruke: 1325
217.24.21.*



+557 Profil

icon Re: Najjednostavniji alarm?03.11.2007. u 19:48 - pre 199 meseci
Potrebno je da korisnik u dva tri edita upise dva tri vremena u toku dana i da ga onda alarm upozorava svakodnevno u tim vremenima o nekom dogadjaju, a ja sta god upisem u edit za vreme dana ili za datum i vreme meni ispise onu poruku...
A pokusavao sam na razne nacine da upisem vreme...
Nemoj da pricas?
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4901
*.dynamic.sbb.co.yu.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: Najjednostavniji alarm?03.11.2007. u 20:09 - pre 199 meseci
Zasto bas TEdit?

Imas komponentu vrlo pogodnu za unos datuma i/ili vremena: TDateTimePicker
(tebi treba vreme)

Zatim imas funkcije: DecodeDate() / EncodeDate() i DecodeTime() / EncodeTime()
(tebi treba DecodeTime)

Pogledaj u Helpu, ima primer kako se koristi...

Onda u TTimer stavi kod koji iz trenutnog vremena Now() razdvaja sate, minute i sekunde i odreaguj kad se nesto poklopi.
 
Odgovor na temu

MajorFatal
Milija Jakic
opravljam oluke, 1337LAB
Bg

Član broj: 36595
Poruke: 1325
217.24.21.*



+557 Profil

icon Re: Najjednostavniji alarm?03.11.2007. u 22:32 - pre 199 meseci
Ovo je lepo kompajlirao:
Code:
procedure TForm4.Button1Click(Sender: TObject);
var
 Sadasnje: TDateTime;
 Hour, Min, Sec, MSec: Word;
// Sat,Minut : String;
begin
 Sat:= Edit1.Text; Minut:= Edit2.Text;
 Sadasnje:= Now;
 DecodeTime(Sadasnje, Hour, Min, Sec, Msec);
 if ((Hour = StrToWord(Edit1.Text)) and (Min = StrToWord(Edit2.Text))) then Form5.Visible:= True;

Ali nece da radi tj. nista se ne desava kada se poklopi vreme???
Nemoj da pricas?
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4901
*.dynamic.sbb.co.yu.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: Najjednostavniji alarm?04.11.2007. u 08:11 - pre 199 meseci
Naravno da neće da se poklopi kad si događaj stavio u TButton. Lepo sam napisao da stavis u TTimer. Sad si me naterao da startujem Delphi.

Code:

procedure TForm1.Timer1Timer(Sender: TObject);
var
   Hour, Min, Sec, MSec: Word;
begin
   DecodeTime(Now, Hour, Min, Sec, Msec);
   if ((Hour = StrToInt(Edit1.Text)) and (Min = StrToInt(Edit2.Text)) and (Sec = StrToInt(Edit3.Text)))
      then Form1.Caption := 'Vreme!';
end;
end.

(Ovde gore proveri kako se u Delphiju vrši konverzija u Word tip. Ja sam konvertovao u Int, što bi trebalo da je dovoljno)
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4901
*.dynamic.sbb.co.yu.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: Najjednostavniji alarm?04.11.2007. u 08:24 - pre 199 meseci
...ili:
Code:

{ ttimer.Kind = dtkTime }
procedure TForm1.Timer1Timer(Sender: TObject);
var
   Hour, Hour2, Min, Min2, Sec, Sec2, MSec, MSec2: Word;

begin
   DecodeTime(Now, Hour, Min, Sec, MSec);
   DecodeTime(ttimer.Time, Hour2, Min2, Sec2, MSec2);
   if ( (Hour = Hour2) and (Min = Min2) and (Sec = Sec2) )
      then Form1.Caption := 'Vreme!';
end;
end.

E sad, u ovom kodu je glupo što se svaki čas dekodra ttimer. Bolje je napraviti neki OnChange za ttimer i samo tada negde smestiti trenutne vrednosti vrednosti Hour2, Min2 i Sec2, pa sa njima kasnije uparivati. To odradi sam.
 
Odgovor na temu

MajorFatal
Milija Jakic
opravljam oluke, 1337LAB
Bg

Član broj: 36595
Poruke: 1325
217.24.21.*



+557 Profil

icon Re: Najjednostavniji alarm?04.11.2007. u 11:09 - pre 199 meseci
Konverzija u tip Word se vrsi biblioteckom funkcijom StrToWord. Izvini sto nisam odmah radio sa tajmerom mi pocetnici najvise volimo da "programiramo" ButonClick dogadjaje...
Ali ovo bre nece kod mene. Jesi ti proveravao kod tebe upises vreme i u to vreme se desi dogadjaj? Ovaj drugi kod nisam pokusavao da probam jer ne vidim gde su tu editi za upisivanje vremena...
Nemoj da pricas?
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4901
*.dynamic.sbb.co.yu.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: Najjednostavniji alarm?04.11.2007. u 11:26 - pre 199 meseci
Citat:
Konverzija u tip Word se vrsi biblioteckom funkcijom StrToWord.

Super.

Citat:
Izvini sto nisam odmah radio sa tajmerom mi pocetnici najvise volimo da "programiramo" ButonClick dogadjaje

Ako tvoj kolega ima vremena da klikce Button1 24h dnevno i ceka da se poklopi trenutno vreme sa vremenom koje u Editima, nemam nista protiv. Ako mu to ipak ne odgovara, onda uzmi TTimer da proverava za njega. ;)

Citat:
Ali ovo bre nece kod mene.

Šta neće ? Ja sam podesio program da se u naslovnoj liniji napiše tekst "Vreme!", a ti podešavaj štagod.

Citat:
Jesi ti proveravao kod tebe upises vreme i u to vreme se desi dogadjaj?

Jesam.

Citat:
Ovaj drugi kod nisam pokusavao da probam jer ne vidim gde su tu editi za upisivanje vremena...

Ne čitaš uopšte šta ti je napisano. Drugi primer koristi POSEBNO DIZAJNIRANU KONTROLU za upisivanje datuma ili vremena, tako da se ne bakćeš sa TEdit-ima koji su opšte namene i nepogodni za upis vremena.

Da bi koristio drugi kod, dodatj komponentu TDateTimePicker i podesi Kind na dtkTime.
 
Odgovor na temu

MajorFatal
Milija Jakic
opravljam oluke, 1337LAB
Bg

Član broj: 36595
Poruke: 1325
217.24.21.*



+557 Profil

icon Re: Najjednostavniji alarm?04.11.2007. u 13:49 - pre 199 meseci
Ekhm, nisam bio skontao ono za dtk.Kind sve vreme sam se cudio sta da radim sa onim DateTime pickerom kad moze da se odabere samo datum, a i sto se zove tako...
Sad mi u redu:
Code:
  DecodeTime(ttimer.Time, Hour2, Min2...
prijavljuje Undeclared identifier: 'Time' a kad iza ttimer lupim tacku samo nudi Create i InstanceSize???
Nemoj da pricas?
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4901
*.dynamic.sbb.co.yu.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: Najjednostavniji alarm?04.11.2007. u 14:06 - pre 199 meseci
To naravno treba da bude TDateTimePicker objekat:
Code:

// ...
DecodeTime(DateTimePicker1.Time, Hour2, Min2, Sec2, MSec2);
// ...

(pogledaj kako se zove kod tebe, u primeru gore je: DateTimePicker1)
 
Odgovor na temu

MajorFatal
Milija Jakic
opravljam oluke, 1337LAB
Bg

Član broj: 36595
Poruke: 1325
217.24.21.*



+557 Profil

icon Re: Najjednostavniji alarm?04.11.2007. u 14:37 - pre 199 meseci
Hvala!!! Provalio sam bio u medjuvremenu da treba da stoji DateTimePicker i sad sve radi kako treba...
Iskoristicu priliku da se zahvalim ljudima koji su mi najvise pomogli Milosu Bajicu, savkicu i X Files-u sto su mi pomogli da ovu aplikaciju privedem kraju, to mi je prva iole ozbiljnija u zivotu koju sam uradio od pocetka do kraja i ispostovao sve zahteve korisnika. Jes da nije neka: samo 1 tabela, nija prava relaciona baza ali ipak... za pocetak nije lose.

Hvala jos jednom.
Nemoj da pricas?
 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: Najjednostavniji alarm?

[ Pregleda: 3440 | Odgovora: 13 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.