基类窗体
TFrmDFMBase = class(TForm)
public
Function GetReBufData:Single;Virtual;
end;procedure ThreadFunction(lpParameter:TFrmDFMBase);Stdcall;
Var
ReceiveValue:Single;
begin
while TRUE do
begin
if GetRevDataFlag then //收到返回信息
begin
//为什么会出错误?执行下面一句时
ReceiveValue:=TFrmDFMBase(lpParameter).GetReBufData;//取数据 end; end;end;procedure TFrmDFMBase.FormCreate(Sender: TObject);
begin
//创建线程 侦听并处理数据
CreateThread(nil,0,@ThreadFunction,self,0,ThreadId);
end;
在子类窗体中重写GetReBufData
TFrmDFMBase = class(TForm)
public
Function GetReBufData:Single;Virtual;
end;procedure ThreadFunction(lpParameter:TFrmDFMBase);Stdcall;
Var
ReceiveValue:Single;
begin
while TRUE do
begin
if GetRevDataFlag then //收到返回信息
begin
//为什么会出错误?执行下面一句时
ReceiveValue:=TFrmDFMBase(lpParameter).GetReBufData;//取数据 end; end;end;procedure TFrmDFMBase.FormCreate(Sender: TObject);
begin
//创建线程 侦听并处理数据
CreateThread(nil,0,@ThreadFunction,self,0,ThreadId);
end;
在子类窗体中重写GetReBufData
解决方案 »
- 介绍个教语言的入门书
- 两点了,我睡不着! 是数学还是习题? 想听听大家的意见
- 在輸入日期型字段時,要出現像DateTimePicker控件那樣進行選擇,怎麼做?
- 请教各位Socket编程问题
- ~~~~~~~~~~~~~~~~~一个很急的问题问问前辈不然我睡觉都睡不着~~~~~~~~~~~~~~~~~~~~
- 如何使用消息打开comboBox的下拉列表
- 请问哪儿有SkinEngine可下载呀
- *******如果我的DBlistbox中加入了多个Field,如何改变其中的一个或几个的宽度.(默认为字段宽度)************
- 使用ADO求和sum,数据库oracle 百年一见的问题!
- 关于存储过程的问题——急
- 求delphi中chart控件的使用方法,实例或教程???急!!!急!!!急!!!急!!!急!!!急!!!
- !!又等了三天,终于又有30分了,还是那个小问题没解决!!
掉了一句声明
procedure TFrmDFMBase.FormCreate(Sender: TObject);
var
ThreadId:Dword;
begin
//创建线程 侦听并处理数据
CreateThread(nil,0,@ThreadFunction,self,0,ThreadId);
end;
这样就行啦...