Delphi
文章平均质量分 76
爱在丽江leslex
这个作者很懒,什么都没留下…
展开
-
Delphi COM编程技术一(COM编程基础知识)
在当今Windows世界中随处可见。随时涌现出来的大把大把的新技术都以COM为基础。各种文档中也充斥着诸如COM对象、接口、服务器之类的术语。一、COM编程基础知识介绍:1、COM的定义 所谓COM(Componet Object Model)即组件对象转载 2011-10-17 19:42:47 · 1861 阅读 · 0 评论 -
Delphi Enter实现与Tab一样的功能
Procedure TMainForm.DoEnterAsTab(var Msg:Tmsg;var Handle:boolean); // Windows, Messages;begin if Msg.message = WM_KEYDOWN then begin if Msg.wParam = VK_RETURN then Keybd_event(VK原创 2011-09-18 19:40:42 · 2325 阅读 · 0 评论 -
Delphi 任务栏的自动隐藏与隐藏问题
用SHAppBarMessage函数控制任务栏一、显示和隐藏任务栏 要想对任务栏进行操作,首先当然需要获得任务栏的句柄,所以首先利用FindWindow获取句柄,再操作示例:1、隐藏任务栏 hWnd:integer; hWnd := FindWindow('Shell_TrayWnd',nil); ShowWin原创 2011-09-19 14:44:38 · 5185 阅读 · 0 评论 -
Delphi 模拟鼠标在任务栏的图标上面逐个移动
procedure RemoveDeadIcons;var hTrayWindow: HWND; rctTrayIcon: TRECT; nIconWidth,nIconHeight: integer; CursorPos: TPoint; nRow,nCol: Integer;Begin // 获得任务栏句柄和边框} // hTrayWindo转载 2011-10-22 18:15:28 · 1328 阅读 · 0 评论 -
Delphi SQL数据库存取图片(利用流)
1、存图片到数据库 var PicStream: TMemoryStream; if imgBugPic.Picture.Graphic begin PicStream := TMemoryStream.Create; // 创建内存流 imgBugPic.Picture.Graphic.SaveToStream(PicStream); TB原创 2011-11-16 20:47:44 · 3021 阅读 · 0 评论 -
把ClientDataSet的修改的数据集Delta提交到服务器端
// 把版本的信息更新至服务器function SubmitVersionInfo(var vMsg: string): Boolean;var RetData, Msg: OleVariant;begin Result := False; try with DMCaseClient.ClientDsVersion do begin /原创 2011-11-17 11:18:56 · 2286 阅读 · 0 评论 -
Delphi 控件与窗体之间的位置转换问题
设置两个窗体之间的相对位置,分成两种办法: 第一种:简单的办法,设置窗体的属性Position,里面有多个选项: poDesigned:窗体运行时显示的位置和大小与设计相同; poDefault:在运行时自动设置窗口的大小与位置; poDefaultPosOnly:在运行时自动设置窗口的大小与位原创 2011-09-15 19:04:48 · 7677 阅读 · 0 评论 -
DelPhi 动态给ComBoBox赋值,从ComBoBox中取值
1、把数据库中的项目信息(项目名称、项目编号)动态赋给ComBoBox cbProjectName.Items.Clear; with adoQryProject do begin First; while not Eof do begin ProjectNameStr := fieldByName('ProjectName').AsSt原创 2011-11-22 11:33:11 · 24854 阅读 · 0 评论 -
delphi PageControl显示窗体
delphi 使用PageControl嵌套显示窗体,需要必须实现两个部分:1.创建标签页和创建窗体。2.指定窗体关闭函数,该函数包含关闭当前标签页。 1.创建标签页和创建窗体。 //如果不存在就创建标签页和窗体,如果存在,就找到。//PFormClass:要创建的窗体的类,CName:窗体的Cption;EName :窗体的Nameprocedure TMainFo原创 2011-08-31 09:16:43 · 7130 阅读 · 1 评论 -
Delphi DBGridEh标题栏的制作(复杂标题栏、标题栏显示图片、按点标题栏进行排序)
1、定制标题行 、制作复杂标题行 标题行可设为2行以上高度,并可以为多列创建一个共同的父标题行。为实现这个效果,需在各个列标题属性中以“|”分隔父标题和子标题,如办公用品包括代码和名称两部分,具体属性设置如下: usemultititile=true; titlelines=2 DBGridEh.Columns[0].Title.Caption := '办公用品原创 2011-09-14 15:07:29 · 4780 阅读 · 1 评论 -
Delphi 停靠技术的应用1(在一个窗体中停靠另一个窗体)
一、基础知识介绍1、VCL组件的基础知识 在TWinControl类中有一个DockSite属性(boolean),它的作用是是否允许别的控件停靠在它的上面;在TControl类中有一个DragKind属性,如果要这个控件能停靠在别的控件上,就把DragKi转载 2011-10-10 20:58:23 · 4902 阅读 · 0 评论 -
Delphi COM编程技术三类型库
在COM组件的使用和开发过程中经常需要获取有关组件的信息。而COM组件以二进制代码的形式发布,如果不借助特定的工具这些相关信息将难以被获取。通过访问类型库就可以查看COM组件的信息。一、类型库的基础知识介绍:1、类型库的定义:类型库:在类型库中以二进制的形式描述了一个转载 2011-10-17 19:55:55 · 2266 阅读 · 0 评论 -
Delphi COM编程技术二(COM接口和COM组件)
一、类厂(Class Factory)1、类厂的含义: 类厂是一种组件或者对象,它就是用于创建其他对象的。COM对象不是由程序直接实例的,COM使用类厂来创建对象。每一个COM都有一个相关的类厂,负责创建在服务器中实现的COM对象;类厂把COM从实际构造一个对象的过转载 2011-10-17 19:45:50 · 4980 阅读 · 0 评论 -
Delphi COM编程技术四自动化技术
一、自动化技术的基础1、 自动化名称介绍:1>、自动化: 是一种从应用程序的内部自动控制另一个应用程序的方法。 2>、自动化对象: 指的是实现了IDispatch接口的COM对象,IDispatch接口是自动化对象的一个重要标志。因此,可以通过QuereyInterf转载 2011-10-17 19:58:36 · 2371 阅读 · 0 评论 -
Delphi COM编程技术五(ActiveX技术)
一、Active技术介绍:1、Active文档涉及到的接口1>、IOleDocument接口:此接口是ActiveX文档服务器中的接口,它使一个文档对象能够与其包容器进行通信,并用其数据去创建视图,该接口也可以使一个文档对象能够枚举其视图并为包容器提供相关信息,如是否支持转载 2011-10-17 20:00:27 · 1375 阅读 · 0 评论 -
Delphi 编写COM+组件的知识和样例
一、COM组件的基础知识介绍:1、什么是COM COM是微软定的一种组件编写的规范,目的是为了实现组件的重用,不管你是用C、DELPHI、VB什么语言写的,只要遵守这种规范就是COM组件,就能相互之间调用。那这个规范是什么呢,最简单的,就是按规定使用接口,转载 2011-10-17 20:32:10 · 3776 阅读 · 0 评论 -
Delphi 编写Pas文件类型的组件
一、组件的基础知识简介:Pas文件类型的组件,只用一个文件.Pas。组件只包括三类成员:属性、方法、事件,分属于四个部分:private: 所有私有的成员都放在这里,只能被类自身的方法所访问,而不能被子类访问,对子类透明。也可说只能被单元本身的方法访问。protect原创 2011-09-27 20:02:09 · 2269 阅读 · 0 评论 -
Delphi 树形控件(TreeView)结点间的拖动
TTreeView是VCL里面一个类。与TreeView相关的一个极其重要的类就是结点(TTreeNode)。 基础知识介绍:1>. OnMouseDown :鼠标按下时发生(拖动开始,在其内要写入开启拖动的代码)。 2>. OnDragOver :在拖动过程中发原创 2011-08-25 11:46:15 · 2919 阅读 · 0 评论 -
Delphi 变体类型(Variant)的介绍(流与变体类型的相互转换、变体类型常用的函数)
一、变体类型常用的函数介绍: Variant: 一种可以拥有各种数据类型; 也可以告诉目前存储的数据是什么类型(通过使用VarType函数); 可以给相同的Variant分配不同的数据类型,只要Variant包含数字值就可以执行算法; variant数组只不过是原创 2011-10-11 20:59:36 · 22706 阅读 · 0 评论 -
Delphi 编写DLL动态链接库文件的知识和样例
一、DLL动态链接库文件的知识简介: Windows的发展要求允许同时运行的几个程序共享一组函数的单一拷贝。动态链接库就是在这种情况下出现的。动态链接库不用重复编译或链接,一旦装入内存,Dlls函数可以被系统中的任何正在运行的应用程序软件所使转载 2011-09-27 19:51:56 · 1965 阅读 · 0 评论 -
SQL判断某个表、存储过程、触发器、函数、某个字段是否存在
1、存储过程if()转载 2011-11-25 13:26:56 · 1753 阅读 · 0 评论 -
Delphi 利用API实现网格内组件的嵌入
在DELPHI中利用API实现网格内组件的嵌入 Delphi中向TDBGrid添加组件是一件十分麻烦的事情。笔者在这里向大家介绍一种利用WIN32 API函数在TDBGRID中嵌入CHECKBOX组件的方法。 TDBGrid部件是用于显示和编辑数据库表中记录信息的重要部件,它是我们在程序设计过程中要经常使用的一个强有力的工具。TDBGrid具有很多重要的属性,我转载 2011-11-26 12:53:04 · 1105 阅读 · 0 评论 -
Delphi 把客户端的文件或者目录上传到服务器端
1、StringReplace字符串替换函数:function StringReplace (const S, OldPattern, NewPattern: string; Flags: TReplaceFlags): string;rfReplaceAll:全部替换rfIgnoreCase:忽略大小写 aStr := 'This is a book, not a pen转载 2011-11-26 12:51:55 · 7805 阅读 · 0 评论 -
Delphi 设置或者取消应用程序自动启动功能
1、// 调用此函数查找注册表中是否有指定的值,真:自动启动; 假:未自动启动 function TfrmMain.GetAutoRunValue: Boolean;var Reg: TRegistry;begin Reg := TRegistry.Create; //创建一个新键 try Reg.RootKey := HKEY_LOCAL_MACHINE;原创 2012-01-19 19:19:54 · 1237 阅读 · 0 评论 -
DBCtrlGrid 属性PanelHeight高度设定问题
DBCtrlGrid的align为alClient,RowCol会根据返回值发生变化,所以PanelHeight的大小也发生了变化,但我的PanelHeight的高度必须是200,我应该怎么弄。 问题解决了,多了一行代码:RowCount := Query.FieldByName('Num').asInteger,引起的问题。1、当Align不是alnone时,通过代码改变RowCou原创 2012-02-03 09:58:46 · 3017 阅读 · 0 评论 -
Delphi 在Debug下开启内存泄漏检查
都是写着应用程序入口的Begin..end中。 1、第一种方法 {$ifdef DEBUG} ReportMemoryLeaksOnShutDown := True; //插入到应用程序入口的begin语句下。 {$endif} 2、第二种方法{$WARN SYMBOL_PLATFORM OFF} // 在程序调试时,检测是否有内存泄漏 Repor原创 2012-02-03 13:53:03 · 2347 阅读 · 0 评论 -
Delphi 入门介绍
1.BDE administration : Borland数据库引擎管理工具 Database Desktop : 与BDE配合使用的桌面数据库管理工具 Datapump : 数据库间进行数据转换的工具 Image Editor : 图像资源编辑工具 SQL Monitor : 是用于测试SQL语句的工具 WinSi原创 2011-12-29 18:38:26 · 972 阅读 · 0 评论 -
Pascal语言
1.Pascal语言是一门结构化的语言,它具有丰富的数据类型和控制结构,简明易懂。2.Pascal语言还是一种自编译的语言。 Pascal语言是一种结构式程序设计语言。FREEPASCAL 3.Object Pascal语言的67个保留字(不可重新定义): asm: 汇编语言扩展名 constructor: 构造器;构造函数;建造者 destructo原创 2011-12-29 18:37:30 · 2797 阅读 · 0 评论 -
Delphi 快捷键大全
1.SHIFT+鼠标左键 先选中任一控件,按键后可选中窗体(选中控件后按Esc效果一样) 2.Shift+F8 调试时弹出CPU窗口。 3.Shift+F10 等于鼠标右键(Windows快捷键)。 4.Shitf+箭头 选择 5.shift +F12 快速查找窗体并打开 6.F7转载 2012-02-24 17:09:36 · 936 阅读 · 0 评论 -
Delphi 加载Txt文件中的内容显示在Memo中文字的前面
{*------------------------------------------------------------------------------ 显示日记的内容 @param Flag 是否显示当前文档的全 只输入------------------------------------------------------------------------原创 2012-02-16 15:56:34 · 5066 阅读 · 0 评论 -
判断字符串是否由数字组成 自动生成6位的密码 数据库操作,定位记录返回其值,或者返回默认值
1、判断字符串是否由数字组成 {*------------------------------------------------------------------------------ 判断字符串是不是数字 @param Vaule 要检测的字符串 @return 真:全部是数字;假;存在其他字符----------------------------------原创 2012-02-17 17:37:47 · 1810 阅读 · 0 评论 -
Delphi 从数据库中读取数据给TreeView赋值,然后从TreeView结点中读取数据
// 树节点类型记录 TNodeLocalParam = ^TLocalParam; TLocalParam = record FProjectID: Integer; FVersionID: Integer; FSubItemID: Integer; FSubItemParentID: Integer; FUnitID: Intege原创 2011-11-23 08:54:23 · 5493 阅读 · 0 评论 -
COM与DCOM的区别与联系
COM:组件对象模型技术DCOM:分布式COM 其实这种提法本身就及不科学,DCOM本身就是COM的一种表现形式,但是由于大家听见COM一般就把它当成在本地执行的COM,而DCOM当然就是分布的COM,在网络上的另一台计算机上执行.于是就诞生了这篇COM与DCOM的区别与联系. 区别:1. COM有两种存在形式,动态连接库和可执行程序,但DCOM必须是可执转载 2011-12-15 14:52:39 · 1118 阅读 · 0 评论 -
Delphi 使用TAdoQuery执行存储过程的样例
Delphi 使用TAdoQuery执行存储过程的样例 procedure TCustomerForm.FindCustomerInfo;var strSql:string;begin // BL_HV_FindCustomerInfo 存储过程的名称,后面是需要的全部的参数 strSql:='exec BL_HV_FindCustomerInfo :StyleI原创 2011-11-10 14:28:32 · 4700 阅读 · 0 评论 -
在DBGrid表格控件中实现下拉表格控件
一、DBGrid网格处理的原理 Delphi提供了功能强大的DBGrid组件,以方便进行数据库应用程序设计。但是如果我们仅仅利用DBGrid组件,每一个获得焦点(Grid)只是一个简单的文本编辑框,不方便用户输入数据。Delphi也提供了一些其他数据组件来方便用户输入,比如DBComboBox,DBCheckBox等组件,但这些组件却没有DBGrid功能强大。转载 2011-11-26 13:00:01 · 4999 阅读 · 0 评论 -
Delphi 判断ClientDataSet控件的UpdateStatus属性类型为 (usUnmodified, usModified, usInserted, usDeleted))
Delphi 判断ClientDataSet控件的UpdateStatus属性类型为 (usUnmodified, usModified, usInserted, usDeleted)) 根据ClientDataSet控件的UpdateStatus属性类型为(usUnmodified, usModified, usInserted, usDeleted)转载 2011-11-26 12:48:23 · 6599 阅读 · 0 评论 -
Delphi DBGrid中嵌套按钮
procedure TManageProjForm.dbgrdhProjectDrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumnEh; State: TGridDrawState);var btnName,IconName:string; i :inte原创 2011-11-26 12:49:22 · 6795 阅读 · 0 评论 -
Delphi StringGrid常用属性和常用操作
StringGrid组件用于建立显示字符串的网格,与电子表格相似。它可使表格中的字符串和相关对象操作简单化。StringGrid组件提供了许多可控制网格外观念的属性,以及利用表格的结构响应用户操作的事件和方法。StringGrid具有关联对象与网格中的每个字符串的作用,这些对象为用户封装了字符串表示的信息或行为。 一、Delphi StringGrid控件的属性及使用说明1、固定行及固转载 2011-11-26 12:50:07 · 60809 阅读 · 0 评论 -
StringReplace字符串替换函数
function StringReplace (const S, OldPattern, NewPattern: string; Flags: TReplaceFlags): string;rfReplaceAll:全部替换rfIgnoreCase:忽略大小写 aStr := 'This is a book, not a pen!'; //This is two boo原创 2011-11-26 12:50:46 · 2515 阅读 · 0 评论 -
托盘图标的现实(利用类)
unit Unit_TrayIcon;interfaceuses Windows, SysUtils, Messages, ShellAPI, Classes, Graphics, Forms, Menus, StdCtrls, ExtCtrls;type TTrayNotifyIcon = class private Tray: TNotifyIco转载 2011-11-05 16:23:08 · 995 阅读 · 0 评论