怎样实现单击一个按钮,删除edit框中光标前的一个字符 怎样实现单击一个按钮,删除edit框中光标前的一个字符,功能和BackSpace差不多,但必须用程序实现。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Use StrUtils;procedure TForm1.Button1Click(Sender: TObject);begin if length(edit1.Text)>0 then edit1.Text:= leftstr(edit1.Text,length(edit1.Text)-1);end; Length 函数 返回字符串的动态长度Copy 函数 返回一字符串的子串 先求取原来的长度 在按钮按下时copy 原来的长度-1应该就可以了吧但是要注意汉字的问题 procedure TForm1.Button1Click(Sender: TObject);begin Edit1.Perform(WM_Char, vk_back, 0);end; 提倡使用 esu 的方法。 z:=edit1.SelStart;z2:=length(trim(edit1.text));z1:=copy(trim(edit1.text),1,z-1)+copy(trim(edit1.text),z+1,z2-1); var j,str,NewStr:string; strInt,NewStrInt:integer;begin str:=edit1.Text ; strInt:=length(str); j:=0; j:=j+1; NewStrInt:=strInt-j; NewStr:=copy(str,1,NewStrInt); edit1.Text:=NewStr; edit1.SetFocus ;end; Edit.SelStart能够获得当前光标的位置。 s:=edit1.text;delete(s,edit1.SelStart,1);edit1.Text:=s; procedure TForm1.Button1Click(Sender: TObject);begin Edit1.Perform(WM_Char, vk_back, 0);end;是好的方法 procedure TForm1.Button1Click(Sender: TObject);var str: string;begin str:=Copy(Edit1.Text,Edit1.SelStart+1,Edit1.GetTextLen-Edit1.SelStart); Edit1.Text:=Copy(Edit1.Text,0,Edit1.SelStart-1); Edit1.Text:=Edit1.Text+str;end; 批量修改文件版本號 怎样判断是在什么位置插入的? DBGrid使用中的一个小问题 按照EXCEL字段创建表 查询显示问题 在线急等!!!! 高分求教:DELPHI 文件流问题. ArrayOfByte 问题---->急 大家有遇到这样的问题吗?贴子结不了啦! 关于数据集排序 DELPHI6的ADOQuery控件,如果在filter(过滤)中同时使用了and和or就会报错.为什么? 把timer事件顺序激活两次(执行时间不能重叠)的如何解决??? 客户段提交了,但是数据库没变一般是什么原因啊? 怎么样给自己写的PAS文件加密?
begin
if length(edit1.Text)>0 then
edit1.Text:= leftstr(edit1.Text,length(edit1.Text)-1);
end;
Copy 函数 返回一字符串的子串
先求取原来的长度 在按钮按下时
copy 原来的长度-1应该就可以了吧但是要注意汉字的问题
begin
Edit1.Perform(WM_Char, vk_back, 0);
end;
z2:=length(trim(edit1.text));
z1:=copy(trim(edit1.text),1,z-1)+copy(trim(edit1.text),z+1,z2-1);
j,str,NewStr:string;
strInt,NewStrInt:integer;begin str:=edit1.Text ;
strInt:=length(str);
j:=0;
j:=j+1;
NewStrInt:=strInt-j;
NewStr:=copy(str,1,NewStrInt);
edit1.Text:=NewStr;
edit1.SetFocus ;
end;
begin
Edit1.Perform(WM_Char, vk_back, 0);
end;
是好的方法
var
str: string;
begin
str:=Copy(Edit1.Text,Edit1.SelStart+1,Edit1.GetTextLen-Edit1.SelStart);
Edit1.Text:=Copy(Edit1.Text,0,Edit1.SelStart-1);
Edit1.Text:=Edit1.Text+str;
end;