delphi 步长不等于 1 的方法】的更多相关文章

i:=; do begin ... INC(i,); end; 不能用for循环,只能用像上面的方法折衷一下…
基于Delphi的三层数据库系统的实现方法   1  引言 当前的数据库应用系统中,按其结构划分为两类,一类是两层结构的数据库应系统,另一类是多层结构的数据库应用系统. 两层结构的数据库应用系统包括客户/服务器(C/S)模式和浏览器/服务器(B/S)模式,它的特点是数据和程序分离,数据库服务器端管理数据,客户机或浏览器显示.访问和更新数据,因此可以分别进行开发和维护,同时也降低了数据库服务器的工作量,减小了网络的流量,具有较强的安全性,但当客户端程序或浏览器较多时,服务器的性能会明显下降,而且应…
TStrings是一个抽象类,在实际开发中,是除了基本类型外,应用得最多的. 常规的用法大家都知道,现在来讨论它的一些高级的用法. 先把要讨论的几个属性列出来: 1.CommaText 2.Delimiter & DelimitedText 3.Names & Values & ValueFromIndex 先看第一个:CommaText.怎么用呢?用代码说话: const constr :String = 'aaa,bbb,ccc,ddd'; var strs :TStrings…
delphi调用cmd的两种方法vars:string;begins:='cmd.exe /c '+edit1.Text+' >c:\1.txt';winexec(pchar(s),sw_hide);sleep(2000);memo1.Lines.LoadFromFile('c:\1.txt'); 2shellexecute(handle,nil,'cmd.exe',pchar(form2.edit1.text),nil,sw_hide);WinExec主要运行EXE文件.如:WinExec(’…
例如: s:= 'http://detail.tmall.com/item.htm?id=45545826531&abbucket=_AB-M129_B17&acm=03130.1003.1.161728&aldid=4HatiDee&abtest=_AB-LR129-PV129_1393&scm=1003.1.03130.13_45545826531_161728&pos=6#detail'; s:=Encoding(s);  //加密后的字符串中间就会多…
DELPHI新的变量的声明方法 从DELPHI 10.3.1开始支持新的变量声明方法: procedure TForm1.查询1Click(Sender: TObject); begin var url: TynUrl := TynUrl.Create; var serial: TynSerial := TynSerial.Create; var send: TMemoryStream := TMemoryStream.Create; try url.url := 'http://127.0.0…
Delphi编程防止界面卡死的方法经验分享! 1.循环里面防止界面卡死的方法可以使用Application.ProcessMessages:  例如下列方法:    var      n: Integer;    begin      for n := 0 to 10000 do      begin        Edit1.Text := IntToStr(n);      end;    end;  在程序里执行的时候,界面肯定会卡死的,但如何防止界面出现卡的情况呢,加入Applicati…
1.我之前用来判断Bigdecimal类型是否等于0的方法 b.equals(BigDecimal.ZERO); 用equals方法和BigDecimal.ZERO进行比较. 2.上面方法存在的问题 有一天,调用这个这句代码的时候,传入的确实是0,但却返回false 查看源代码发现: Bigdecimal的equals方法不仅仅比较值的大小是否相等,首先比较的是scale(scale是bigdecimal的保留小数点位数,比如 new Bigdecimal("1.001"),scale…
在Delphi中,所有流对象的基类为TStream类, 其中定义了所有流的共同属性和方法.TStream类中定义的属性介绍如下: 1.Size: 此属性以字节返回流中数据大小. 2.Position: 此属性控制流中存取指针的位置. Tstream中定义的虚方法有四个:1.Read:此方法实现将数据从流中读出.函数原形为:Function Read(var Buffer;Count:Longint):Longint;virtual;abstract;参数Buffer为数据读出时放置的缓冲区,Co…
附带通用控件安装方法:----------基本安装1.对于单个控件,Componet-->install component..-->PAS或DCU文件-->install;2.对于带*.dpk文件的控件包,File-->Open(下拉列表框中选*.dpk)-->install即可:3.对于带*.bpl文件的控件包,Install Packages-->Add-->bpl文件名即可:4.如果以上Install按钮为失效的话,试试Compile按钮:5.是run t…
示例注释(现在应该知道的): {   1.接口命名约定 I 起头, 就像类从 T 打头一样.   2.接口都是从 IInterface 继承而来; 若是从根接口继承, 可省略.   3.接口成员只能是方法.属性, 没有字段.   4.接口成员都是公开的, 不需要 private.protected.public.published 等任何访问限制.   5.因为接口只声明.无实现, 也用不到继承与覆盖相关的修饰(virtual.dynamic.abstract.override).   6.一个…
Delphi从XE以后集成里SVN客户端, 安装完Delphi以后, 在bin\subversion下, 存放的就是SVN客户端文件, 可惜版本有点低(好像是1.7的) 如果想更新成高版本的客户端文件按下面的方法: 1.到collab的网站SVN下载页面: http://www.collab.net/downloads/subversion 下载要使用的SVN Client版本(不是EDGE的), 大概6M左右的那个 2.下载下来安装(默认安装路径: C:\Program Files\Colla…
Delphi动态事件深入分析 2009-2-7 作者:不得闲核心提示:本实验证明了在类中方法的调用时候,所有的方法都隐含了一个Self参数,并且该参数作为对象方法的第一个参数传递... 首先做一个空窗体,放入一Button.在implementation下面声明两个方法如下: // 外部方法,只声明一个参数,此时按照标准的对象内部事件方法TNotifyEvent声明,此声明中,Sender则对应为产生该事件的对象指针. procedure ExtClick1(Sender: TObject);…
对几种方法的难易程度的判别 a.通过Delphi的控件TOleContainer 将Word嵌入 这是最简单的Ole嵌入,能够直接将Word文档调用,只需要使用ToleContainer.Run就可以 将Word文 档直接启动.且这样启动的Word文档与Delphi程序是一个整体(从界面上看),但是它存 在不可克 服的缺点,即不能通过Delphi控制Word文档,也就不能实现将灵活操纵Word的目的. b.使用Delphi提供的Servers控件调用Word,使用Word的属性 使用Delphi…
Delphi可以通过创建开机启动项键值的方法,将程序添加到开机启动项中.通过本实例代码就可以为您的程序添加到快速启动中,随着Windows一起启动,开机即运行的程序.该实例代码简单,主要是通过添加注册表键值来实现.具体的功能代码如下所示:unit dy97;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs,registry, StdCtrls, ExtC…
近来,因工作需要,必须解决Delphi写的主程序调用C#写的dll的问题.在网上一番搜索,又经过种种试验,最终证明有以下两种方法可行:    编写C#dll的方法都一样,首先在vs2005中创建一个“类库”项目TestDll,using System.Runtime.InteropServices;namespace TestDll{     public   interface  I TestClass    {       void YourProcedure(stirng param1);…
实例1 unit Unit1; interface   uses  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;    const WM_ME=WM_USER+100; //自定义消息:  type  TForm1 = class(TForm)     Button1: TButton; procedure  Button1Click(Sender: TO…
TListView 组件以多种形式显示列表的项目,如详细资料.小图标.大图标等形式表示列表中的项目.    列表视图与用TListBox 组件实现的列表框非常相似.不同的是,列表视图可以让用户选择不同的显示方式,诸如大图标方式.小图标方式.简单列表方式和详细列表方式等.Windows XP 的资源管理器就是一个典型的列表视图.1.TListView 组件的典型用法     列表视图的显示方式是通过ViewStyle 属性设置的.当ViewStyle 属性设为vsReport 时,列表视图将以详细…
最近项目中,需要在一个bpl中调用另一个bpl中的单元的方法, 方法如下: 在被调用的单元中定义: procedure Inner_Ex(VoucherType: TVoucherType); exports Inner_Ex; 实现: procedure Inner_Ex(VoucherType: TVoucherType);var  frm: tfrmaaa;begin  frm := tfrmaaa.Create(Application);  try    frm.VoucherType…
如果要在delphi中使用自定义资源文件*.res文件,比如一个光标,此时可以采用下列步骤: 1,创建包含相应的资源文件,这里是创建一个包含自定义光标的res文件. 2,在主窗体的pas文件中加入编译指令,要求编译器将资源文件链接到最终文件中. 3,在FormCreate的时候加载资源并使用. unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,…
有个API就是UrlDownloadToFile.不仅如此,Delphi的一些控件也可以轻松实现下载,如NMHTTP,指定NMHTTP1.InputFileMode := ture; 指定Body为本地文件名,指定Get就可以下载了. uses UrlMon; function DownloadFile(Source, Dest: string): Boolean; begin   try     Result := UrlDownloadToFile(nil, PChar(source), P…
症状:shell中大于,大于等于,小于等于,lt,gt ,ne,ge,le 很对应. 应对方法: 大于 -gt (greater than) 小于 -lt (less than) 大于或等于 -ge (greater than or equal) 小于或等于 -le (less than or equal) 不相等 -ne (not equal)…
在mapper.xml使用大于.小于等符号会和xml语法冲突,解决冲突有两种方式. 方法一: 使用转义字符: 字符名称 字符符号 转义字符 大于号 > > 小于号 < < 与 & & 单引号 ' &apos; 双引号 " " 注:使用转义字符需要把空格去掉. 第二种方法: 使用<![CDATA[]]> .因为xml格式遇到这种格式会把方括号里的内容原样输出,不进行解析,如: >= 改成 <![CDATA[]]>…
DisableControls方法是在程序修改或后台有刷新记录的时候切断数据组件,如TTABLE.ADOQUERY等等与组件数据源的联系.如果没有切断,数据源中只要一有数据的改动,尤其是批量改动的话,每一笔的改动都会更新窗口中数据浏览组件的显示,这样会急剧减慢处理过程而且浪费时间. EnableControls的作用相反,用来恢复TTABLE等组件与DATASOURCE的联系,并促使数据浏览组件更新显示. 这两个函数主要作用:阻止组件感应显示,以加快语句执行速度. 比如,用大量的循环的时候,最好…
//透明Panel控件 unit TranPanel; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls; type TGlassStyle = ( gsBlackness, gsDstInvert, gsMergeCopy, gsMergePaint, gsNotSrcCopy, gsNotSrcErase, gsPatCopy, gsPatInve…
1.procedure   ShowMessage(const   Msg:   string); 单元:Dialogsor   QDialogs 例子:showmessage( 'hello '); 2.function   MessageBox(const   Text,   Caption:   PChar;   Flags:   Longint   =   MB_OK):   Integer; 单元:Forms 例子:MessageBox( 'This   should   be   o…
更详细的可以参考:http://www.cnblogs.com/xumenger/p/4450659.html 或者参考之后的博客 四个系统内核对象(事件.互斥.信号.计时器)都是线程同步的手段,从这也能看出处理线程同步的复杂性:不过这还不是全部,Windows Vista开始增加了 Condition variables(条件变量).Slim Reader-Writer Locks(读写锁)等同步手段. 不过最简单.最轻便(速度最快)的同步手段还是 CriticalSection(临界区),但…
function CheckUrl(url: string; TimeOut: integer = 5000): boolean;var hSession, hfile, hRequest: hInternet; dwindex, dwcodelen: dword; dwcode: array[1..20] of char; res: pchar; re: integer; Err1: integer; j: integer;begin{uses wininet;} if pos('http:/…
//用于刷新控件颜色. FsSkinManager.BeginUpdate; FsSkinManager.EndUpdate(True); //动态选择皮肤 begin if not FIsswitch then exit; if not Assigned(FsSkinManager) then Exit; LockWindowUpdate(Application.Handle); FsSkinManager.BeginUpdate; try try FsSkinManager.SkinDire…
uses MSHtml; //在控件标签additional中找到TApplicationEvents控件,拖到窗体上.在TApplicationEvents的OnMessage事件中加入以下代码: //替换右键菜单 procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG; var Handled: Boolean); var mPoint: TPoint; begin if IsChild(WebBrowser.Handle, Ms…