PDA

View Full Version : سوال: تشخیص checked و unchecked شدن کنترل toggle button در #C



asrehoshmand
شنبه 22 خرداد 1395, 22:59 عصر
سلام به همه اساتید گرامی
دوستان من در پروژه سی شارپم از کنترل toggle button استفاده کرده ام بعد یه لیبل هم در پروژه م درج کردم و در قسمت کد لیبل نوشتم زمانی که toggle button رو حالت روشن قرار گرفت متن لیبل رو حالت روشن و زمانی که کنترل تاگل رو حالت خاموش قرار گرفت متن لیبل خاموش قرار گیرد ولی دوستان این عمل تا وقتی رو لیبل کلیک نکنم متن لیبل تغییر نمیکنه و من میخام همین که کاربر کنترل تاگل را رو حالت روشن یا خاموش قرار داد متن لیبل همزمان با تغییر حالت کنترل تاگل تغییر پیدا کند.ممنون میشم منو راهنمایی کنید

ronix3
یک شنبه 23 خرداد 1395, 00:27 صبح
سلام
private Thread t;
private delegate void d();
private void Form1_Load(object sender, EventArgs e)
{
t = new Thread(()=>Check());
t.Start();
}

private void Check()
{
while (true)
{
thread();

}
}

private void thread()
{
if (label1.InvokeRequired)
{
d b = new d(thread);
this.Invoke(b);
}
else
if (button5.Enabled)
{

label1.Text = "Enabled";
}
else
{ label1.Text = "Disabled"; }
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
t.Abort();
}
سوالی بود در خدمتم موفق باشید

asrehoshmand
یک شنبه 23 خرداد 1395, 00:33 صبح
ممنون دوست گرامی
این کدها رو تو لیبل باید نوشت یا کنترل تاگل.ممنون میشم مجددا راهنمایی کنید

ronix3
یک شنبه 23 خرداد 1395, 00:54 صبح
کد ها مشخصه ۲تا رویداد دارید که باید بسازید کد های form load رو تو form load کد های form close هم جای خودش بقییه رو هم تو فرم بنویسید اگه نمی دونید این رویداد ها چیه یکم سرچ کنید متوجه می شید در ضمن به جای button5 اسم دکمه و به جای label1 اسم لیبل رو باید بذارید بیشتر از این نمی تونم راهنمایی کنم
موفق باشید

Mahmoud.Afrad
یک شنبه 23 خرداد 1395, 04:14 صبح
جناب ronix3 (http://barnamenevis.org/member.php?342229-ronix3) برای اینگونه اعمال باید از رویداد مناسب استفاده کرد و استفاده از حلقه بینهایت اشتباه محض هست.

asrehoshmand (http://barnamenevis.org/member.php?381624-asrehoshmand) کنترلی که استفاده میکنید حتما رویدادی دارد که با تغییر وضعیت دکمه اجرا شود. از این رویداد استفاده کنید (بسته به کنترلی که استفاده میکنید نام رویداد متفاوت هست. )

barnamenevisjavan
یک شنبه 23 خرداد 1395, 11:01 صبح
سلام به همه اساتید گرامی
دوستان من در پروژه سی شارپم از کنترل toggle button استفاده کرده ام بعد یه لیبل هم در پروژه م درج کردم و در قسمت کد لیبل نوشتم زمانی که toggle button رو حالت روشن قرار گرفت متن لیبل رو حالت روشن و زمانی که کنترل تاگل رو حالت خاموش قرار گرفت متن لیبل خاموش قرار گیرد ولی دوستان این عمل تا وقتی رو لیبل کلیک نکنم متن لیبل تغییر نمیکنه و من میخام همین که کاربر کنترل تاگل را رو حالت روشن یا خاموش قرار داد متن لیبل همزمان با تغییر حالت کنترل تاگل تغییر پیدا کند.ممنون میشم منو راهنمایی کنید
توی رویداد های Toggle دنبال toggle_check و امثال اون باشید بعدش داخل اون کافیه کد زیر رو بنویسید:
if(toogle.checke){
lable.visible=true;
}

ronix3
یک شنبه 23 خرداد 1395, 18:47 عصر
جناب ronix3 (http://barnamenevis.org/member.php?342229-ronix3) برای اینگونه اعمال باید از رویداد مناسب استفاده کرد و استفاده از حلقه بینهایت اشتباه محض هست.

asrehoshmand (http://barnamenevis.org/member.php?381624-asrehoshmand) کنترلی که استفاده میکنید حتما رویدادی دارد که با تغییر وضعیت دکمه اجرا شود. از این رویداد استفاده کنید (بسته به کنترلی که استفاده میکنید نام رویداد متفاوت هست. )

نمی دونستم کنترلی که استفاده می کنن رویداد enabled changed داره یا نه خواستم کارشون راه بیوفته از theard استفاده کردم فک نمی کردم مشکلی داشته باشه می شه توضیح بدید