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;

  • 相关阅读:
    C#实现-浏览器UA解析获得手机、系统、浏览器等信息
    C#代码实现-冒泡排序
    C# DateTime 工具类
    net core 3.1 跨域 Cors 找不到 “Access-Control-Allow-Origin”
    C#/.Net开发入门篇(3)——console类的输入输出
    C#/.Net开发入门篇(2)——第一个控制台应用程序
    C#/.Net开发入门篇(1)——开发工具安装
    docker 学习笔记(2)--docker file命令
    docker 学习笔记(1)--常用命令
    导出大数据方法。批量导BOM
  • 原文地址:https://www.cnblogs.com/fengxb/p/2845680.html
Copyright © 2011-2022 走看看