自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

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

转载 TField.ProviderFlags

TField.ProviderFlags,這對於組 SQL 來說至關重要!ProviderFlags 是 TProviderFlag 的集合,我們來看看 ProviderFlags 可以包含哪些元素        元素名稱 說明  備註 pfInUpdate INSE

2011-10-16 20:59:13 1027 1

原创 简单到不能再简单的连接池

unit AdoconnectPool;interfaceuses  Classes, Windows, SyncObjs, SysUtils, ADODB;type  TADOConnectionPool = class(TObject)  privat

2011-10-14 22:02:37 1440

转载 SimpleObjectBroker

首先要设SimpleObjectBroker的loadBalanced的属性为True,并保证所有的应用服器已向SimpleObjectBroker注册,当客户端应用程序查觉原来的应用服器出现故障后立刻调用TSimpleObjectBroker的SetConnectedS

2011-10-10 21:18:30 759

原创 ParamsToVariant and VariantToParams

function ParamsToVariant(Params: TParams; Macro, Compatible: Boolean): Variant;var  I: Integer;  Tmp: Variant;begin  if (Params.Co

2011-10-05 22:16:09 525

原创 rtti多国语言

procedure TBaseForm.SetControlCaptions(Container: TWinControl);var  I: Integer;  sCaption, sNewCaption, sLanguage: string;  T: TRtti

2011-10-01 21:59:34 447

原创 最大化最小化自定义窗口的尺寸

unit uBaseForm;interfaceuses  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,  Dialogs;type  TPoint =

2011-09-28 21:46:48 489

原创 cxgrid动态多表头

function TForm15.CreateBand(View: TcxGridDBBandedTableView;  BandCaption, ParentBandCaption: String): TcxGridBand;var  band: TcxGridBa

2011-09-24 20:51:40 1108

原创 cxdbtreelist新增

type  TMYDBControler = class(TcxDBTreeListDataController);procedure TForm15.Button1Click(Sender: TObject);var  AParentKeyValue: Vari

2011-09-19 22:18:13 1091

原创 表格内嵌编辑控件

在DBGrid 中嵌入一个 DBComboBox1procedure TForm1.DBGrid1DrawDataCell(Sender: TObject; const Rect: TRect; Field: TField; State: TGridDrawState);

2011-09-19 22:16:29 622

原创 导入EXCEL到数据库中

procedure Import(SourceDS, DestDS: Tadoquery);var  sFileName, sTableName: string;  sl: TStringList;  i: integer;  conn: TADOConnec

2011-09-06 20:17:56 560

原创 fastreport一些使用方法

uses Printers    txtPrinterName.Items.Assign(Printer.Printers);    frxReport1.LoadFromFile(AppConfig.ReportPath + ReportId + '.fr3');

2011-09-06 20:16:03 1932

原创 TSelect

unit uSelect;interfaceuses  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,  Dialogs, FindDM, Grids, DBGr

2011-09-05 21:31:31 453

原创 TFindFrames

unit FindDM;interfaceuses  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,  Dialogs, StdCtrls, DB, ExtCtr

2011-09-05 21:30:33 396

原创 解决DLL包组织的项目运行报 a class named Txxx exists

对于使用DLL包方式组织的项目,很多人都知道如果BUILD WITH RUNTIME PACKAGE不勾选上,会有很多的问题。所以一般会将所有的EXE和DLL项目的BUILD WITH RUNTIME PACKAGE勾选上。每当这时候,你以为万事大吉了。兴奋地编译项目,满怀期待地

2011-09-04 15:33:49 1096 1

转载 字符转换

vars:string;p:pchar;a:array[1..20] of char;那么三者之间的转换如下:1、字符串到PChar    p:=PChar(s);2、PChar到字符串    s:=p;3、PChar到字符数组    St

2011-09-03 21:23:07 325

原创 SQL SERVER备份脚本

-- 完全备份-- 注意: 一切都从完全备份开始DECLARE  @Path VARCHAR(1000),  @FileName VARCHAR(1000), @WeekDay VARCHAR(20) SET @WeekDay = CASE DATEP

2011-09-03 21:21:14 478

原创 sql server游标临时表

ALTER PROCEDURE MKTG_DiffeRenceDailyReport@CustomerName varchar(100),@ShipDate datetimeASBEGIN Set NoCount ON   DECLARE   @N

2011-09-03 21:19:48 341

原创 网页数据抓取

方法一:WebBrowser1.Silent := True;WebBrowser1.Navigate(URL);repeat  Application.ProcessMessages;until WebBrowser1.ReadyState = READYS

2011-08-28 07:16:38 506 1

转载 base64

uses jpeg,EncdDecd,ZLibEx//字符串base64 编码Function StrtoBase64(const Str:string):string;begin result:=EncodeString(Str);end;//字符串ba

2011-08-14 13:41:43 472

转载 压缩和解压缩OLEVARIANT

uses ZLibEx procedure VariantToStream(const V: OLEVariant; Stream: TStream);var  P : Pointer;begin  Stream.Position := 0;  Str

2011-08-14 13:19:15 535

转载 olevariant和stream相互转换

procedure VariantToStream(const V: OLEVariant; Stream: TStream);var  P : Pointer;begin  Stream.Position := 0;  Stream.Size := VarA

2011-08-14 13:14:55 70

转载 字符串加密解密方法

function Decrypt(Src: string; Key: string): string;var  KeyLen, KeyPos, Offset, SrcPos, SrcAsc, TmpSrcAsc: Integer;  Dest: string;be

2011-08-14 13:08:14 482 1

原创 DELPHI实现类似仿360桌面的程序界面

1.窗体半透明: Alphablend属性为true;Alphablendvalue的值为100 2.窗体透明:formCreate:Self.TransparentColor := True;Self.TransparentColorValue := clBlack;self.

2011-07-14 22:11:46 4319 1

原创 BROKER服务器同客户端和应用服务器三者之间传递消息的格式定义

Broker服务器设计定义统一而标准和消息格式,消息传递统一使用JSON(XML)格式,最好是同时支持这俩种格式。它们是国际标准,一般的开发语言都支持。如果使用结构体来传递,不同的语言会不兼容。各种语言开发的不同的应用服务器通过统一的消息格式同BROKER S

2011-07-08 23:32:10 951

原创 BROKER SERVER设计

Broker服务器设计定义统一而标准和消息格式,消息传递统一使用JSON(XML)格式,最好是同时支持这俩种格式。它们是国际标准,一般的开发语言都支持。如果使用结构体来传递,不同的语言会不兼容。各种语言开发的不同的应用服务器通过统一的消息格式同BROKER SERVER进行交互。

2011-07-08 23:19:51 313

转载 集群式服务器架构

为了达到1:10000的连接,可以采用Server-Client的连接方式,而为了达到1:10000*100的连接,我们怎么办呢?一般会采用Client-> ConnServer -> LogicServer。这是技术背景。ConnServer在接受完Clie

2011-07-05 22:07:14 927

转载 TPerlRegEx正则式控件入门

//在后面介绍 TPerlRegEx 类的方法时, 关于对 (子表达式) 的引用还有更多话题.Delphi 正则表达式语法(9): 临界匹配 - 也叫"预搜索"与"反向预搜索" //匹配右边varreg: TPerlRegEx;beginreg := TPerlRegEx.Create(nil);reg.Subject := Delphi 6; Delphi 7; Delphi 2007

2011-06-17 21:58:00 781

原创 NativeXML入门

uses NativeXml; procedure TForm1.Button1Click(Sender: TObject);begin  Caption := fXML.Root.FindNode(father).Value;    {tom}end;procedure TForm1.CreateXMLClick(Sender: TObject);begin  fXML.Crea

2011-06-17 21:51:00 461

原创 使用EXCEL制作通用打印模块

{eclApp.ActiveSheet.PageSetup.PaperSize := xlPaperA3;       //设置纸张的类型   eclApp.ActiveSheet.PageSetup.Orientation := xlLandscape; //设置是横向打印还是纵向打印   eclApp.ActiveSheet.PageSetup.PrintTitleRows := '$3:$5';  //设置表头重复如果多页的情况下   eclApp.ActiveSheet.PageSetup.Cent

2011-06-01 21:29:00 1425 1

转载 ado多线程查询

类似代码:CoInitialize(nil) ; //CoInitialize was not called   Qry := TADOQuery.Create(nil) ;   try // MUST USE OWN CONNECTION // Qry.Connection := Form1.ADOConnection1;     Qry.ConnectionString := ConnStr;     Qry.CursorLocation := clUseServer;     Qry.LockType

2011-05-18 14:57:00 1296

转载 遍历目录及其子目录下面的某类型文件

<br />网上一大把这种方法,可惜许多不能用。这个我试过了,可以。<br />USES Masks<br />procedure GetFileListEx(FilePath, ExtMask: string; FileList: TStrings; SubDirectory: Boolean = True); //遍?目?及子目?<br />function Match(FileName: string; MaskList: TStrings): boolean;<br />var<br />    i

2011-05-18 14:54:00 342

原创 cxgrid 获取合计行数值

procedure Tfrm1.TableViewDataControllerSummaryAfterSummary(  ASender: TcxDataSummary);begin  inherited;iSaleAmt:=TableView.GetColumnByFieldName('SaleAmt').Index;vSaleAmt:=ASender.FooterSummaryValues[iSaleAmt];

2011-05-07 22:18:00 824

转载 根据数据表中的内容,动态创建主菜单

<br />//我们在写C/S管理系统时经常是根据用户的权限来相应禁止一些菜单<br />//在实践时,我发现使用动态方法创建菜单有可能对软件被破解起到一点小的作用<br />//因为实现起来,不是很难,所以写出来分享一下<br />//我们在菜单的事件中,利用菜单项的TAG值来判定是点了那一项<br />//首先,用一张数据表来存所有用户的菜单内容,格式如下<br />//ID    int<br />//image    int    //-1是指ImageIndex的值,即无图标<br />//cap

2011-04-23 10:01:00 617

转载 Windows勾子处理类Thook 以及示例

<br />我已经看到了很多人想在一个应用程序中挂接消息搞一个干净的解决方案。所以,前一段时间作我决定写一个钩子类,能很好的处理事件之类的东西。 <br />Hook.pas可以分配方法的指针指向一个过程(有一些汇编的帮助)。 <br />例如:如果你想在应用程序中捕获所有击键 - 只需声明一个TKeyboardHook实例,指派一个处理程序给OnPreExecute或OnPostExecute,或同时处理这两个事件。设置激活你的KeyboadHook(KeyboardHook.Active:= true)

2011-04-23 09:53:00 553

转载 海量数据库的查询优化及分页算法方案

<br />随着“金盾工程”建设的逐步深入和公安信息化的高速发展,公安计算机应用系统被广泛应用在各警种、各部门。与此同时,应用系统体系的核心、系统数据的存放地――数据库也随着实际应用而急剧膨胀,一些大规模的系统,如人口系统的数据甚至超过了1000万条,可谓海量。那么,如何实现快速地从这些超大容量的数据库中提取数据(查询)、分析、统计以及提取数据后进行数据分页已成为各地系统管理员和数据库管理员亟待解决的难题。<br /><br />在以下的文章中,我将以“办公自动化”系统为例,探讨如何在有着1000万条数据的

2011-04-22 08:00:00 898

转载 DLL直接返回对象

<br />DLL直接返回对象时是有可能出错的,这是因为程序和DLL用了不同的VCL,就是相当于一个接口的不同实例,所以只要是从DLL里返回VCL相关的对象都会出错。<br />有两种方法可以解决:<br />1、在Controls单元的implementation前面声明一个GetControlAtom方法<br />{...}<br />implementation<br /><br />function GetControlAtom: Pointer;<br />begin<br />  Result

2011-04-22 07:41:00 908

原创 窗口显示于parent控件上

<br />procedure TForm1.openForm(aFormClass: TFormClass; aOwner: TWinControl);<br />begin<br />  with AFormClass.Create(aOwner) do<br />  begin<br />    ManualDock(aOwner);<br />    WindowState := wsMaximized;<br />    Align := alClient;<br />    Show;<br /

2011-04-09 23:29:00 485

原创 遍历dxBarManager菜单及工具条

<br />procedure TForm1.blDxBarManager;<br />var<br />  i: Integer;<br />begin<br />  for i := 0 to dxBarManager1.ItemCount - 1 do<br />  begin<br />    if dxBarManager1.Items[i] is TdxBarButton then<br />      TdxBarButton(dxBarManager1.Items[i]).OnClick :

2011-04-09 23:27:00 885

原创 dxBarManager生成权限树

<br />Var<br />  count, scount: integer;<br />  mynode: TTreeNode;<br />  mysubItem: TdxBarSubItem;<br />Begin<br />  Inherited;<br />  For count := 0 To frmMainForm.MenuBar.ItemLinks.Count - 1 Do<br />  Begin<br />    mynode := RzCheckTree2.Items.AddFirst

2011-04-09 23:26:00 816 1

原创 dxBarManagerToDxNavBar方法

<br />procedure TForm1.dxBarManagerToDxNavBar;<br />var<br />  i, j: Integer;<br />  item: TdxBarSubItem;<br />  group: TdxNavBarGroup;<br />  bar: TdxNavBarItem;<br />begin<br />  dxNavBar1.Groups.Clear;<br />  for i := 0 to dxBarManager1Bar1.ItemLinks.Co

2011-04-09 23:24:00 1042 1

ehlib

咏南工作室(陈新光) 11:00 2008-02-23&lt;br&gt;&lt;br&gt;您可随意复制、修改本控件。&lt;br&gt;&lt;br&gt;我只修改了DELPHI7版本的,其它DELPHI版本的只好请有心人去修改了。&lt;br&gt;&lt;br&gt;增加了行号、斑马线、财务栏,请看效果截图。&lt;br&gt;&lt;br&gt;其中行号只对ADO数据引擎有用,对BDE无效。

2008-03-15

空空如也

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

TA关注的人

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