- 博客(40)
- 资源 (5)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Delphi中dxTreelist控件的使用
最近公司项目中用到dxTreelist控件,以前没怎么用过这个控件,该控件比TreeView功能更强大,要完全掌握还真不容易,下面是我个人做的一个Demo,对该控件进行增删改遍历操作,以便自己以后忘了使用方法随时可以查吧。1.首先新建一个数据库。 打开SQL Server2005,新建数据库TreeTest,新建表DeviceTab,表的字段设计如下:
2011-07-04 22:30:51
12063
3
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Delphi调用WebService
Web Services是由企业发布的完成其特定商务需求的在线应用服务,其他公司或应用软件能够通过Internet来访问并使用这项在线服务。在Delphi中调用Webservice服务比较简单,具体过程如下.1.利用Delphi提供的WebServices Importer功能来引入服务器端的WSDL。打开Delphi7,选择file-new-other,点击WebService选项卡。选中WSDL Importer点击OK,出现WSDL Importer向导。输入WSDL地址,测试地址为http://ww
2011-03-03 11:14:00
8927
5
原创 TStringlist自定义排序
TStringlist顾名思义就是字符串列表,一般用来存储字符串,当然也可以用来存储对象类型,是delphi开发中经常使用的一个类,关于它的详细用法可以参看万一老师的博客,下面主要是记录我在使用中碰到的一个问题,一下是一段代码。program StringlistCmp;{$APPTYPE CONSOLE}uses SysUtils, Classes;
2014-06-21 14:22:14
10151
原创 Delphi中Json格式读写
Json是一种轻量级数据传输格式,广泛应用互联网和各应用中,json主要采用键值对来表示数据项,多个数据项之间用逗号分隔,也可以用于数组。下面注重介绍一下在delphi中使用json,在delphi中使用json常用superobject单元文件,该文件可以在网上下载,最初接触json是在2011年,好久没用这不刚好有项目要用到又折腾了好久,下面做了一个简单的Demo,方便以后忘了能随时查看,具体
2014-05-29 00:05:58
61017
3
原创 DBGridEh控制单元格显示以及存储过程 触发器和视图以及事务的使用
做Delphi数据库开发也已经几年了,但是对ADO的一些高级应用和DBGridEh的使用一直不太熟练,趁着这周刚好双休,自己做了一个Demo,算是一个小的总结吧,也方便以后应用可以随时查阅。DBGridEh是Ehlib控件包中的一个,比起Delphi自带的DBGrid好用不少,一般也是数据库显示常使用的表格控件之一。要控制DBGridEh的单元格显示主要使用OnGetCellParams或者OnD
2013-07-21 22:07:43
3434
1
原创 Delphi中ADO查询多表更新单表解决方法
学Delphi也好久了,但一直没怎么总结,这不好久没弄ADO了,趁这个星期一直看公司的代码,自己也来实践一下。以前一直用ADO操作单表,一直没怎么弄过ADO操作多表的程序,不自己实践一下还真不知道操作多表时有要注意的地方。下面是一个例子。第一步,新建一个测试库Test,表结构如下:第二步,新建一个Delphi应用程序,在界面上放置adoconnection和adoq
2013-04-21 23:17:06
6492
1
原创 C语言学习-结构体和文件操作
C语言是门经典的高级语言,只可惜大学学的不够好,工作后也没怎么用到,快把学的还给老师了,最近无聊之余,把C语言相关知识看了,编程还是在于多练和多思考,实践加学习才能领悟和找到解决问题的方法,下面是看了C语言视频后,自动动手做的一个职工信息管理系统。在C语言中读写文件,一般有一下步骤,首先用fopen函数打开文件,返回文件指针,然后用fwrite或者fread等函数进行读写,使用完后用fclose关
2013-03-17 18:12:17
5579
2
原创 Delphi控制编辑类控件不能粘贴
在一些C/S软件和登录网站输入账号密码时经常只能进行输入,而不让用户直接粘贴,防止上次用户登录账号没清除,下一个用户直接粘贴该账号而导致账号信息泄露,刚好在公司开发中要实现该功能,下面记录下在Delphi中实现该功能的方法。粘贴主要是利用了windows的剪贴板功能,因此清除剪贴板中内容即可实现。打开Delphi,新建一个应用程序,在窗体上放置2个Edit控件和一个popupmenu控件。窗体
2013-02-02 17:56:36
3519
1
原创 Delphi中文件操作
Delphi中磁盘文件主要分为文本文件、有类型文件和无类型文件,对文件的读写操作,Delphi已经封装了许多函数这里不再讨论,下面主要是研究一下文件搜索所用到的几个函数,也算是对近来文件学习的一个总结。(1)FindFirst:寻找第一个特定路径中符合文件属性的对象实例,如果查找成功则返回0,否则返回错误代码。声明如下:function FindFirst(const Path:strin
2012-10-28 20:26:12
1323
原创 C#写的dll跨语言调用
C#写的dll为非标准的windows下dll,故一般其他语言不能直接调用,当然基于.net平台下的编程语言是可以调用,要让其他语言调用C#写的dll一般通过webservice服务或者是Com方式。经过在网上找资料以及自身的实践发现可以通过以下方式在Delphi和VB语言中调用。1.编写C#写dll,用VS新建一个类库项目TestDll,源码如下:using System;using
2012-10-14 18:03:24
10864
3
原创 Delphi中CxGrid控件使用总结
(注版本为DevExpr_v46)1. CxGrid汇总功能① OptionsView-Footer设置为True,显示页脚 ② CxGrid的Summary选项卡定义要汇总的列和字段名及汇总方式,Footer选项卡定义单个汇总,Default For Groups定义按组汇总。OptionsView-GroupFooters设置为gfAlwaysVisible则显示按组
2012-09-23 10:35:46
11261
1
原创 Delphi中二叉树的学习
二叉树是树结构中的一种,任意树都能很容易的转换成相应的二叉有序树,二叉树的存储和算法相对简单,存储效率高。二叉树是n(n>=0)个结点的有限集合,它或者为空集(n=0),或者是由一个根结点和两个互不相交的分别称为根的左子树和右子树组成。二叉树是由根结点、左子树、右子树三个基本单元,相应的遍历算法也有三种,一下是根据C语言改编的Delphi的二叉树实现及遍历算法。打开Delphi,选择File-
2012-01-08 23:12:52
3101
转载 完整性约束的SQL定义
更新数据库时,表中不能出现不符合完整性要求的记录,以保证为用户提供正确、有效的数据。实现该目的最直接的方法,是在编写数据库应用程序时,对每个更新操作都进行完整性检查。但这种检查往往是复杂、重复、低效的。SQL把各种完整性约束作为数据库模式定义的一部分,由数据库管理系统维护,这样即可有效防止对数据库的意外破坏,提高了完整性检测的效率,又减轻了编程人员的负担。SQL Server支持三
2012-01-04 00:18:29
2575
原创 Delphi中单链表操作
单链表顾名思义就是每一个元素只有一个一个直接前驱和一个直接后驱,链表中的每一个元素称为节点,一个节点包括数据区和指针区,数据区即存储数据的部分,指针区即下一个节点的存储地址,操作链表主要就是操作节点的指针区,链表在内存中存储不是连续的,也不是一次性分配和释放的,用链表可以方便的插入和删除元素。下面是一个用Delphi控制台程序写的单链表的增删改查程序。用Delphi新建一个控制台应用程序,源码
2011-10-28 23:30:52
1718
原创 Delphi中DLL的其他应用
1.DLL的入口函数和出口函数 在编写DLL时可以在DLL项目文件的begin..end之间加入DLL的进入口函数和出口函数,全局变量DLLProc是一个过程指针,指定入口/出口函数,初始值为nil,只需将自己的出入口函数赋值给它即可,自己的出入口函数必须传入一个DWord
2011-07-19 22:45:50
5849
1
转载 IE8浏览器文本框突然变小的解决办法
IE升级到了8.0版本以后,由于系统使用第三方主题而导致IE8或IE内核浏览器页面的按钮或输入框无限小。 目前网上常见的解决方法是在IE的高级设置里不勾选“对网页上的按钮和控件启用视觉样式”,这样的确可以解决。但有个不是问题的问题:一些第三方主题本来按钮做的很漂亮,这样设置以后,
2011-07-14 20:50:28
1581
原创 Delphi中流类的学习(一)
最近不怎么忙,看了一下万一老师的delphi博客学习了一下delphi中的流类。写一下我对delphi流的总结已助以后参考。流就是一段数据或一块内存,在面向对象的编程语言像Java和C#等里面都有这个类,操作流时我们不用关心里面的数据是啥,只需知道流的当前位置和流的大小即可。下面重点说一下Delphi中的流类。1.Delphi中流类的层次图 TStream类为所有流类的父类,
2011-06-08 22:39:00
2736
转载 利用自定义事件实现不同窗体间的通讯
<br /> 要实现子窗体与父窗体之间的通讯,有多种方法(比如:重载子窗体的构造函数,将父窗体的引用作为参数传递给子窗体)。下面我要介绍的是利用自定义事件的方法,它能够最大程度的避免模块之间的耦合,充分体现面向对象的优点。<br /> <br /><br />下面是实现代码:<br /> <br />Unit2 //子窗体<br /> <br />type<br /> //声明自定义事件的类型(类似于C#中的委托)<br /> TMyEventHandle = procedure (Sender: T
2011-06-01 22:37:00
1037
原创 简单的delphi停泊窗口制作
可停泊窗口在office系列软件及delphi和vb等软件中经常见到,通过停泊窗口可以改善界面的美观效果。在delphi中创建可停泊窗口比较简单,基本分为两个步骤:一建立停泊区即可以防止停泊对象的区域继承TWinControl的控件都可以做为停泊区,只需设置它的DockSite和Autosize属性,DockSite设置为true即可以接受停靠,autosize设置为True时当停泊对象离开停泊区时停泊区会自动改变大小。
2011-04-02 11:13:00
1627
原创 cxImageCombobox使用
<br />delphi中DevExpress组件中的cxImageCombobox功能很强大,近几天同事测试,问题都出在它,于是研究了一番。<br /> <br />新建一个应用程序,拖2个cxImageComboBox在窗体上,然后加一个button。<br />设置属性如下<br /> name value<br />cxImageComboBox1 editValue=0 type=Shortint<br />
2010-12-23 14:50:00
2988
转载 DLL中封装窗体
<br />在DLL中可以封装窗体,需要解决的关键问题在于DLL中的Application对象和调用的Application对象是有区别的。对于一般的应用程序来说,Application 对象是 VCL 固定的,一般不需要修改Application对象指针。但是在 DLL中,使用窗体或者使用 Application对象时,必须使 DLL的 Application和调用程序一样,这样才不至于混淆。如果不修改 Application 对象,那么应用程序退出的时候,可能会出现错误。例如使用如下代码在调用程序中导出
2010-10-14 12:49:00
3488
原创 Delphi 中线程的初级学习
Delphi把多线程相关的API封装在TThread这个类中,可以方便实现多线程运用。按住Ctrl就可以看到TThread类源码。由于TThread是一个抽象类,所以不能直接创建实例,要创建其派生类的实例。一般的使用流程是这样的:1、先新建一个以TThread为父类的派生类;2、覆盖构造函数,将特定的参数传递进来,保存为类的私有变量;3、覆盖Execute方法,将线程要实现的操作放
2010-09-08 23:04:00
767
转载 Delphi6编译错误大全(转)
Delphi中错误包括编译错误和运行时错误,下面是在网上找的错误大全以方便查找。编译错误信息<br /><br /><br />';' not allowed before 'ELSE' ElSE前不允许有“;”<br /><br />'' clause not allowed in OLE automation section 在OLE自动区段不允许“”子句<br /><br />'' is not a type identifier 不是类型标识符<br /><br />'' not previousl
2010-09-01 14:44:00
1061
原创 Delphi中处理汉字的方法
在Delphi中一个汉字占两个字节,各种字符串处理函数,直接处理字符串中汉字时经常会发生乱码或不显示。我在处理时也是弄了半天,到处找资料,一下是找到的几种处理方法。在Delphi7下测试通过。一.中文所用的字符全是双字节字符,英文所用的字节全是单字节字符,也就是mbSingleByte。本实例是用ByteType()函数返回字符串指定位置上的字符,如果不是mbSingleByte,则表示为双字节字符。主要代码如下: procedure TForm1.Button1Click(Sender: TObject)
2010-08-27 15:20:00
10120
原创 TreeView结合数据库的递归调用
1用Access建一个数据库 数据库名book 表名bk 字段如下id caption parentid1 书籍列表 82 文学 13 计算机技术 14 三重门 25 编程 36 Java 57 C
2010-08-12 17:55:00
1193
原创 显示桌面图标修复
<br />使用记事本等文本编辑器,重新用以下内容建立一个显示桌面.scf文件。内容如下:<br />[Shell]<br />Command=2<br />IconFile=explorer.exe,3<br />[Taskbar]<br />Command=ToggleDesktop<br />保存时把文件名设为"显示桌面.scf",再将其拖到快速启动栏上,桌面图标就找回来了。<br />第三行代表图标的位置,把数字"3"换成"4"刷新,图标会变化;再换成"5",变成另外一个。
2010-08-07 09:05:00
734
原创 IsDBCSLeadByte函数
IsDBCSLeadByte函数用于用于判断一个字符是不是多字节字符,如果是返回一个非零数,如果不是返回零,利用它可以对字符串进行处理。下面用此函数提取汉字1”文件”—“new”—“Application”在窗体放置一个Edit 一个Label 一个Button按钮,设置Button的caption为提取汉字。2双击Button输入如下代码:procedure TForm1.Button1Click(Sender: TObject);var len,j:integer; s:string; str:s
2010-08-05 13:16:00
8437
转载 怎样用VB编写.DLL动态链接库文件
<br />一、名词解释:<br />DLL 的学名叫 动态链接库<br />二、它是干什么用的:<br />搜索一下有很完整详细的解释。这里,我只引用过来当中的一句话<br />“在Windows中,许多应用程序并不是一个完整的可执行文件,它们被分割成一些相对独立的动态链接库,即DLL文件,放置于系统中。当我们执行某一个程序时,相应的DLL文件就会被调用。”<br />三、制作自己的dll:<br />使用dll的意义<br />(以下来自MSDN)<br />节省内存和减少交换操作。很多进程可以同时使用
2010-07-13 14:20:00
7220
1
原创 在搜寻时显现“意外错误操作无法完成”
<br /> <br />1、新建文本文件。<br />2、将以下内容复制入文本文件:<br />这是因为注册表少几个键值,只用记事本写个“复原.reg”文件导入注册表就能够啦。代码如下:<br />Windows Registry Editor Version 5.00<br />[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Explorer/Desktop/NameSpace]<br />[HKEY_LOCAL_MACHI
2010-07-11 18:27:00
1042
原创 用Servers组件控制Word
1)控制Word的Servers组件简介<br />在Delphi中控制Word的组件主要有WordApplication和WordDocument等。<br />WordApplication对象主要用于启动并建立对Word的连接,并对打开Word时的有关内容进行设置。WordDocument对象主要作用于Word文档,它与WordApplication关联配合对Word文档进行操作。<br />Servers组件调用Word的实例。该实例主要作用是编辑Delphi中的memo文本,并能够调用Word中的
2010-07-10 22:59:00
1680
原创 vb调用webservice(二)
<br />利用SOAP协议<br />首先,需要引用 microsoft xml 6.0<br />在客户端调用时<br />'定义soap消息 这个消息可以在webservice调用过程获得。主要处理在soap12:Body<br /> Dim strtest As String<br /><br />' strtest = "<?xml version=""1.0"" encoding=""utf-8""?> "<br />' strtest = strtest + " <soap12
2010-07-05 22:33:00
5139
转载 用VB调用Webservice(一)
<br />关键字:VB,WebService,C#,<br />调试环境:vb6+sp5 , Vs.net 2005 , SOAP Toolkit 3.0<br /> <br />在VB中调用Webservice先要安装Soap Toolkit,可以到微软的网站上下载,下载地址为:http://www.microsoft.com/downloads/details.aspx?familyid=BA611554-5943-444C-B53C-C0A450B7013C&displaylang=en<br />
2010-07-05 21:52:00
23899
6
转载 VBA加载宏基础
<br />一、简介<br /><br />加载宏可以扩展Excel的功能,与Excel的内置功能一致,是为Excel提供自定义命令或自定义功能的补充程序。某些加载宏还提供了可用于公式中的新的工作表函数。<br /><br />使用某加载宏必须已安装,且须在加载宏对话框中进行调用。加载宏默认安装在Microsoft Office/Office 文件夹中的 Library 文件夹或 Addins 文件夹,或它们的子文件夹中。<br /><br />其中,Excel加载宏是包含了所需要实现的功能的函数或过程的工
2010-07-04 22:09:00
9956
1
转载 注册、反注册dll文件,regsvr32命令详解
注册、反注册dll文件,regsvr32命令详解 这里有很多Regsvr32命令,看了后就明白了Regsvr32命令修复系统故障实例使用过activex的人都知道,activex不注册是不能够被系统识别和使用的,一般安装程序都会自动地把它所使用的activex控件注册,但如果你拿到的一个控件需要手动注册怎么办呢?如果修改注册表那就太麻烦了,在windows的system文件夹下有一个regsvr32.exe的程序,它就是windows自带的activex注册和反注册工具。<br /><br />200
2010-05-31 11:57:00
33302
原创 delphi中Ihtmldocument2接口的使用
MSHTML是微软公司的一个COM组件,该组件封装了HTML语言中的所有元素及其属性,通过其提供的标准接口,可以访问指定网页的所有元素. MSHTML对象模型是由一些对象和集合组成的.处于根部的是HTML,描述了打开页面的1个窗口,包括一系列集合和对象。如Frames集合,History,Location,Navigator,Document,Vi—sum,Event对象等.其中描述呈现在客
2010-04-27 17:11:00
10635
转载 Delphi bookmark使用
关于书签(BookMark)操作; 书签操作主要用于在表中快速地定位记录指针,在应用程序中常常要保存记录指针所在的位置,在进行其他处理之后,希望能快速地返回到先前指针所在的位置,此时,使用书签将显得特别有用。有关书签操作,Delphi提供了三个方法,它们是: ● GetBookMark ● GotoBookMark ● FreeBokMark
2010-04-27 09:46:00
9530
转载 Delphi中鼠标的形状
procedure TForm2.Panel1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin Screen.Cursor := -2; end; const crDefault = TCursor(0); crNone = TCursor(-1); cr
2010-04-27 09:20:00
3376
2
原创 delphi中exit,abort,break,continue 的区别
exit: 退出函数体abort: 遇到异常,安静处理,就是不显示不提示break: 退出当前循环体,包括for ,while, repeat等循环体continue: 结束循环内的本次处理,继续从循环体的开始位置继续执行 Exit 是跳出当前代码块,也就是当前函数,跳出后是要继续向下执行的(如果有后续代码)。Abort 是从 EAbort 过来的,可以激发 exception,其实质
2010-04-27 09:10:00
3299
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人