PDA

View Full Version : سوال: نوشتن درون تکست باکس انتخاب شده



hamid_73
دوشنبه 04 فروردین 1393, 09:39 صبح
سلام دوستان من می خوام وقتی روی دکمه ای کلیک شد روی هر تکست باکسی که انتخاب شده بود چیزی بنویسه

NASA's Spaceman
دوشنبه 04 فروردین 1393, 09:45 صبح
یا از دستور
;"جمله"نام متغیر const string text و بعد اون و فراخوانی کن و یا نه مستقیم یه متغیر تعریف کن جمله ای که میخوای بریز تو اون متغیر و بعد توی دکمت TextBox1.Text رو مساوی با اون متغیرت قراربده
با سپاس

hamid_73
دوشنبه 04 فروردین 1393, 09:47 صبح
نه داداش مثلا من 10 تا تکست باکس دارم
وی یک باتن که اگه روش کلیک کنی مینویسه 1
می خوام رو هرکدوم از تکست باکسی که کلیک کردم بنویسه یک

NASA's Spaceman
دوشنبه 04 فروردین 1393, 09:50 صبح
خاصیت
Mouse Down هر کدوم ز اون TextBox ها رو یرابر با اون متغیرت قرار بده
اینجوری روی هر TextBox که کلیک کنی متنی که میخوای ظاهر میشه
با سپاس

hamid_73
دوشنبه 04 فروردین 1393, 09:53 صبح
mouse down ya click ?

NASA's Spaceman
دوشنبه 04 فروردین 1393, 09:57 صبح
MouseDown
چون تو روی خود TextBox کلیک میکنی ومیخوای کارت روی خود TextBox انجام بشه
Click برا وقتی هست که روی TextBox که کلیک کردی روی یه کامپوننت و یا یه کار دیگه انجام بده و فقط visible و چند تا چیز دیگه مثل این میتونه توی رویداد کلیک جواب بده
با سپاس

hamid_73
دوشنبه 04 فروردین 1393, 10:00 صبح
خب داداش این که هر وقت کلیک کنی می نویسه
من می خوام هر تکست باکسی که انتخاب شده توش بنویسه نه هر بار کلیک

NASA's Spaceman
دوشنبه 04 فروردین 1393, 10:03 صبح
منظورت از هر تکست باکسی که انتخاب شه چیه؟
با سپاس

hamid_73
دوشنبه 04 فروردین 1393, 10:05 صبح
یعنی فکوس رو هر کدوم که بود
بعد وقتی رو باتن هر چند بار کلیک کردم به همون اندازه بنویسه بنویسه یک

anotheruser
دوشنبه 04 فروردین 1393, 10:08 صبح
سلام ، اینجا سوال شما مطرح و پاسخ داده شده : http://stackoverflow.com/questions/2937459/get-the-currently-focused-textbox-in-c-sharp

hamid_73
دوشنبه 04 فروردین 1393, 10:10 صبح
ببین داداش مثلا من ده تا باتن دارم که از یک تا 10 رو چاپ می کنه و دو تا تکست باکس که می خوام با کلیک روی همین باتن ها شماره بنویسم درون تکست باکس ها اونجوری که شما می گید با هر بار کلیک رو باتن باید یه بارم رو تکست باکس کلیک کنم ولی من می خوام یک بار که تکست باکس انتخاب شد تا اونوقتی که کاربر تکست باکسه دیگه ای رو انتخاب نکرده فقط اونتو بنویسه

anotheruser
دوشنبه 04 فروردین 1393, 10:12 صبح
دوست من ، اون تاپیکی که آدرس دادم دقیقا همون چیزی هست که شما می خواین

NASA's Spaceman
دوشنبه 04 فروردین 1393, 10:13 صبح
یه شمارنده بزار توی همون MouseDown ولی فقط بشماره اینو از نوع Bool تعریف کن و توی تکست باکس بنویس ، توی button بنویس
(if(a==true
}
;" "+ "TextBox1.text="1
{
این " " برااین هست که که یه فاصله ایجاد کنه تا بشه تعداد یک ها رو شمرد

hamid_73
دوشنبه 04 فروردین 1393, 10:13 صبح
آخه اونی که شما دادید من سر در نیاوردم :لبخند:

hamid_73
دوشنبه 04 فروردین 1393, 10:16 صبح
یه شمارنده بزار توی همون MouseDown ولی فقط بشماره اینو از نوع Bool تعریف کن و توی تکست باکس بنویس ، توی button بنویس
(if(a==true
}
;" "+ "TextBox1.text="1
{
این " " برااین هست که که یه فاصله ایجاد کنه تا بشه تعداد یک ها رو شمرد

نه داداش شما منظوره منو نگرفتید هنوز،:لبخند: نمی دونم دیگه چه جوری توضیح بدم دوستمون فهمیده فقط اون تاپیکی که داد نمی دونم کی به چیه :لبخند:

hamid_73
دوشنبه 04 فروردین 1393, 10:19 صبح
ببین من می خوام یه چیزه درست کنم مثله صفحه کلید مجازی نه خودشا :لبخند:که وقتی رو تکست باکسی کلیک کردی رو فرمم اونتو بنویسه فقط همین :لبخند:

NASA's Spaceman
دوشنبه 04 فروردین 1393, 10:22 صبح
فقط بجای اینکه بگی عدد یک رو چاپ کن یه شمارنده بزار که یه دونه یه دونه اضافه کنه با هر بار کلیکت روی Button
و اگه به ده رسید متوقف بشه یا برگرده از اول
و این اخری که مثال زدم بار اول که روی تکست باکس کلیک کنی متغیر true میشه و با هر بار کلیک روی Button میتونی توی اون متغیر چیزی بنویسی که میشه محتویات تکست باکس انتخاب شده
اگه منظورتچیزی غیر از این هست ببخشید که متوجه نشدم
با سپاس

hamid_73
دوشنبه 04 فروردین 1393, 10:26 صبح
http://dl.esfandune.ir/images/0k0u8cv26s5cesw11x8n.png
داداش این فرمه منه می خوام وقتی کاربر رو تکست باکسه "شماره را وارد کنید" کلیک کرد بعد با دکمه های زیرش بتونه توش بنویسه و هر وقتم رو تکست باکسه "COM" کلیک کرد بتونه اونتو بنویسه

NASA's Spaceman
دوشنبه 04 فروردین 1393, 10:33 صبح
تکست باکس com برا چی هست؟
با سپاس

hamid_73
دوشنبه 04 فروردین 1393, 10:42 صبح
شماره پورته دستگاه برا تماس

NASA's Spaceman
دوشنبه 04 فروردین 1393, 10:48 صبح
دو تا متغیر از نوع Bool تعریف کن یکی برا تکست باکس بالایی و یکی برا پایینی توی رویداد کلیک یا MouseDown یکی از این دو تا هست چون یادم رفته تو کدوم تعریف میکردم
بعد برا هر کدوم از دکمه هات شرط میذاری اگر متغیر اول که توی تکست باکس بالای هست True شد مثلا عدد یک رو چاپ کن و این روش رو برا همش به کار میبری و همینجور برا تکست باکس دوم
با این صد در صد مشکلت حل میشه چون قبلا خودم چنین کاری کردم
با سپاس

hamid_73
دوشنبه 04 فروردین 1393, 10:54 صبح
دو تا متغیر از نوع Bool تعریف کن یکی برا تکست باکس بالایی و یکی برا پایینی توی رویداد کلیک یا MouseDown یکی از این دو تا هست چون یادم رفته تو کدوم تعریف میکردم
بعد برا هر کدوم از دکمه هات شرط میذاری اگر متغیر اول که توی تکست باکس بالای هست True شد مثلا عدد یک رو چاپ کن و این روش رو برا همش به کار میبری و همینجور برا تکست باکس دوم
با این صد در صد مشکلت حل میشه چون قبلا خودم چنین کاری کردم
با سپاس
میشه یه نمونه مثال بزنین:قلب: متوجه نشدم

NASA's Spaceman
دوشنبه 04 فروردین 1393, 11:02 صبح
این یه نمونه کاملا ساده هست
bool a;
bool b;
private void textBox1_Click(object sender, EventArgs e)
{
a = true;
}
private void textBox2_Click(object sender, EventArgs e)
{

b = true;
}
private void button1_Click(object sender, EventArgs e)
{
if (a == true)
{
textBox1.Text = "1";
}
if (b == true)
{
textBox2.Text = "2";
}
}
با سپاس

anotheruser
دوشنبه 04 فروردین 1393, 11:54 صبح
سلام ببین خیلی ساده ، تو کلاسی که همنام با فرمتم هست این کد رو اضافه کن :
void textBox_Enter(object sender, EventArgs e)
{
focusedTextbox = (TextBox)sender;
}
private TextBox focusedTextbox = null;


بعد تو همون کلاس داخل متد سازنده (که باز همنام با فرمته مثلا Form1 ) بعد از ;()InitializeComponent کد زیر رو اضافه بکن :

foreach (TextBox tb in this.Controls.OfType<TextBox>())
{
tb.Enter += textBox_Enter;

}



بعد تو رویداد های کلیک دگمه هات :

if (focusedTextbox != null)
{
// put something in textbox
focusedTextbox.Text += (sender as Button).Text;
}


واسلام شد تمام!

anotheruser
دوشنبه 04 فروردین 1393, 11:57 صبح
راستی این برنامه رو داری برا استفاده GSM می نویسی یا تلفن همراه؟

anotheruser
دوشنبه 04 فروردین 1393, 11:58 صبح
اگه نتونستی کدت رو بده من واست اصلاح می کنم این تاپیک زیادی طولانی شده

hamid_73
دوشنبه 04 فروردین 1393, 13:28 عصر
سلام دوستان عیدتون مبارک امیدوارم که ساله خوبی داشته باشین.
اموزش:نوشتن با استفاده از دکمه باتن بر روی تکست باکسی که انتخاب شده است.
این آموزشی که گذاشتم با کمک دوست خوبم spaceman-form-nasa یاد گرفتم امیدوارم که به درد شما هم بخوره
اول باید به تعداد که تکست باکس بر روی فرم داریم متغییر از نوع bool به صورت عمومی در کلاس فرم تعریف کنیم
مثلا متغییر برای دو عدد تکست باکس تعریف می کنیم

bool a;
bool b;

بعد متغییر هایی که تعریف کرده ایم در رویداد click تکست باکس ها برابر با true قرار می دهیم. و دیگر متغییر ها را برابر با false تا در هنگام کلیک بر روی تکست باکس دیگر در تکست باکس قبلی چیزی نوشته نشود.
تکست باکس اولی:

a = true;
b = false;

تکست باکس دومی:

a = false;
b = true;

بعد درون button شرط می گزاریم که اگر یکی از متغییر های تعریف شده برابر با true بود درون تکست باکسی که متغییر درون رویداد click آن true هست مقداری را چاپ کند.



if (a == true)
{
txt_Number.Text = txt_Number.Text + "1";
}
if (b == true)
{
txt_COM.Text = txt_COM.Text + "1";
}

به همین سادگی :لبخند: الان می تونین با کلیک بر روی تکست باکس مورد نظر درون آن چیزی بنویسید
میدونم این آموزش خیلی مبتدی بود ولی امید وارم که به دردتون بخوره:قلب:

mhsmity
دوشنبه 04 فروردین 1393, 13:47 عصر
جدالا خالق چه کارا

عجب اون