-
Delphi开发的模型飞机测控平台 附源代码
Delphi开发的模型飞机测控平台 附源代码,里面主要涉及多线程操作、GPS、传感器、端口操作等一系列系统控制的技巧,还包括了许多操作函数,比如绘制飞行轨迹的函数、绘制坐标刻度的函数、用户界面读取发送数据指令的函数、还有线程的同步、线程互斥等。
由于有调试目的,如果要求发送字符格式的数据,就直接发送用户输入的字符串,其他情况下,都是发送打包好的数据矩阵。
调用其它函数实现发送串口数据的功能。注意函数GetData还没有实现线程的互斥,目的是把发送的数据保存在各个线程中。
在此提示: 由于传输系统总会有一定的吴码率,那么为了避免轨迹图出现问题,例如坐标范围过大需要除去粗大误差,考虑到模型飞机的飞行速度不会超过10m/s,考虑到数子传输系统的下传速度,设定如果位置变化超过20m就去掉。
- 2022-08-16 19:54:45下载
- 积分:1
-
Delphi 进程通讯的实现实例源码
这是一个Delphi利用自定义消息实现的进程内部通讯的例子,附上了完整的源码,运行的效果如图所示。
本程序作者:王毅 , 陈立亮 , 刘蓉,在Windows2000环境下用Delphi6.0调试通过。
本例子中主控程序采用FindWindow()函数找寻底层工作程序,从而实现通讯。底层工作程序在调试时请先生成可执行文件,然后关闭Delphi编辑器,运行可执行文件进行调试。如果不关闭Delphi编辑器,底层工作程序窗口在处于最小化时将无法正常工作,因为FindWindow()返回的是Delphi编辑器中该窗口的句柄。
- 2022-07-04 09:38:31下载
- 积分:1
-
Delphi 绘制艺术图案
Delphi 绘制标准的艺术图案,是比较有规则的几何图案,如示例截图所示的样式 。
self.ClientHeight:=200;
self.ClientWidth:=200;
r:=self.ClientWidth/2;
Sect:=20;
for i:=0 to Sect-1 do
begin
x[i]:=Trunc(r*Cos(i*2*PI/Sect)+self.ClientWidth/2);
y[i]:=Trunc(r*Sin(i*2*PI/Sect)+self.ClientHeight /2);
end;
- 2022-01-28 10:36:40下载
- 积分:1
-
Delphi TreeView来显示数据库信息
Delphi 使用TreeView来显示数据库信息,从数据库中读取数据,然后生成树形交叉节点的菜单,这种菜单通俗的叫做“树形菜单”,也是大家平时比较常见的菜单形式之一。
function TreeAddItem(Sender: TTreeView;ItemList: TStrings;BookMark: TBookMark;Resort: Boolean):TTreeNode;
var
ThisNode,Node: TTreeNode;
i: integer;
begin
Node := Nil;
for i := 0 to ItemList.Count-1 do
begin
ThisNode := TreeFindItem(Sender,Node,ItemList[i]);
if(ThisNodeNil) then Node := ThisNode
else begin
if I then begin
if I=0 then Node := Sender.items.Add(Node, Itemlist[i])
else Node := Sender.items.AddChild(Node, Itemlist[i]);
end
else begin
if I=0 then Node := Sender.items.AddObject(Node, Itemlist[i],Bookmark)
else Node := Sender.items.AddChildObject(Node, Itemlist[i],Bookmark);
end;
Node.stateIndex := Node.level + 1;
if Resort and (Node.parent nil) then Node.parent.alphasort;
end;
end;
Result := Node;
end;
- 2022-02-02 14:05:08下载
- 积分:1
-
一个相当不错的Delphi TreeView树控菜单
一个Delphi编写的相当不错的TreeView树控菜单,类似于Windows资源管理器中的树状菜单。
ParentFolder: IShellFolder; // 节点对应的文件夹的父文件夹的IShellFolder接口
Pidl, FullPidl: PItemIDList;// 节点对应的文件夹的相对和绝对项目标识符列表
HasExpanded: Boolean; // 节点是否展开
通过这个树形菜单制作实例,你可以学习到几个对项目标识符进行操作的函数,同时还有将二进制表示的项目标识符列表转换成有可识的项目名,获得每个文件夹在系统中的图标,获得系统的图标列表,生成文件夹管理树等。
- 2022-02-01 01:44:12下载
- 积分:1
-
Delphi中使用Word的一个例子
这个程序演示了使用Word作为自动化服务器,Delphi地自动化控制器是如何将一个查询结果插入到word文档中,在程序调用过程中返回应用参数.这个调用在英文和法文版的 Word中相同。如果这个过程不存在,存在一个不同的Word翻译版本。
对中文Word请在指定处插入。
- 2022-02-12 22:24:48下载
- 积分:1
-
又一款基于数据库的Delphi图书管理系统
又一款基于数据库的Delphi图书管理系统,源代码完整供参考学习Delphi的数据库编程。
高手可在此基础上开发完善出功能更强大的图书管理系统。
本系统目前具备的功能模块有:基本信息设置、图上登记、注销及管理、读者管理、借阅管理、综合信息查询、图书登记等。
- 2023-06-04 01:55:03下载
- 积分:1
-
Delphi 计算正负数绝对值
Delphi 返回指定数值的绝对值,计算正负数绝对值的例子,FloatToStr(Abs)函数用法代码,示例中计算了小数、整数两种数据类型的绝对值,单击对应的箭头,即可查看计算结果,对应的三种计算方法,请参见以下代码:
procedure TForm1.SpeedButton1Click(Sender: TObject);
begin
Edit2.Text := FloatToStr(Abs(-1.5));
end;
procedure TForm1.SpeedButton2Click(Sender: TObject);
begin
Edit4.Text := FloatToStr(Abs(-200));
end;
procedure TForm1.SpeedButton3Click(Sender: TObject);
begin
Edit6.Text := FloatToStr(Abs(-1.80));
end;
- 2022-06-13 12:40:35下载
- 积分:1
-
Delphi演示UniCode编码、简体繁体互转的方法实现
Delphi演示如何实现UniCode编码、汉字的繁简互转功能,同时将字符转换为unicode码值(十六进制):
常用编码:
codepage=936 简体中文GBK
codepage=950 繁体中文BIG5
codepage=437 美国/加拿大英语
codepage=932 日文
codepage=949 韩文
codepage=866 俄文
codepage=65001 unicode UTF-8
本例子中仅使用了936、950,如果你要进行其他语言的编码转换,仅需相应改变其中的编码值即可。
- 2023-06-10 00:30:04下载
- 积分:1
-
Delphi 变速齿轮# 让时间变快减慢
Delphi 变速齿轮# 让时间变快减慢,其实这个似乎是做不到的,只是模拟一下,代码及描述如下:
procedure Speed(count:word); stdcall;
const ExceptionUsed = $03; { 中断号也可以用其它的中断号}
var
IDT : array [0..5] of byte; { 保存中断描述符表}
lpOldGate : dword; {存放旧向量}
begin
asm
push ebx
sidt IDT {读入中断描述符表}
mov ebx, dword ptr [IDT+2]{IDT表基地址}
add ebx, 8*ExceptionUsed {计算中断在中断描述符表中的位置}
cli {关中断}
mov dx, word ptr [ebx+6] {取6,7字节 另外4字节用于门属性和选择子 }
shl edx, 16d {左移16位}
mov dx, word ptr [ebx] {取1,2字节 }
mov [lpOldGate], edx {保存旧的中断门}
mov eax, offset @@Ring0Code {修改向量,指向Ring0级代码段}
mov word ptr [ebx], ax {低16位,保存到1,2字}
shr eax, 16d
mov word ptr [ebx+6], ax {高16位,保存到6,7位}
int ExceptionUsed {发生中断}
mov ebx, dword ptr [IDT+2] {重新定位到中断描述符表中}
add ebx, 8*ExceptionUsed
mov edx, [lpOldGate]
mov word ptr [ebx], dx
- 2023-02-13 04:55:03下载
- 积分:1