Edit1 üzerinde son karakter virgül ise uyarı verdirebilirmiyiz?

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Shnsmn
Üye
Mesajlar: 13
Kayıt: 16 May 2020 11:53

Edit1 üzerinde son karakter virgül ise uyarı verdirebilirmiyiz?

Mesaj gönderen Shnsmn »

Merhaba
form üzerinde edit1 bulunmakta. ve birde butonum var.

örneğin edite

7,0,

şeklinde bir sayı girildiğinde, son karakterde şayet virgül varsa o virgülü silmesini istiyorum. yada uyarı verebilir.
Bunu nasıl yapabilirim?
Saygılarımla.
Kullanıcı avatarı
freeman35
Admin
Mesajlar: 2357
Kayıt: 12 Haz 2003 04:05
Konum: merkez camii yanı

Re: Edit1 üzerinde son karakter virgül ise uyarı verdirebilirmiyiz?

Mesaj gönderen freeman35 »

lenght, EndsWith, delete, "string i array gibi kullanma" konularını incele
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5

Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Shnsmn
Üye
Mesajlar: 13
Kayıt: 16 May 2020 11:53

Re: Edit1 üzerinde son karakter virgül ise uyarı verdirebilirmiyiz?

Mesaj gönderen Shnsmn »

şu şekilde bir çözüm buldum.Teşekkürler

a := AnsiRightStr(edit1.text, 1);
if a=',' then
begin

s:=edit1.Text;
s:=copy(s,1,length(s)-1);
edit1.text:=s;
palandoken
Üye
Mesajlar: 151
Kayıt: 16 Eki 2006 10:43
Konum: ERZURUM

Re: Edit1 üzerinde son karakter virgül ise uyarı verdirebilirmiyiz?

Mesaj gönderen palandoken »

Kod: Tümünü seç

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
   if not (Key in ['0'..'9', ',', #8, #9]) then //belirtilen değerlerden başka değer girilmesin
      Key := #0;
   if (AnsiPos(',',TEdit(sender).Text)<>0) and (key=',') then   //birden fazla virgül girilmesin
      key:=#0;

end;

akıllanma , aklını başına toplama , toparlanma , kendisini derleme bu dünyaya ait bir vazife.
ahirette nasıl olsa aklın başına gelecek.
Kullanıcı avatarı
freeman35
Admin
Mesajlar: 2357
Kayıt: 12 Haz 2003 04:05
Konum: merkez camii yanı

Re: Edit1 üzerinde son karakter virgül ise uyarı verdirebilirmiyiz?

Mesaj gönderen freeman35 »

Shnsmn yazdı: 27 Mar 2021 04:02 şu şekilde bir çözüm buldum.Teşekkürler

a := AnsiRightStr(edit1.text, 1);
if a=',' then
begin

s:=edit1.Text;
s:=copy(s,1,length(s)-1);
edit1.text:=s;

Kod: Tümünü seç

var S: string;
begin
   S:= TrimRight(Edit1.Text);
   if S.EndsWith(',')then Edit1.Text:= S.Remove(S.Length -1, 1)
   else Edit1.Text:= S;
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5

Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Cevapla