سلام بچه ها
من می خواستم textbox هام رو طوری طراحی کنم که فقط حروف فارسی رو قبول کنن
و بعضی هاشون فقط عدد قبول کنن
اگه ممکنه تو هر دو مورد کمکم کنید
Printable View
سلام بچه ها
من می خواستم textbox هام رو طوری طراحی کنم که فقط حروف فارسی رو قبول کنن
و بعضی هاشون فقط عدد قبول کنن
اگه ممکنه تو هر دو مورد کمکم کنید
تو سی شارپ:
تو سی پی پی :کد:for (char i = 'A'; i <= 'Z'; i++)
{
if (textBox1.Text.Contains(i.ToString()) || textBox1.Text.Contains(i.ToString().ToLower()))
{
textBox1.Text = "";
}
}
تو رویداد text_changed بذار برا عدد هم i رو از نوع int از 0 تا 9 بذار قسمت بعد از || رو نمیخوادکد:for (wchar_t i = 'A'; i <= 'Z'; i++)
{
if (textBox1->Text->Contains(i.ToString()) || textBox1->Text->Contains(i.ToString()->ToLower()))
{
textBox1->Text = "";
}
}
خب کد شما خوبه ولی یه اشکال داره اونم اینه که وقتی اشتباه وارد کنه کل ورودی قبلیم پاک می شه که این اصلا خوب نیست،نقل قول:
من می خوام زبان کی برد فارسی و غیر قابل تغییر شه
کد شما با کمی تغییر واسه 0 تا 9 خوبه:20:
یه تغییر کوچولو بدی حله :
کد:textBox1->Text = textBox1->Text->Remove(textBox1->Text->Length-1,1);
سلامنقل قول:
برای اینکه کاربر فقط توی textbox عدد وارد کنه می تونی از دستور زیر توی رویداد keypress مربوط به textbox استفاده کنی .
خوبی این دستور اینه که کاربر حتی قادر نیست با استفاده از کلیدهای ترکیبی هم چیزی غیر از عدد وارد کنه .
از کد زیر برای اینکه توی textbox فقط کاراکتر (حروف)وارد کنی و عدد قبول نمی کنه .کد:private void textBox2_KeyPress(object sender, KeyPressEventArgs e)
{
if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar))
{
e.Handled = true;
}
}
موفق باشیکد:private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (!(!((e.KeyChar >= '0') && (e.KeyChar <= '9')) || (e.KeyChar == 8)))
{
e.Handled = true;
}
}
برای فارسی کردن کیبرد همنقل قول:
(این کد رو توی keydown بنویس)
کد:InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(New System.Globalization.CultureInfo("Fa"))
دوستان از همه ممنون خیلی عالی بود
فقط یه قسمت سوالم موند اونم این که چه کار کنیم کاربر نتونه زبان کی برد رو تغییر بده
خیلی ساده! در هر بار رویداد KeyDown یا KeyPress ، زبان را به فارسی تغییر بده.نقل قول:
در مورد سوال اصلی شما، باید عرض کنم که در هنگام نوشتن برنامه کتیبه ( که در انجمن نرم افزارهای فارسی موجود می باشد) ، من هم همچین مشکلی داشتم. که برای این کار یک کلاس نوشتم که از textbox ارث بری داشت. این تکست باکس، فقط و فقط حروف فارسی را قبول می کند و لاغیر.
اگه خواستی، عدم عوض کردن زبان ویندوز رو هم به اون اضافه کنم و تقدیم کنم. :20:
یه Timer بذار و کد رو توش قراربده اینترولش رو هم بذار 100 بعد کاربر جان جانش هم در بیاد هم نمیتواند زبان را تغییر دهد:31:
کد:InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(New System.Globalization.CultureInfo("Fa"))
اگر این کارو کنید ممنون می شم:11:نقل قول: