自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

漂流侠的Delphi专版

记录我的Delphi点滴

  • 博客(48)
  • 资源 (1)
  • 收藏
  • 关注

原创 基于数据库(access)层次编码记录对TreeView的操作(实现自动编码,灵活控制编码规则和编码层次)

{-----------------------------------------------------------------------------          根据有规则的编码层次结构数据构建TreeView                  使用时直接引用此单元即可。                    最后修改:米铁强           

2008-10-17 22:33:00 1665 1

转载 MIS系统权限控制的一个简便方法

MIS系统权限控制的一个简便方法MIS系统权限控制的一个简便方法收藏 新一篇: 创MIS系统的权限又多又复杂,很多人是在用户数据表中设置多个字段,每个字段代表一个权限,或者设置一个字符串,不同的字符组合表示用户的不同权限。简单一点的,可以预先设置几个角色,根据角色来行使预设权限,但又不够灵活。现介绍一个简单灵活的权限分配控制的方法,并无高深见解,只是很多人忽略了它。如果您正在设计权限控制模

2013-11-04 08:23:27 562

转载 一句话解决delphi 2007 midas 服务器注册问题

delphi7下运行程序即可注册服务器delphi2007只有手工注册或在模块窗口中加入initialization  TComponentFactory.Create(ComServer, TMoneyMgr,    Class_MoneyMgr, ciMultiInstance, tmApartment);  ComServer.UpdateRe

2013-11-01 22:37:46 717

转载 解决“无法为更新定位行。。。。”

解决“无法为更新定位行。。。。”在Delphi中,如果使用ADOQuery对数据进行修改保存,在修改保存了第一次以后,如果再次进行修改保存,就会遇到“无法为更新定位行,一些值可能已在最后一次读取后已更改”的问题。 原因有这样几种:1.在数据库设计时,为某些字段设置了默认值,在修改进行提交以后,数据库会自动修改对应字段的所有行的默认值,从而导致了数据库与数据集中数据的不一致,使ADOQuery无法对

2009-06-14 22:56:00 1240

转载 Delphi编程中备份和恢复Access

 常用的是delphi备份SQL Server,较少用delphi备份Access的,今天有人问了一下,顺便把代码贴出来。有人可能会有需要。//(***本文出处:南山古桃(nsgtao)的百度空间:http://hi.baidu.com/nsgtao/ ****)procedure TBackup.Button1Click(Sender: TObject);varpath:string;b

2009-02-03 11:58:00 866

转载 用Delphi压缩Access数据库

procedure CompactMdbDatabase(srcDbname,dstDbname,oldpwd,newpwd:string;bAccess97:boolean=true);var idbEngine:_dbEngine;beginif oldpwd if newpwd if bAccess97 thenbeginidbengine := CreateComObject(dao97.

2009-02-03 11:41:00 663

转载 如何在自己的系统中打开并关闭外部程序

   大家知道,在一个大型复杂的系统中,有时会调用一些外部程序来帮助我们完成某些特定功能。     然而,如何打开并关闭这些外部程序呢?也许,这是一个老生常谈的话题,但笔者仍要继续讨论这个问题,原因有二:一是解决这个问题的方法很重要,并经常会遇到;二是大多数参考书提及的解决办法不全面,仍有很多朋友有疑问。下面,我将详细地阐述这个问题(提供的源代码均在WinNT/Delphi4.0环境下运行通过

2008-12-20 00:05:00 2845

原创 delphi获取句柄:获取其他线程的光标句柄[DELPHI]

当光标被另外一个线程掌握时,就无法用GetCursor()应用接口获得光标句柄。本文阐述如何在任何线程掌握光标时都能够获取光标句柄。 ========================================================={ 当光标被另外一个线程掌握时,就无法用GetCursor()应用接口获得光标句柄。 本文阐述如何在任何线程掌握光标时都能够获取光标句柄。 例如

2008-12-19 23:57:00 753

转载 dbgrideh如何实现点击标题排序

 数据源为adoQuery 1、首先设置dbGridEh里需要排序的字段的Title->Titlebutton属性为true 2、设置dgGridEh的optionsEh->dbhautoSortMarking属性为true 3、在dbGridEh的ontitleButtonClick事件里面判断。 procedure Tfrmmain.dbgGridEh1Titl

2008-11-15 13:46:00 567

转载 设定 DbGridEh 合计行信息

 //--------------------------------------------------------------------------------// 功能:设定 DbGridEh 合计行信息// 参数: pDbGrid:TDBGridEh;//        pcFields : string ; 字段列表,字段用逗号分隔//        pvtType :

2008-11-12 01:00:00 1402

原创 DBGridEh的学习笔记

 整体描述:DBGridEh拥有DBGrid的所有功能,并有如下改进:1、允许选择记录、列、方形区域;2、多列合一的表头;3、页脚能够显示求和,计数其他字段值;4、自动调整列宽;5、能够改变行和标题的宽度;6、Allows automatic broken of a single line long title and datarow to a multiline.标题

2008-11-12 00:59:00 894

原创 DBGridEh(增强型表格组件)功能详解

 DBGRIDEH 是Enlib 3.0组件包中的组件之一。Enlib 3.0组件包是一位俄国人为增强Borland系列开发工具功能而开发的第三方组件,它具有界面友好、功能强大、开发效率高、、快速制作预览/打印简单中国式报表等特点。因此,一推出即受到广大Borland程序员的青睐。目前这个版本支持Borland Delphi versions 4,5,6&7 和 Borland C++

2008-11-12 00:58:00 984

转载 dbgrideh 单元格超出的文本用省略号替换

//这个问题困扰了我很久了,网上搜索了很长时间,下面这段代码只能在没有设置字段的情况下使用。//若设置了字段,drawdatacell就无法正常执行,可以改在DrawColumnCell事件中。//另外就是这段代码不能正常处理全角字符或者汉字,会有乱码出现。  procedureTForm1.DBGridEh1DrawDataCell(Sender: TObject; const Rect:

2008-11-12 00:56:00 1573 1

原创 一个简单的加密解密算法

//前面定义好常量const  C1 = 123456;  C2 = 234567;  PASSKEY = 66666; //加密函数function Encrypt(const S: String; Key: Word): String;var  I: byte;begin  Result:=S;  for I:= 1 to Length(S) do begin    Result[I]:=

2008-10-16 20:39:00 947 2

原创 delhpi 数据库中的图像存储和读取

1 、如何实现在Microsoft Access数据库中的图像存储:这里是利用TStream的子类TMemoryStream向Microsoft Access数据库中存储图像的。下面的这段代码是在按了“保存”按钮之后所触发的事件处理程序:procedure TForm1.Button1Click(Sender: TObject);var  MyJPEG: TJPEGImage;  MS: TMem

2008-10-16 20:36:00 508

转载 Delphi 预设参数

Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 <!-- /* Font

2008-10-14 23:58:00 668

转载 delphi-多态(overload,override)与接口(interface)

 delphi-多态(overload,override)与接口(interface)   先来聊聊重载问题(也叫超载,总之是那个Overload)吧。在同一个类中,出现多个同名的方法的现象就是Overload。联系起上面提到的兄弟俩,我想这更好理解。他们从外观上是相似的,不同的是某些“参数”,类型上可能各异或是个数上不同。在Delphi中,所有方法都默认是静态的,便于编译器和链接器解析调

2008-10-14 23:57:00 665

转载 delphi 与 Excel数据交换

  Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 <object classi

2008-10-14 23:37:00 884

转载 Delphi与Excel的亲密接触

Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 <object classid

2008-10-14 23:34:00 543

转载 破解受保护的word文档

用到的工具:Winhex。下面的链接可以下载到绿色汉化版的。http://www.xdowns.com/soft/xdowns.asp?softid=31855&downid=21&id=32051破解步骤:1、先把这个受保护的DOC文挡另保存为XML格式。2、用记事本打开,我们来看看里面的代码,注意有句unprotectPassword="2EF4C71F"(不同的密码,这里显示的内容不同)。注

2008-09-07 18:12:00 945

转载 delphi操作word

 delphi操作word一、Delphi程序启动Word采用CreateOleObjects的方法来启动Word,调用VBA代码,具体实现过程为:首先使用GetActiveOleObject(Word.Application)判断当前内存中是否存在Word程序,如果存在,则直接连接,如果没有Word程序,则使用CreateOleObject(Word.Application)启动Wo

2008-09-07 12:41:00 1367

转载 枚举串口

 procedure EnumComPorts(Ports: TStrings);var  KeyHandle: HKEY;  ErrCode, Index: Integer;  ValueName, Data: string;  ValueLen, DataLen, ValueType: DWORD;  TmpPorts: TStringList;begin  ErrCode := RegOpe

2008-09-07 12:38:00 727

转载 动态创建菜单和动态关联菜单项事件

//动态创建四级菜单var  MainMenu:TMainMenu;  SubMenu,SubMenu2,submenu3,submenu4:TMenuItem;  MainMenu:=TMainMenu.Create(self);  MainMenu.AutoHotkeys:=maManual;    SubMenu:=TMenuItem.Create(self);      SubMe

2008-09-07 12:36:00 916

转载 进制转换

 {*******************************************************}{                                                       }{      进制转换                                          }{                              

2008-09-07 12:30:00 523

转载 获取当前系统版本号

 获取当前系统版本号 unit WinVerUtils;{#===============================================================================# Name: WinVerUtils.pas# Author: Aleksander Oven# Created: 2007-02-25# La

2008-09-07 12:27:00 612

转载 防止程序重复执行的单元

 防止程序重复执行的单元 //工程引用此单元就能防止同时出现多个实例unit MultInst;interfaceuses Windows ,Messages, SysUtils, Classes, Forms;implementationconst STR_UNIQUE = {2BE6D96E-827F-4BF9-B33E-8740412CDE96}; MI_ACTIVEAPP =

2008-09-07 12:26:00 465

转载 操作TreeView(咏南工作室)

 {*******************************************************}{                                                       }{       操作TreeView                                    }{                             

2008-09-07 12:23:00 1290

转载 Delphi服务程序注册与卸载

 //Delphi服务程序注册与卸载uses winsvc;function InstallService(ServiceName, DisplayName, FileName: string): boolean;varSCManager,Service: THandle;Args: pchar;beginResult := False;SCManager := OpenSCManager(n

2008-09-07 11:42:00 441

转载 设置默认输入法

 uses TypInfoprocedure SetImeA(AOwner:TForm);var  i:Integer;begin  for i := 0 to AOwner.ComponentCount - 1 do  begin    if GetPropInfo(AOwner.Components[i],ImeName)    begin      SetPropValue(AOwn

2008-09-07 11:41:00 812

转载 成本计算方法

1.加权移动平均核算成本单价=(不含税库存金额+不含税入库金额)/(库存数量+入库数量)2.先进先出按进货时的单价及数量记录序列,以日期升序提取进价作为销售出库成本单价,核算出库成本金额。3.后进先出按进货时的单价及数量记录序列,以日期降序提取进价作为销售出库成本单价,核算出库成本金额。   4.高进先出按进货时的单价及数量记录序列,以单价降序提取进价作为销售出库成本单价,核算出库成本金额。   

2008-09-07 11:30:00 1079

转载 图像格式转换

 uses  Windows, Messages, SysUtils, Classes, Graphics, JPEG;function BmpToJpeg(Sou:TFileName;Des:TFileName):Boolean;  //bmp转换成jpgfunction BmpToEmf(Sou:TFileName;Des:TFileName):Boolean;  //bmp转换成emffun

2008-09-07 11:23:00 526

转载 Enter键使用作Tab键

 首先,在主窗体中声明以下private过程:procedure TMainForm.DoEnterAsTab(var Msg: TMsg; var Handled: Boolean);beginif Msg.Message = WM_KEYDOWN thenbeginif Msg.wParam = VK_RETURN thenKeybd_event(VK_TAB, 0, 0, 0);end; /

2008-09-07 11:22:00 467

转载 ShellExecute的使用

 ShellExecute的功能是运行一个外部程序(或者是打开一个已注册的文件、打开一个目录、打印一个文件等等),并对外部程序有一定的控制。  有几个API函数都可以实现这些功能,但是在大多数情况下ShellExecute是更多的被使用的,同时它并不是太复杂。下面举例说明它的用法。开始一个新的应用程序   ShellExecute(Handle, open, PChar(c:/test/ap

2008-09-07 11:20:00 356

转载 Delphi控制Excel

 (一) 使用动态创建的方法首先创建 Excel 对象,使用ComObj:var ExcelApp: Variant;ExcelApp := CreateOleObject( Excel.Application );1) 显示当前窗口:ExcelApp.Visible := True;2) 更改 Excel 标题栏:ExcelApp.Caption := 应用程序调用 Microsoft E

2008-09-07 11:19:00 418

转载 包含图形、动画、进度条等等的状态栏

 {在Delphi中,一个控件上能否成为其它控件的父控件取决于此控件的ControlStyle属性。ControlStyle属性是集合类型的,如果此集合包含csAcceptsControls元素,则它能接受其它控件;否则,它就不能成为其它控件的父控件。ControlStyle属性只能在控件的构造函数(Constructor)中指定,在程序运行时它是不能被改变的。所以如果希望窗口状态条上面能包含其它

2008-09-07 11:15:00 528

转载 与Access数据库结构有关的一些函数

//与数据库结构有关的一些函数//1、动态改变字段名称uses ComObj;//Access//TableName: 表名; OldColName: 原字段名; NewColName: 新字段名;procedure RenameField(const TableName, OldColName, NewColName: string);var  DB, Col: OleVariant;begin

2008-09-07 10:56:00 596

转载 定时关闭各种对话框

{*******************************************************}{                                                       }{       定时关闭各种对话框                              }{                                     

2008-09-07 10:52:00 599

转载 通用打印模块DBGridEh

 {*******************************************************}{                                                       }{       通用打印模块                                    }    {                             

2008-09-07 10:50:00 679

转载 导出Tdbgrideh数据

{*******************************************************}{                                                       }{       导出Tdbgrideh数据                               }{                                

2008-09-07 10:45:00 798

转载 DES加解密算法

 {*******************************************************}{                                                       }{       DES加解密算法                                   }{                                

2008-09-07 10:44:00 349

基于数据库(access)层次编码记录对TreeView的操作

基于数据库(access)层次编码记录对TreeView的操作(实现自动编码,灵活控制编码规则和编码层次)

2008-10-17

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除