zoukankan      html  css  js  c++  java
  • Demo学习: CalendarPanel

    CalendarPane

    学习CalendarPanel控件的常用事件。

    DayClick(...) //点击日期块空白部分触发
    EventClick(...) //点击日期块上事件触发
    RangeSelect(...) //选择多个日期触发

    procedure TMainForm.UniCalendarPanel1DayClick(Sender: TUniCalendarPanel;
      ADate: TDateTime; Allday: Boolean);
    begin
      EventEditForm.Calenedar:=UniCalendarPanel1;
      EventEditForm.ClearEvent;
      EventEditForm.SetDate(ADate, ADate);
      EventEditForm.ShowModal;
    end;
    
    procedure TMainForm.UniCalendarPanel1EventClick(Sender: TUniCalendarPanel;
      AEventId: Integer; AEvent: TUniCalendarEvent);
    begin
      EventEditForm.Calenedar:=UniCalendarPanel1;
      EventEditForm.SetEvent(AEvent);
      EventEditForm.ShowModal;
    end;
    
    procedure TMainForm.UniCalendarPanel1RangeSelect(Sender: TUniCalendarPanel;
      AStarDate, AEndDate: TDateTime);
    begin
      EventEditForm.Calenedar:=UniCalendarPanel1;
      EventEditForm.ClearEvent;
      EventEditForm.SetDate(AStarDate, AEndDate);
      EventEditForm.ShowModal;
    end;
    procedure TMainForm.UniFormCreate(Sender: TObject);
    var
      E : TUniCalendarEvent;
    begin
      UniCalendar1.Date:=Date;
      UniCalendarPanel1.StartDate:=Date;
    
      E:=UniCalendarPanel1.Events.Add; //添加日程
      E.CalendarId:=1;                 //日程id
      E.Title:='Meeting';              //日程标题
      E.StartDate:=Date;               //开始时间
      E.EndDate:=Date+0.1;             //结束时间
    
      E:=UniCalendarPanel1.Events.Add;
      E.CalendarId:=2;
      E.Title:='Meeting-2';
      E.StartDate:=Date+1;
      E.EndDate:=Date+1.1;
      E.IsAllDay:=True;
    
      E:=UniCalendarPanel1.Events.Add;
      E.CalendarId:=3;
      E.Title:='Meeting-3';
      E.StartDate:=Date+1.1;
      E.EndDate:=Date+1.2;
    
      E:=UniCalendarPanel1.Events.Add;
      E.CalendarId:=1;
      E.Title:='Meeting-4';
      E.StartDate:=Date+2.1;
      E.EndDate:=Date+2.2;
      E.Reminder:='In 15 Minutes';
    end;

    在项目上用到了日历控件,主要用来显示签到签退记录。

     ... 
    with UniMainModule.qryDetail do begin First; while not eof do begin
    ... if FieldByName('缺勤数').AsInteger = 0 then begin E := UniCalendarPanel1.Events.Add; E.Title := '出勤'; E.StartDate := nStart; E.EndDate := nStart; E.IsAllDay:=True; end; Inc(nid); next; end; First; end;

  • 相关阅读:
    MT7601 AP模式移植
    dhcp server 移植记录
    MT7601 WG209模块驱动移植,并连接路由器
    git 忽略文件
    关于中文--Unicode之间互相转换流程的说明
    将文字拆成拼音得到首字母(返回多音字)
    Javascript 汉字转首字母的拼音 js文件(支持多音字的选择)
    如何使用netstat –ano|findstr “port”命令?
    notepad++如何修改主题
    Notepad++ 更换主题
  • 原文地址:https://www.cnblogs.com/fengxb/p/2845680.html
Copyright © 2011-2022 走看看