Hi Tpercon!!
Hier der Code vom Timer:
Delphi-Quellcode:
procedure Tfrm_terminplaner_main.Timer2Timer(Sender: TObject);
var
i: integer;
node: IXMLDOMNode;
newTermin, newSub: IXMLDOMNode;
begin
for i:=0 to lv_eintraege.Items.Count - 1 do begin
//node :=xmlDoc.selectSingleNode('/PlanView/termin[terminid="'+IntToStr(i)+'"]');
if (StrtoDate(lv_eintraege.Items[i].SubItems[1])=date)
and (StrtoTime(lv_eintraege.Items[i].SubItems[2])=time)
and (xmlDoc.selectSingleNode('/PlanView/termin[id="'+IntToStr(i)+'"]/AlertShowed').Text='_')
then begin
ShowMessage('Ihr Termin ('+lv_eintraege.Items[i].SubItems[1]+') beginnt!');
newTermin := xmldoc.createElement('termin');
newSub := xmlDoc.createElement('AlertShowed');
newSub.text :='x';
newTermin.appendChild(newSub);
end;
end;
end;
Und hier ma noch der Code vom speichern eines Termins...
Delphi-Quellcode:
procedure Tfrm_terminplaner_main.bn_speichernClick(Sender: TObject);
var
newTermin, newSub: IXMLDOMNode;
begin
if DateToStr(cb_von_datum.Date)>= DateToStr(now)
then begin
if (ed_terminbez.Text='')
then begin
ShowMessage('Bitte geben Sie eine Terminbezeichnung ein');
exit;
end;
newTermin := xmldoc.createElement('termin');
newSub := xmldoc.createElement('terminid');
newSub.text := IntToStr(frm_terminplaner_main.lv_eintraege.Items.Count + 1);
newTermin.appendChild(newSub);
newSub := xmlDoc.createElement('terminbez');
newSub.text := ed_terminbez.Text;
newTermin.appendChild(newSub);
newSub := xmlDoc.createElement('datum');
newSub.text :=DateToStr(cb_von_datum.Date);
newTermin.appendChild(newSub);
newSub := xmlDoc.createElement('uhrzeit');
newSub.text := ed_von_uhrzeit.Text;
newTermin.appendChild(newSub);
newSub := xmlDoc.createElement('bemerkung');
newSub.text := ed_bemerkung.Text;
newTermin.appendChild(newSub);
newSub := xmlDoc.createElement('AlertShowed');
newSub.text := '_';
newTermin.appendChild(newSub);
xmlDoc.documentElement.appendChild(newTermin);
xmlDoc.save(frm_terminplaner_main.instpath + xmlfilename);
StatusBar1.Panels[2].Text:='Ihr Termin ('+ed_terminbez.Text+') wurde erfolgreich gespeichert! ';
Timer1.Enabled:=true;
cb_von_datum.Date:=now;
ed_terminbez.Clear;
ed_bemerkung.Clear;
ed_von_uhrzeit.Text:=TimeToStr(now);
frm_terminplaner_main.UpdateList;
FocusControl(lv_eintraege);
Label1.Caption:='erfasste Termine ('+IntToStr(lv_eintraege.Items.Count)+')';
end else
ShowMessage('Das ausgewählte Datum liegt in der Vergangenheit! Bitte ändern Sie ihre Eingabe');
end;
Gruß,