刚安装cport听说很好用,上手就碰到个小问题。
procedure TForm1.ComPortRxChar(Sender: TObject; Count: Integer);
var
Str: String;
begin
ComPort.ReadStr(str, count);
memo.Lines.Add(str);
end;memo显示的事1个字节一个事件,我总共收上10个字节,显示10列。
我想实现类似Comm控件,上来的数据是整体的。
procedure TPublicForm.Comm1ReceiveData(Sender: TObject; Buffer: Pointer;
BufferLength: Word);
begin
memo.lines.add(Pchar(buffer));end;
请问这个组件有没有其他的好方法,另外想找cport的一些帮助(中文的)
procedure TForm1.ComPortRxChar(Sender: TObject; Count: Integer);
var
Str: String;
begin
ComPort.ReadStr(str, count);
memo.Lines.Add(str);
end;memo显示的事1个字节一个事件,我总共收上10个字节,显示10列。
我想实现类似Comm控件,上来的数据是整体的。
procedure TPublicForm.Comm1ReceiveData(Sender: TObject; Buffer: Pointer;
BufferLength: Word);
begin
memo.lines.add(Pchar(buffer));end;
请问这个组件有没有其他的好方法,另外想找cport的一些帮助(中文的)
解决方案 »
- idhttp GET HTTPS 出错
- Win7下 ListView.OnAdvancedCustomDrawItem 事件里画图标,文字会变成黑块
- 高分求fcOutLookBar
- 网页浏览时如何把弹出窗体的内容加载到自己创建的浏览器的子窗体中
- 紧急求助!在Delphi里如何建立一张Oracle临时表,并把查询所得结果插入呢?
- 简单问题,用adoquery控件连接数据库它提示missing sql property?是怎麽回事
- 字符串问题!急!
- 大家见过如此问题么?
- 我會powerbuilder,能否介紹一本好的delphi入門的電子讀物。謝謝
- 怎么让一Form上创建的PageControl中的几个TabSheet都响应...
- Cport发送数据(初级问题)
- 为什么用流写入TXT数据不完整?
procedure TForm1.ComPortRxChar(Sender: TObject; Count: Integer);
var
Str: String;
begin
str:='';
ComPort.ReadStr(str, count);
comdata:=comdata+str;
memo.Lines.Add(Comdata);
end;
memo显示的是
0
01
010
0102
01021
010212
0102128
01021287
010212876
010212876D
010212876D
其实我最终要的就是最后的010212876D
读出数据之后上要进行其他操作,现在读数据只是1个字节1个字节的显示,我要执行一个其他操作岂不是要执行 lenght(str) 次吗,
当然你用判断长度也是可以的,我只想问下关于这个组件的其他功能有没有
var
Str,str1: String;
begin
ComP.Readstr(Str, Count);
str1:=StrToHexStr(Str);
Memo1.Text := Memo1.Text + str1+ #13#10;
end;这是我用过的代码。你不能用memo.Lines.Add();肯定会显示成为你说的那样。用Memo1.Text := Memo1.Text + ……;
我有份cport的中文说明。不知道怎么给你。
QQ:[email protected]
如果方便的话可以加QQ请教您几个问题吗?
procedure TForm1.ComPortRxChar(Sender: TObject; Count: Integer);
var
Str: String;
newcount:integer;
begin
str:='';
sleep(100);
newcount:=comport.当前字节数;
ComPort.ReadStr(str, newcount);
comdata:=comdata+str;
memo.Lines.Add(Comdata);
end;
不过有一事不明白,为什么去掉 sleep(100)就不会返回数据呢。
我的代码:
var
Str: String;
begin
str:='';
sleep(100);// 为什么不加这句就不能正确返回数据呢??????
ComPort.ReadStr(str,11);
comdata:=comdata+str;
memo.Lines.Add(comdata);
ComData:=''; //