delphi怎样在一个procedure中调用另一个procedure?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了delphi怎样在一个procedure中调用另一个procedure?相关的知识,希望对你有一定的参考价值。

例如: 已知过程

procedure TForm1.Comm1ReceiveData(Sender: TObject; Buffer: Pointer;
BufferLength: Word);
type
ss=array[1..500]of char ;
var
str1:^ss;
receivedata:array of double;
num:array[0..3]of integer;

begin

.....

end;

怎样在procedure TForm1.Button1Click(Sender: TObject);中调用这个过程?

procedure就是一个过程嘛,过程其实就是没有返回值的函数,调用方法跟函数调用一样啊。
比如。
procedure TFMain.Button1Click(Sender: TObject);
var buff:string;
begin
buff:='hello';
Comm1ReceiveData(Sender,@buff,Length(buff));
end;
参考技术A procedure TForm1.Comm1ReceiveData(Sender: TObject; Buffer: Pointer; BufferLength: Word);
这个是串口接收到数据事件,一般是在这里面写对收到的数据处理语句
参考技术B begin
Button1Click(button1);
...........
end;追问

这个我会,在button中调用TForm1.Comm1ReceiveData,怎么写?

delphi怎样在ADO里用ADOproc调用数据库sql server存储过程?,用ADODATASET或者ADOQUERY又怎样调用存储过程?

我知道怎样用ADOSTOREPROC传入参数,但报下面错,存储过程确实存在.不知道怎么回事了.这是个登陆的(数据库)存储过程:select * FORM BIAO WHERE @USER=USER AND @PASSWORD=密码.想问下不用ADOSTOREPROC而用其他组件调用这个存储过程的最好方法.哪个速度快?求给几个例子.

ADOConnection 创建一个数据库连接 ADOConnection 的loginprompt 属性设为false
ADOQuery的connecttion 指向 ADOConnection
用ADOQuery1 就可以里面的写法是:
exec 存储过程名 :user,:password
with ADOQuery1 do
begin
ADOQuery1.Close;
ADOQuery1.Parameters.ParamByName('user').Value:=Edit1.Text;
ADOQuery1.Parameters.ParamByName('password ').Value:=Edit2.Text;
open
end追问

exec 存储过程名 :user,:password你这个不用写在delphi里吗?直接这样能判断登陆成功?貌似不能吧!

追答

不用,直接写在ADOQuery1 控件的sql里面

追问

还是不行!

追答

提示什么错误?

参考技术A select * FORM BIAO WHERE @USER=USER AND @PASSWORD追问

你想表达什么?

以上是关于delphi怎样在一个procedure中调用另一个procedure?的主要内容,如果未能解决你的问题,请参考以下文章

delphi如何在一个function自定义函数中调用procedure中的私有变量?

delphi怎么调用procedure

delphi怎样在ADO里用ADOproc调用数据库sql server存储过程?,用ADODATASET或者ADOQUERY又怎样调用存储过程?

Delphi调用爷爷类的方法(自己构建一个procedure of Object)

[Delphi]过程Procedure动态调用

delphi怎样从一个界面跳转到另一界面