有空研究一下OwnerDraw和三种Windows风格CS_OWNDC和CS_PARENTDC和CS_CLASSDC
就在StdCtrls.pas, ExtCtrls.pas和Buttons.pas三个类里研究就够了,这是初步的搜索结果:
- ---------- 在打开的文档中查找 ----------
- "G:\StdCtrls.pas"(,): TOwnerDrawState = Windows.TOwnerDrawState;
- "G:\StdCtrls.pas"(,): {$NODEFINE TOwnerDrawState}
- "G:\StdCtrls.pas"(,): Rect: TRect; State: TOwnerDrawState) of object;
- "G:\StdCtrls.pas"(,): TComboBoxStyle = (csDropDown, csSimple, csDropDownList, csOwnerDrawFixed,
- "G:\StdCtrls.pas"(,): csOwnerDrawVariable);
- "G:\StdCtrls.pas"(,): State: TOwnerDrawState); virtual;
- "G:\StdCtrls.pas"(,): TListBoxStyle = (lbStandard, lbOwnerDrawFixed, lbOwnerDrawVariable,
- "G:\StdCtrls.pas"(,): lbVirtual, lbVirtualOwnerDraw);
- "G:\StdCtrls.pas"(,): State: TOwnerDrawState); virtual;
- "G:\StdCtrls.pas"(,): State: TOwnerDrawState);
- "G:\StdCtrls.pas"(,): if FStyle in [csOwnerDrawFixed, csOwnerDrawVariable] then
- "G:\StdCtrls.pas"(,): CBS_DROPDOWNLIST or CBS_OWNERDRAWFIXED,
- "G:\StdCtrls.pas"(,): CBS_DROPDOWNLIST or CBS_OWNERDRAWVARIABLE);
- "G:\StdCtrls.pas"(,): State: TOwnerDrawState;
- "G:\StdCtrls.pas"(,): State := TOwnerDrawState(LongRec(itemState).Lo);
- "G:\StdCtrls.pas"(,): if FStyle = csOwnerDrawVariable then
- "G:\StdCtrls.pas"(,): if ListBox.Style in [lbVirtual, lbVirtualOwnerDraw] then
- "G:\StdCtrls.pas"(,): if ListBox.Style in [lbVirtual, lbVirtualOwnerDraw] then
- "G:\StdCtrls.pas"(,): if (Index <> -) and not (ListBox.Style in [lbVirtual, lbVirtualOwnerDraw]) then
- "G:\StdCtrls.pas"(,): if ListBox.Style in [lbVirtual, lbVirtualOwnerDraw] then exit;
- "G:\StdCtrls.pas"(,): if ListBox.Style in [lbVirtual, lbVirtualOwnerDraw] then exit;
- "G:\StdCtrls.pas"(,): if ListBox.Style in [lbVirtual, lbVirtualOwnerDraw] then exit;
- "G:\StdCtrls.pas"(,): if ListBox.Style in [lbVirtual, lbVirtualOwnerDraw] then
- "G:\StdCtrls.pas"(,): if ListBox.Style in [lbVirtual, lbVirtualOwnerDraw] then exit;
- "G:\StdCtrls.pas"(,): if Style in [lbVirtual, lbVirtualOwnerDraw] then exit;
- "G:\StdCtrls.pas"(,): if Style in [lbVirtual, lbVirtualOwnerDraw] then
- "G:\StdCtrls.pas"(,): if Style in [lbVirtual, lbVirtualOwnerDraw] then exit;
- "G:\StdCtrls.pas"(,): if Value in [lbVirtual, lbVirtualOwnerDraw] then
- "G:\StdCtrls.pas"(,): if Style in [lbVirtual, lbVirtualOwnerDraw] then
- "G:\StdCtrls.pas"(,): if Style in [lbVirtual, lbVirtualOwnerDraw] then
- "G:\StdCtrls.pas"(,): if Style in [lbVirtual, lbVirtualOwnerDraw] then
- "G:\StdCtrls.pas"(,): lbVirtualOwnerDraw: Style := lbOwnerDrawFixed;
- "G:\StdCtrls.pas"(,): (, LBS_OWNERDRAWFIXED, LBS_OWNERDRAWVARIABLE, LBS_OWNERDRAWFIXED,
- "G:\StdCtrls.pas"(,): LBS_OWNERDRAWFIXED);
- "G:\StdCtrls.pas"(,): Data[Self.Style in [lbVirtual, lbVirtualOwnerDraw]] or
- "G:\StdCtrls.pas"(,): if (Style in [lbVirtual, lbVirtualOwnerDraw]) then
- "G:\StdCtrls.pas"(,): if (Style in [lbVirtual, lbVirtualOwnerDraw]) then
- "G:\StdCtrls.pas"(,): State: TOwnerDrawState);
- "G:\StdCtrls.pas"(,): if (Style in [lbVirtual, lbVirtualOwnerDraw]) then
- "G:\StdCtrls.pas"(,): State: TOwnerDrawState;
- "G:\StdCtrls.pas"(,): State := TOwnerDrawState(LongRec(itemState).Lo);
- "G:\StdCtrls.pas"(,): if FStyle = lbOwnerDrawVariable then
- "G:\StdCtrls.pas"(,): if Style in [lbVirtual, lbVirtualOwnerDraw] then
- "G:\StdCtrls.pas"(,): if Style in [lbVirtual, lbVirtualOwnerDraw] then
- "G:\ExtCtrls.pas"(,): procedure DrawItem(Index: Integer; Rect: TRect; State: TOwnerDrawState); override;
- "G:\ExtCtrls.pas"(,): inherited Style := csOwnerDrawFixed;
- "G:\ExtCtrls.pas"(,): State: TOwnerDrawState);
- "G:\Buttons.pas"(,): with Params do Style := Style or BS_OWNERDRAW;
- 共找到 处。
- 输出完成 (耗时: 秒)
有空研究一下OwnerDraw和三种Windows风格CS_OWNDC和CS_PARENTDC和CS_CLASSDC的更多相关文章
- 一个Java应用,三种字体风格(Java, Windows, Mac),真是蛋疼
大家看看下面这张图,红色圈起来的是Java难看至极的字体渲染,黄色圈起来的是正常的Windows渲染,绿色是Mac风格的渲染. 其实我感觉正常风格就挺好的,就是看那个Java的Swing菜单,非常不顺 ...
- Aurora 8B/10B、PCIe 2.0、SRIO 2.0三种协议比较
在高性能雷达信号处理机研制中,高速串行总线正逐步取代并行总线.业界广泛使用的Xilinx公司Virtex-6系列FPGA支持多种高速串行通信协议,本文针对其中较为常用的Aurora 8B/10B和PC ...
- Spring IOC 中三种注入方式
项目错误知识点记录 正文 最近在项目的时候,用到Spring框架,Spring框架提供了一种IOC的自动注入功能,可以很轻松的帮助我们创建一个Bean,这样就省的我们四处写new Object()这样 ...
- Java开发学习(四)----bean的三种实例化方式
一.环境准备 准备开发环境 创建一个Maven项目 pom.xml添加依赖 resources下添加spring的配置文件applicationContext.xml 最终项目的结构如下: 二. ...
- Windows 记事本的 ANSI、Unicode、UTF-8 这三种编码模式有什么区别?
[梁海的回答(99票)]: 简答.一些细节暂无精力查证,如果说错了还请指出. 一句话建议:涉及兼容性考量时,不要用记事本,用专业的文本编辑器保存为不带 BOM 的UTF-8. * * * 如果是为了跨 ...
- Java程序员的现代RPC指南(Windows版预编译好的Protoc支持C++,Java,Python三种最常用的语言,Thrift则支持几乎主流的各种语言)
Java程序员的现代RPC指南 1.前言 1.1 RPC框架简介 最早接触RPC还是初学Java时,直接用Socket API传东西好麻烦.于是发现了JDK直接支持的RMI,然后就用得不亦乐乎,各种大 ...
- Kendall’s tau-b,pearson、spearman三种相关性的区别(有空整理信息检索评价指标)
同样可参考: http://blog.csdn.net/wsywl/article/details/5889419 http://wenku.baidu.com/link?url=pEBtVQFzTx ...
- [Linux]三种方案在Windows系统下安装ubuntu双系统(转)
在学习linux的过程中,ubuntu无疑是初学者的最佳选择. 下面来列举给Windows系统安装ubuntu双系统的三种方法. 一.虚拟机安装(不推荐) 使用工具:Vmware 如果不是因为迫不得已 ...
- Qt在Windows下的三种编程环境搭建
尊重作者,支持原创,如需转载,请附上原地址:http://blog.csdn.net/libaineu2004/article/details/17363165 从QT官网可以得知其支持的平台.编译器 ...
随机推荐
- Linux上传下载文件命令
转载自http://lupingui.iteye.com/blog/239694 linux系统下可以直接从客户端上传文件到服务器端,命令格式: [plain] view plaincopy scp ...
- hdu4704之费马小定理+整数快速幂
Sum Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) Total Subm ...
- Android学习笔记之View(一):LayoutInflater
使用LayoutInflater加载布局的两种方式: 第一种: LayoutInflater inflater=LayoutInflater.from(context); inflater.infla ...
- C++多态原理
C++的多态性是通过动态绑定实现的 非虚函数是在编译时绑定的; 通过对象进行的函数(虚函数,非虚函数)也是编译时绑定的; C++编译器在编译的时候,要确定每个对象调用的函数(要求此函数是非虚函数)的地 ...
- 以libevent网络库为引:网络通信和多线程
1. windows下编译及使用libevent http://www.cnblogs.com/luxiaoxun/p/3603399.html 2. <<libevent学习资料&g ...
- BZOJ 3163: [Heoi2013]Eden的新背包问题( 背包dp )
从左到右, 从右到左分别dp一次, 然后就可以回答询问了. ---------------------------------------------------------- #include< ...
- IntelliJ IDEA 开发swing(一)
原文:idea开发swing(一) 最近项目组需要开发一个swing小工具,以下是开发过程. 一.创建工程: 输入工程名称,选择java module,点击next 接下来什么都不选点击finish, ...
- Swift - 使用UI Dynamics给UIKit组件添加移动吸附行为
UI Dynamics是UIKit的一个新组成部分,它向iOS中的视图提供了与物理学有关的功能和动画.可以让你向视图中引入力和物理属性,可以让你的视图弹跳,舞动,受重力影响等等. 下面通过样例,演示使 ...
- C陷阱与缺陷代码分析之第2章语法陷阱
作者:刘昊昱 博客:http://blog.csdn.net/liuhaoyutz 陷阱1 理解函数声明 作者提出一个问题:有一个首地址为0的函数,该函数返回值类型为void,没有参数.怎样用C语言的 ...
- JavaScript实现复制功能
这两天在做Web前端时,遇到需求通过 js 实现文本复制的功能. 先不考虑浏览器的兼容性,看看各浏览器对复制功能的支持情况: 1.IE浏览器 ,解决方法有三种,代码如下: function copy( ...