这么做 procedure TMainForm.MemoKeyPress(Sender: TObject; var Key: Char); Var I:Integer; begin if((Key=#13) then If Memo.Line.Count>0 Then For I:=Memo.Line.Count-1 DownTo 0 Do If Memo.Line.Strings[I]='' Then Memo.Line.Delete(I); end;
谢谢上面各位,再次谢谢anyiflyer(安逸飞)的提醒,换了一个控件,问题解决了! to Fairton(飞云):不能保证每行都不能为空。
pidi,你的要求都很少见!!你再做什么东西?
发送消息,VALUE是你想到的行.
to ch81:我在做一个mis系统,memo中用来显示条码,一个条码一行,我不想用户回车输入空行,这样不好看,并且给我对条码的处理带来困难。to yibin:能不能详细一点?
begin
if((Key=#13)
then key:=#0;
end;
不过要首先保证当前行是空行,让我想想!
procedure TMainForm.MemoKeyPress(Sender: TObject; var Key: Char);
Var
I:Integer;
begin
if((Key=#13) then
If Memo.Line.Count>0 Then
For I:=Memo.Line.Count-1 DownTo 0 Do
If Memo.Line.Strings[I]='' Then Memo.Line.Delete(I);
end;
to Fairton(飞云):不能保证每行都不能为空。
不过ListBox可能没有Memo装的东东多!呵呵!