با سلام خدمت دوستان عزيز من مي خوام عداد رو سه رقم سه رقم جدا كنم، از EditMask استفاده كردم نشد، يه كامپوننت هم پيدا كردم اونم درست جواب نمي ده چون بعد از پرش به كنترل بعدي سه رقم سه رقم مي كنه اما من مي خوام همون لحظه ورود عدد اين كار انجام بشه مثل ماشين حساب ويندوز.
سلام
کد زیر را در یک Textbox قرار دهید و مشاهده می کنید که به صورت سه رقم سه رقم اعداد را جدا می کند .
Private Sub Text1_Change()
Text1.Text = Format(Text1.Text, "##,0")
Text1.SelStart = Len(Text1.Text)
Text1.SetFocus
End Sub
کد زیر به راحتی این کارو برای شما انجام میده
توجه داشته باشین که کد فوق دررویداد Onchange قرار داره
کد:
procedure TForm1.Edit2Change(Sender: TObject);
var
s:string;
i:Integer;
begin
s:='';
if Edit2.Text>''then
begin
for i:=0 to Length(Edit2.Text)do
if Edit2.Text[i]in['0'..'9']then
s:=s+edit2.Text[i];
Edit2.Text:=FormatFloat('#,',StrToInt64(s));
Edit2.SelStart:=Length(Edit2.Text)+1;
end;
end;