继承Tcalendar控件,让当天日期醒目显示
一、新建一控件
打开Delphi主菜单Cpmponent—New Cpmponent:

二、配置参数

点击OK键,打开Unit单元文件。
三、修改单元文件
unit LyCalendar;
interface
uses
Windows,
Messages, SysUtils, Variants, Classes, Graphics, Controls, //Forms,
Dialogs, Grids, Calendar, ComCtrls, StdCtrls,DateUtils;
type
TLyCalendar = class(TCalendar)
private
{Private declarations }
protected
{Protected declarations }
procedure DrawCell(ACol, ARow: Longint; ARect: TRect; AState:TGridDrawState); override;
public
{Public declarations }
published
{Published declarations }
end;
procedure Register;
implementation
procedure Register;
begin
RegisterComponents('LyComMy', [TLyCalendar]);
end;
procedure TLyCalendar.DrawCell(ACol, ARow:Integer; ARect: TRect; AState: TGridDrawState);
var TheText: string;
vDay: string;
begin
TheText := CellText[ACol, ARow];
vDay := IntToStr(DateUtils.DayOf(Now));
ifvDay = TheText then
begin
//当天显示样式
Canvas.Font.Color := clRed;
Canvas.Font.Style:=Canvas.Font.Style+[fsBold];
end
else begin
//被选择日期显示样式
if (gdSelected in AState) or(gdFocused in AState) then
begin
Canvas.Brush.Color := clBlue;
end;
end;
inherited;
end;
end.
四、安装控件
1、将新的单元文件,存入C:\ProgramFiles\Borland\Delphi7\Projects\Bpl\ 目录;
2、打开Delphi主菜单Cpmponent—Insert Cpmponent:
3、指定安装的参数:

按“OK”键,打开对话框:

按“compile”键,完成安装。
四、新的控件样式:

五、源码下载地址:http://download.csdn.net/detail/lyhoo163/9631356 点击打开链接
继承Tcalendar控件,让当天日期醒目显示的更多相关文章
- Android自定义日历控件(继承系统控件实现)
Android自定义日历控件(继承系统控件实现) 主要步骤 编写布局 继承LinearLayout设置子控件 设置数据 继承TextView实现有圆圈背景的TextView 添加Attribute 添 ...
- 在MonthCalendar控件中选中日期
Calendar.MONTH Calendar now=Calendar.getInstance();System.out.print(now.get(Calendar.MONTH));得到的月份少1 ...
- Android 自定义View 三板斧之一——继承现有控件
通常情况下,Android实现自定义控件无非三种方式. Ⅰ.继承现有控件,对其控件的功能进行拓展. Ⅱ.将现有控件进行组合,实现功能更加强大控件. Ⅲ.重写View实现全新的控件 本文重点讨论继承现有 ...
- C#继承基本控件实现自定义控件
C#继承基本控件实现自定义控件 摘自:http://www.cnblogs.com/greatverve/archive/2012/04/25/user-control-inherit.html 自定 ...
- C#继承基本控件实现自定义控件 (转帖)
自定义控件分三类: 1.复合控件:基本控件组合而成.继承自UserControl 2.扩展控件:继承基本控件,扩展一些属性与事件.比如继承Button 3.自定义控件:直接继承自Control 第一种 ...
- delphi中DateTimePicker控件同时输入日期和时间
将DateTimePicker的Format属性中加入日期格式设成 'yyyy-MM-dd HH:mm',注意大小写 , 将kind设置为dtkTime即可,可以在每次Form onShow时将Dat ...
- WinForm控件TreeView 只部分节点显示 CheckBox
WinForm控件TreeView 只部分节点显示 CheckBox 用过asp.net的应该知道,要在treeview中实现上述功能可以使用ShowCheckBox 属性指定那些节点显示check ...
- Scroll View 控件以Thumbnail的方式显示一个目录的全部图片,相似图片浏览器
MAC : XCode -> Scroll View 控件以Thumbnail的方式显示一个目录的全部图片,类似图片浏览器 STEP1:将两个目录复制到project里面ImageBrowser ...
- android内部培训视频_第三节(3)_常用控件(ViewPager、日期时间相关、ListView)
第三节(2):常用控件之ViewPager.日期时间相关.ListView 一.ViewPager 实例:结合PagerAdapter滑动切换图片 二.日期时间相关:AnalogClock\Dig ...
随机推荐
- torchvision
torchvision是一个包,它服务于pytorch深度学习框架,用来生成图片,视频数据集,模型类和预训练的模型torchvision由以下四个部分组成:1. torchvision.dataset ...
- calico 网络流量 过程 分析 apt-get install telnet
1.calico node 容器在kubernetes中以DaemonSet 的方式运行,容器的网络模式为hostNetwor,与host共享网络栈,拥有相同的Ip和hostname 2.查看某个po ...
- SVN之 trunk, branches and tags意义
--简单的对照 SVN的工作机制在某种程度上就像一颗正在生长的树: 一颗有树干和很多分支的树 分支从树干生长出来.而且细的分支从相对较粗的树干中长出 一棵树能够仅仅有树干没有分支(可是这样的情况不会持 ...
- OpenShift-EFK日志管理
1.准备工作 思路: 在OpenShift容器平台上以daemonset方式部署Fluentd收集各节点中的日志.更改其配置让日志输出到外部Elasticsearch中,最终通过Kibana展示. 资 ...
- 一条insert语句插入数据库
CREATE TABLE test_main ( id INT NOT NULL, value VARCHAR(10), PRIMARY KEY(id) ); oracle插入方式:INSERT IN ...
- 20155306 白皎 0day漏洞——漏洞的复现
一.Ubuntu16.04 (CVE-2017-16995) 1.漏洞概述 Ubuntu最新版本16.04存在本地提权漏洞,该漏洞存在于Linux内核带有的eBPF bpf(2)系统调用中,当用户提供 ...
- 利用fiddler core api 拦截修改 websocket 数据
一般的中间人攻击基本都是拦截修改普通的http协议里面的内容,而对于怎么拦截修改websocket协议传输的内容好像都没有多少介绍. talk is cheap show me the code us ...
- JVM技术周报第1期
JVM技术周报 · 第1期 JVM技术每周分享整理了JVM技术交流群每周讨论的内容,由群内成员整理归纳而成.如果你有兴趣入群讨论,请关注「Java技术精选」公众号,通过右下角菜单「入群交流」加我好友, ...
- 前端项目模块化的实践1:搭建 NPM 私有仓库管理源码及依赖
以下是关于前端项目模块化的实践,包含以下内容: 搭建 NPM 私有仓库管理源码及依赖: 使用 Webpack 打包基础设施代码: 使用 TypeScript 编写可靠类库 使用 TypeScript ...
- BCompare破解方法
1.删除 BCUnrar.dll 文件,重启软件. 备注:使用everything搜索BCUnrar.dll