摘要:假设我们要将某个结点treenode移动到另一结点anitem上并做为anitem的child,按照文档说明,只需这样做
treenode.moveto(anitem,nraddchild);
但实际上,在delphi 4中,假如anode原来没有child的话,这条语句将不做任何事情。折衷的办法是
tempnode:=topictv.items.addchild(anitem,);
tre......
摘要:金凤霞
----delphi为用户提供了一个方便的绘图环境,即某些控件的canvas属性(画布)。用户可以把某些控件的表面作为一张画布,在上面绘制各种图形或显示图像,但在canvas的使用过程中少不了一个特殊对象,那就是矩形rect,灵活使用它会完成很多特殊的功能,为delphi编制的windows程序增加活力。
rect的特点
----rect既是一个特殊的数据结构,又是一个函数,它的作用就是......
用Delphi制作录音程序delphi是inprise(前borland)公司的优秀的可视化编程工具,它自带的mediaplayer控件是开发多媒体的利器.用它几分钟就可以做出一个象解霸一样可以播放多媒体文件的程序来.但可能很少人知道,用它也可以做一个录音程序.
运行delphi,在system页拖一个mediaplayer控件到窗体上,默认名为mediaplayer1.由于我们的程序是采用自己的按钮,所以将mediaplayer1的visible属性设置为false,其它属性保持默认值.再放两个按钮button1与button2.button1的属性name改为btstart,caption改为"开始录音", button2的属性name改为btstop,caption改为"停止录音",enabled属性改为false.然后切换窗口到代码窗口,开始书写代码. 【程序编程相关:
TWebBrowser的常见属性和方法
】 【推荐阅读:
Delphi与DirectShow&DS】
程序中,我们定义了一个wav文件的文件头格式,录音时先创建一个只有文件头的wav文件,然后将mediaplayer1录制下来的声音写进文件.其中createwav过程的几个参数意义如下:第一个channels代表声道,取1时代表单声,取2时代表立体声.resolution也只有两个值可以选择,取8时代表8位声音,取16时代表16位声音,rate则代表声音频率,如11025,22050, 44100.值越大则声音越清晰,当然,所录制的文件也越大.最后一个参数则代表对应的文件名称了.所以createwav可以有以下形式: 【扩展信息:
[函数]function CheckUr】
createwav(1,8,11025,c:\abc.wav);//在c盘根目录下创建一个8位单声道频率为11025的名为abc.wav的wav文件
createwav(2,16,44100,c:\abc.wav);//在c盘根目录下创建一个16位立体声道频率为44100的名为abc.wav的wav文件
外国一个很出名的用delphi编写的远程控制软件netbus有一个声音监听功能,就是用本文的方法写的.它先把对方的声音录制下来,然后传送回来,达到监听对方的目的.当然,前提是对方必须安装有话筒,否则监听到的是对方播放的声音(如打开解霸或者readplay播放,运行本程序,就可以把播放的声音录制下来了).
实际上,现在的网络声音传播技术已经发展到一定阶段,语音对讲与ip电话等也开始成熟.不过它们采用的是vox格式或者acm格式,具体代码可以在我的主页http://lovejingtao.126.com下载.但如果对vox或者acm格式不熟悉的朋友,也可以用本文的方法来制作自己的“录音机”.至于如何调用系统自带的avifil32.dll来进行网络视频播放,在有机会时再跟大家交流吧....
下一页 摘要:请看下面的代码:listview的columns属性加4个列项,viewstyle属性设为vsreport,smallimage属性对应imagelist。imagelist加载图标。query1对应与parts.db表。
这段代码能实现升序排列,降序你稍作改动即可。如果是按字段数据类型排序则可用sql语句实现。另外这段代码可实现响应双击第一列下的图标。
unit unit1;
int......