人生,即使在最困难的时期,也不能放弃学习, 不能与时代脱节 ---- 勉励处于困难时期的自己.
delphi directui 做界面的一个例子
作者:轻舞肥羊 日期:2013-12-30
delphi 神龙卡osd 的一个测试(附源码)
作者:轻舞肥羊 日期:2012-10-28
这是以前在做视频点播,卡拉OK 系统的的时候,用来验证神龙卡OSD 的一个DEMO,虽然最终没有采用这个delphi版的神龙卡OSD 组件,但还是有一定参考价值的。最终项目采用了c++ 写的一个神龙卡osd 组件。神龙卡作为视频解压卡,而且是很低端的解压卡,最多也就100多块钱一个,比起海康等视频解压卡来时候,很便宜了。因为卡拉OK系统也只需要如下基本功能
1. 在电视上显示字幕(提示信息,当前播放,下一首歌曲等)
2. 在电视上显示图片(你想显示的图片)
3. 在电视上滚动字幕(广告或其他提示信息)
4. 在电视上实现视频叠加,比如喝彩,倒彩,鼓掌等。
1. 在电视上显示字幕(提示信息,当前播放,下一首歌曲等)
2. 在电视上显示图片(你想显示的图片)
3. 在电视上滚动字幕(广告或其他提示信息)
4. 在电视上实现视频叠加,比如喝彩,倒彩,鼓掌等。
delphi 生成网页(html)报表
作者:轻舞肥羊 日期:2012-09-25
在整理硬盘的时候,突然发现了这个小东西,回想起来是好多年前给 永恩集团 (达芙妮) 做连锁POS系统的时候做的一个用DELPHI 生成HTML报表的测试(我已经5年没用DELPHI 了)。为什么要求这么变态?
我当初给达芙妮用 fastreport 做了一个报表,格式和数据展示完全满足要求,但最终被拒绝了,其原因是,他们原来有一套oracle erp 的打印就是用HTML 网页形式打印的。我很崩溃,我记得oracle 里面的 report builder 也很强的,为什么不用?其实到现在我仍然坚持用fastreport 做是对的,但当时,人家是客户,非得用html 的,你也没办法,人家就喜欢在浏览器里点右键打印,哎,这年头,什么样的需求都有。
当时这个团队没有去坐调研,我只好抽晚上空余时间,看了下资料,解决了这个问题,其实很简单,纯体力活。
delphi 里面有 webbrowser 控件,在这个上面直接输出html 代码就可以了。你可以先用html做好一个模板,然后往里面填写数据即可。
我当初给达芙妮用 fastreport 做了一个报表,格式和数据展示完全满足要求,但最终被拒绝了,其原因是,他们原来有一套oracle erp 的打印就是用HTML 网页形式打印的。我很崩溃,我记得oracle 里面的 report builder 也很强的,为什么不用?其实到现在我仍然坚持用fastreport 做是对的,但当时,人家是客户,非得用html 的,你也没办法,人家就喜欢在浏览器里点右键打印,哎,这年头,什么样的需求都有。
当时这个团队没有去坐调研,我只好抽晚上空余时间,看了下资料,解决了这个问题,其实很简单,纯体力活。
delphi 里面有 webbrowser 控件,在这个上面直接输出html 代码就可以了。你可以先用html做好一个模板,然后往里面填写数据即可。
Tags: delphi
delphi 监控 USB 端口(附源码下载)
作者:轻舞肥羊 日期:2012-09-15
用delphi 7 实现的一个简易 FTP 软件
作者:轻舞肥羊 日期:2012-08-24
在做网站的时候,少不了用FTP,我们通常会用 flashxp. FileZilla,cuteftp,8uftp 等等。难道FTP 就仅仅适用于做网站吗?不是的,FTP 是文件传输协议。涉及到文件传输的系统,都可以用FTP来实现,关键是看具体的项目是不是适合用FTP来解决。
像网站这种系统,就适合用FTP,但如果是对系统要求比较高,在传输文件的时候,还要做其它处理等。甚至可能直接用底层的SOCKET用流得方式传文件,更好的自己控制,扩展。当然FTP 也是基于TCP/IP SOCKET 实现的。
上面提到的是使用人家的FTP软件。但有的项目需要自己集成FTP客户端来实现文件的上传下载。集成的好处是:
1.有较好的用户体验。用户在一个系统中完成所有的事情,不需要切换。
像网站这种系统,就适合用FTP,但如果是对系统要求比较高,在传输文件的时候,还要做其它处理等。甚至可能直接用底层的SOCKET用流得方式传文件,更好的自己控制,扩展。当然FTP 也是基于TCP/IP SOCKET 实现的。
上面提到的是使用人家的FTP软件。但有的项目需要自己集成FTP客户端来实现文件的上传下载。集成的好处是:
1.有较好的用户体验。用户在一个系统中完成所有的事情,不需要切换。
一套des3算法包括javascript,php,delphi,版本。
作者:轻舞肥羊 日期:2012-03-20
Delphi中DBGrid 美化
作者:轻舞肥羊 日期:2010-04-27
在 Delphi 语言的数据库编程中,DBGrid 是显示数据的主要手段之一。但是 DBGrid 缺省的外观未免显得单调和缺乏创意。其实,我们完全可以在我们的程序中通过编程来达到美化DBGrid 外观的目的。通过编程,我们可以改变 DBGrid 的表头、网格、网格线的前景色和背景色,以及相关的字体的大小和风格。
以下的示例程序演示了对 DBGrid 各属性的设置,使 Delphi 显示的表格就像网页中的表格一样漂亮美观。
示例程序的运行:
在 Form1 上放置 DBGrid1、Query1、DataSource1 三个数据库组件,设置相关的属性,使 DBGrid1 能显示表中的数据。然后,在 DBGrid1 的 onDrawColumnCell 事件中键入以下代码,然后运行程序,就可以看到神奇的结果了。本代码在 Windows98、Delphi5.0 环境下调试通过。
procedure TMainForm.DBGrid1DrawColumnCell(Sender: TObject;
以下的示例程序演示了对 DBGrid 各属性的设置,使 Delphi 显示的表格就像网页中的表格一样漂亮美观。
示例程序的运行:
在 Form1 上放置 DBGrid1、Query1、DataSource1 三个数据库组件,设置相关的属性,使 DBGrid1 能显示表中的数据。然后,在 DBGrid1 的 onDrawColumnCell 事件中键入以下代码,然后运行程序,就可以看到神奇的结果了。本代码在 Windows98、Delphi5.0 环境下调试通过。
procedure TMainForm.DBGrid1DrawColumnCell(Sender: TObject;
activex和javascript交互(delphi版本)
作者:轻舞肥羊 日期:2009-11-22
利用Delphi的ActiveForm,可以很方便地开发出可以嵌入IE的ActiveX组件,无需知道太多幕后的COM知识。如何使得OCX可以很方便地调用Web上的JavaScript函数呢,研究了一个下午,使用ActvieForm的Events接口搞定。说穿了不值钱,只要一句代码就搞定,但是Google半天,琢磨了N久,看来还是基本功不扎实。
首先在ActiveForm的项目中找到ridl文件,打开它,选择ActiveForm的Events接口,点击右键,建立一个新的方法,方法名为我需要调用javascript的函数名。这里我要调用一个JS的上传图片脚本,所以将其命名为“OnUploadPic”。得到这个事件的ID,这里是209

首先在ActiveForm的项目中找到ridl文件,打开它,选择ActiveForm的Events接口,点击右键,建立一个新的方法,方法名为我需要调用javascript的函数名。这里我要调用一个JS的上传图片脚本,所以将其命名为“OnUploadPic”。得到这个事件的ID,这里是209
Tags: delphi activex javascript
activex调DLL在网页上调用.
作者:轻舞肥羊 日期:2009-11-22
在ACTIVEX中调用DELPHI 写的DLL, 网上有很多说要在DRP文件中第一个必须use shareMem 单元。这样就不会报错,其实不然,在调用时,不会报错,在关闭应用程序时,就报错了,所以没有根本解决问题。
其实是可以不用use shareMem 的,即使有函数返回值,如果返回值是string ,将它改成pchar 吧。这样通用性强很多的。
其实调用早就成功的,很简单的,但我一直忽略了 pchar 这个东西,导致调用到最后出异常,虽然结果是对的,但用户看到就不好了。
其实是可以不用use shareMem 的,即使有函数返回值,如果返回值是string ,将它改成pchar 吧。这样通用性强很多的。
其实调用早就成功的,很简单的,但我一直忽略了 pchar 这个东西,导致调用到最后出异常,虽然结果是对的,但用户看到就不好了。
DELPHI ftp 断点续传(indy)
作者:admin 日期:2009-02-17
Indy不仅支持下载断点续传,也支持上载断点续传,而且不需要对Indy做出改造。
在Blues的blog,他提到可以“通过IDFTP得到服务端已经上传的部分的SIZE,然后通过文件流在本地建立剩余部分的临时文件,然后以APPEND方式上传,传完后删除临时文件,达到上传断点续传的效果”。原文在此:DELPHI ftp 上传断点续传的实现(http://www.beginlove.net/blog/article.asp?id=172)。
我再仔细看了Indy的源码,发现不需要临时文件。可以对Blues的方法作出重大改进:
Put()方法第一个参数可以是TStream(实际上,如果是文件名的话Indy会建立Stream,然后再调用Stream的Put方法)。而且如果Append设为True的话,Indy不会去动Stream的Position:
在Blues的blog,他提到可以“通过IDFTP得到服务端已经上传的部分的SIZE,然后通过文件流在本地建立剩余部分的临时文件,然后以APPEND方式上传,传完后删除临时文件,达到上传断点续传的效果”。原文在此:DELPHI ftp 上传断点续传的实现(http://www.beginlove.net/blog/article.asp?id=172)。
我再仔细看了Indy的源码,发现不需要临时文件。可以对Blues的方法作出重大改进:
Put()方法第一个参数可以是TStream(实际上,如果是文件名的话Indy会建立Stream,然后再调用Stream的Put方法)。而且如果Append设为True的话,Indy不会去动Stream的Position:
收藏一个DELPHI线程池的东西.
作者:admin 日期:2009-01-20
pagecontrol动态创建tabsheet并选择关闭右键菜单等
作者:admin 日期:2008-12-05
DELPHI2009相关
作者:admin 日期:2008-11-18
以前的项目如果用到 VCLJPG 在 DELPHI2009中要用 VCLIMG.
Tags: delphi2009