Delphi之TDrawGrid绘制】的更多相关文章

一直都对QQ的好友列表很好奇,最先感觉用TreeView实现的,看了看TreeView的源码,发现要实现还真的不太好完成任务啊,其中最大的原因是自己的功力不足,后来觉得用ListView来做吧,结果也是失败,后来又想到ListBox,结果发现也是难成,最后发现有一个TDrawGrid,可以来绘制,但是不知道那两行文字怎么搞,有知道的望告知,谢谢.好了不再废话,就把最近对TDrawGrid的一些操作记录如下: 1.我们先设置TDrawGrid的属性:BorderStyle:bsNone:ColCo…
Delphi实例之绘制正弦函数图像 unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls; type TForm1 = class(TForm) Image1: TImage; Button1: TButton; Label1: TLabel; Label2: TLabel; Label3:…
Delphi 语言的数据库编程中,DBGrid 是显示数据的主要手段之一.但是 DBGrid 缺省的外观未免显得单调和缺乏创意.其实,我们完全可以在我们的程序中通过编程来达到美化DBGrid 外观的目的.通过编程,我们可以改变 DBGrid 的表头.网格.网格线的前景色和背景色,以及相关的字体的大小和风格.    以下的示例程序演示了对 DBGrid 各属性的设置,使 Delphi 显示的表格就像网页中的表格一样漂亮美观.    示例程序的运行:    在 Form1 上放置 DBGrid1.Q…
[转]关于Delphi通用涵数 http://m.blog.csdn.net/blog/dragonjiang5460/1196927 2006-9-8阅读2016 评论0 DELPHI程序注册码设计(转载)     思路是这样的:程序运行时先检测注册表,如果找到注册项,则表明已经注册,如果没有找到注册项,则提示要求注册.         <注册例程>         在DELPHI下新建一工程,放置Edit1,Edit2,Label1,Label2,Button1组件.具体代码如下:    …
在 Delphi 语言的数据库编程中,DBGrid 是显示数据的主要手段之一.但是 DBGrid 缺省的外观未免显得单调和缺乏创意.其实,我们完全可以在我们的程序中通过编程来达到美化DBGrid 外观的目的.通过编程,我们可以改变 DBGrid 的表头.网格.网格线的前景色和背景色,以及相关的字体的大小和风格.    以下的示例程序演示了对 DBGrid 各属性的设置,使 Delphi 显示的表格就像网页中的表格一样漂亮美观.    示例程序的运行:    在 Form1 上放置 DBGrid1…
二.应用实例 Enlib3.0组件包安装成功后 A.定制标题行 1.制作复杂标题行 标题行可设为2行以上高度,并可以为多列创建一个共同的父标题行.为实现这个效果,需在各个列标题属性中以“|”分隔父标题和子标题,如办公用品包括代码和名称两部分,具体属性设置如下: usemultititile=true; titlelines=2 DBGridEh.Columns[0].Title.Caption := '办公用品|代码'; DBGridEh.Columns[1].Title.Caption :=…
\Delphi 6数据库开发典型实例\图表的绘制 1.在主窗体里面打开子窗体:ShowForm(Tfrm_Print); procedure Tfrm_Main.ShowForm(AFormClass:TFormClass); begin with AFormClass.Create(Self) do try ShowModal; // 阻塞或者模态窗口,只有你把当前窗口关闭后,才能去操作父亲窗口. finally Free; end; end; //这个例子打开有异常,提示单元chart 引用…
#define WM_ERASEBKGND                   0x0014 Parameters wParam A handle to the device context. // 设备上下文的句柄 lParam This parameter is not used. Return value Type: LRESULT An application should return nonzero if it erases the background; otherwise, it…
Invalidate方法通知Windows应该重新绘制表单的整个表面.最重要的是Invalidate不会立即强制执行绘制操作. Windows只是存储请求,并且只会响应它当前程序完全执行后,并且只要系统中没有其他待处理事件. Windows故意延迟绘画操作,因为它是最耗时的操作之一.有时,这种延迟,只有在多次更改后才能绘制表单,避免多次连续调用(慢)绘制方法.•Update方法要求Windows立即更新表单的内容并重新绘制.但请记住,只有存在无效区域时才会执行此操作.如果刚刚调用了Invalid…
Delphi中Form窗体的标题被设计成绘制在系统菜单的旁边,如果你想要在标题栏绘制自定义文本又不想改变Caption属性,你需要处理特定的Windows消息:WM_NCPAINT.. WM_NCPAINT消息在需要重绘边框时发送到窗口,应用程序可以利用该消息绘制自己的窗口边框. 注意,同时你也要处理窗口激活或失去焦点的WM_NCACTIVATE消息,如果不处理,当窗口失去焦点时,自定义绘制的文本会消失. type TCustomCaptionForm = class(TForm) privat…
相关资料: http://blog.csdn.net/tokimemo/article/details/18702689 http://www.myexception.cn/delphi/215402.html http://bbs.csdn.net/topics/390627275 结果总结: 1.生成的环中间会少一部分颜色,颜色会小于16581375. 2.手动选择颜色不准,手容易抖,要支持用户输入准确的数值. 代码实例: unit Unit1; interface uses Winapi.…
http://www.cnblogs.com/pchmonster/archive/2012/07/06/2579334.html 绘制位图(Drawing Bitmaps) 绘制位图听起来似乎很难,然而如几次所见到的那样,绘制位图非常容易.TCanvas类具有几种方法绘制位图,最常用的方法是Draw方法,这种方法只是在画布上指定位置绘制位图.用户已经见过几个这样的例子.下面是简短的例子. 1 2 3 4 5 6 7 8 9 procedure TForm1.btn1Click(Sender:…
转载:http://www.cnblogs.com/pchmonster/archive/2012/07/06/2579185.html 基本绘图操作(Basic Drawing Operations) 现在大家已经知道Rectangle方法用来画正方形和矩形,Ellipse方法用来画圆和椭圆,MoveTo和LineTo方法则用来画线. 还有Arc方法用于画弧,Pie方法用于画饼形,一切一切都是非常基础的,没有太大的必要详细了解TCanvas的这些方法,下面开始更有趣的图形操作,这些图形操作在编…
绘制delphi窗体的标题栏 按照设计,Delphi窗体的“标题”属性是由Windows负责绘制,标题栏在系统菜单旁边.如果你不想改变窗体的标题属性又想在窗体的标题栏添加一些自己的内容,你需要处理一个特殊的Windows消息:WM_NCPAINT.当需要重绘它窗体框架时,一个WM_NCPAINT消息发送到窗口,.应用程序可以截获该消息,绘制自己的定制的窗口框架.注意,当窗体激活或停用时,您还需要处理WM_NCACTIVATE.如果不处理WM_NCACTIVATE消息,当窗体失去焦点时,自定义标题…
http://www.newxing.com/Code/Delphi/game/543.html http://www.newxing.com/Code/Delphi/Network/1324.html…
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls; type TForm1 = class(TForm) PaintBox1: TPaintBox; Button1: TButton; procedure Button1Click(Sender: TObject); private { P…
绘制窗体渐变背景的函数,三个参数分别代表起始颜色,终止颜色,绘制方向procedure TForm1.Draw(StartColor:TColor;EndColor:TColor;Direction:Integer);vari:Integer;Dct:TRect;c1,c2,c3:byte;beginif Direction=0 thenbeginfor i:=0 to self.Width-1 dobeginc1:=GetRValue(StartColor)+Trunc(i*(GetRValu…
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, OleCtrls, IEBrowser; type TForm1 = class(TForm) Button1: TButton; CppWebBrowser1: TCppWebBrowser; procedure FormCreate(…
首先,在TForm的私有域,也就是private下设置两个变量ProgressBar.ProgressBarRect,其中ProgressBar为 TProgressBar类型,ProgressBarRect为TRect类型,完整的定义如下: type  TForm1 = class(TForm)    ......  private    ProgressBar: TProgressBar;    ProgressBarRect: TRect;  end; 然后在StatusBar的DrawP…
制作圆角矩形的窗体: 01.procedure TPortForm.FormCreate(Sender: Tobject); 02.var hr :thandle; 03.begin 04.hr:=createroundrectrgn(0,0,width,height,20,20); 05.setwindowrgn(handle,hr,true); 06.end; 如果不要窗体外框,则使用: procedure TPortForm.FormCreate(Sender: Tobject); var…
我是参考了万一的博客里面的关于TStringGrid学习的教程,但是我也结合自己的实际操作和理解,加入了一些个人的补充,至少对我有用! 学用TStringGrid之——ColCount.RowCount.Cells 本例中使用到了Panel控件,只是比较简单的拖拽到界面上(比如可以在Panel上面放按钮……),详细的知识并没有涉及到,还是先学习TStringGrid. 本例的功能: 1.获取StringGrid的行数.列数 2.给单元赋值 运行效果图 : 代码如下: unit Unit1; in…
一直也没接触到什么复杂的报表,都是一些简单的报表,在DelphI下使用QuickReport一般也就能满足需要了,由于公司现在需求的变化,对条码扫描提出了新的要求,主要是扫码要包含更多地内容,以前的一维码显然不能完全满足,再说二维码也是一种趋势,故而需要解决二维码的问题,网上搜了一下,方式有多种多样,我花了3天时间找了很多,也尝试了很多.也经历了很多失败!总结一下在Delphi下实现二维码主要有三种方法: 1.使用PtImageRW.dll和PtQREncode.dll动态连接库,使用uQRCo…
看本文时,可以同时参考:Delphi中线程类 TThread实现多线程编程(事件.临界区.Synchronize.WaitFor……) 先说一下RTL和VCL RTL(Run-Time library),运行时库,包括System.SysUtils.Math三个单元,提供的函数与语言.编译器.操作系统及进程有关 RTL提供类之间继承于 TObject 和 RTL内部的类 VCL(Visual Component Library),可视化组件库,包括Graphics.classes.Control…
Delphi 的 DateTimePicker 组件有一个CalColors属性,可以设置 DropDown 打开的日历节目的风格.但如果不使用 Delphi 自带的 Style,在这里设置属性看不到期望的效果. 而使用了 delphi 自带的style,效果又存在瑕疵——日历面板大小有问题. 如果把自带 style 的 client 项关闭,大小倒是对了,之前设置的MonthBackColor属性在边框上也体现出来了,但是和窗体的风格又不统一了. 网上一搜,Stack Overflow 给出了…
大三的这前半个学期了,又遇上了这个精通(滑稽) Delphi的老师,人还挺好的其实. 关于他对分辨率的吐槽呀,对Delphi的赞美啊,都是非常幽默的.另外我倒是很欣赏他对他的笔记本的保养[dell i7 920xm的工作站吧估计]. 好了,接下来他上课,基本上就是敲代码(实践).为了迎合我们专业没学过Pascal的条件,他决定用c++ builder 4[后来才知道的, 实在是有点老了].之前的我确实是费了很多劲,花了很多时间才找到的相关的参考资料. 首先,一切的绘画都基于画布[Canvas]之…
atitit..代码生成流程图 流程图绘制解决方案 java  c#.net  php v2 1.1. Markdown 推荐,就是代码和flow都不能直接使用.1 1.2. Java code2flow 推荐,最起码代码能用,flow能看1 2. visus1211 3. 别的工具cvf 跟autoflowchart2 3.1. Code Visual 代码编辑器(code visual to flowchart v6.0) 推荐3 3.2. Axure不推荐,二进制的4 4. 参考4 1.1…
第一部分   快速开发的基础 第1章   Delphi 5下的Windows编程    1 1.1   Delphi产品家族    1 1.2  Delphi是什么    3 1.2.1   可视化开发环境    3 1.2.2   编译器的速度和已编译代码的效率    4  1.2.3   编程语言的功能及其复杂性    4 1.2.4   数据库结构的灵活性和可扩展性    5 1.2.5   框架对设计和使用模式的扩充    5 1.3   历史回顾    5 1.3.1   Delphi…
转:http://www.java123.net/v/936977.html      2015-06-24 09:27:48 一直写程序都没管他们,也尽量很少用,今天终于想把他给弄个明白,在网上找来,记下!主要是前面小部分,后面的是详细说明(很啰嗦!) 一.异常的来源 在Delphi的应用程序中,下列的情况都比较有可能产生异常. (1)文件处理 (2)内存分配 (3)Windows资源 (4)运行时创建对象和窗体 (5)硬件和操作系统冲突 二.异常的处理 (1)try…except…end;…
我们知道使用Delphi快速开发,很大的一方面就是其强大的VCL控件,另外丰富的第三方控件也使得Delphi程序员更加快速的开发出所需要的程序.在此不特别介绍一些概念,只记录自己学习开发控件的步骤.假设我们要开发一个画直线的控件,那么我们从下面开始做:1.菜单栏→Component→New Component,在弹出的对话框中按照提示添加: Ancestor type 父类:TGraphicControl  [Controls]Class Name 类名:TLineToPalette Page…
Delphi的Android程序是原生的程序,也就是NativeActivity.那么就需要先看一下NativeActivity的原理, 在AndroidManifest.xml文件里面指定入口activity为nativeactivity,这样应用程序一启动,java虚拟机这边就开一个主线程,主线程创建一个活动,就是nativeactivity,这个nativeactivity在创建的过程中就会去应用程序的.so动态链接库中寻找一个函数: __ANativeActivity_onCreate(…