طراحی برنامه ای شبیه LED Builder با سی شارپ
ضمن عرض سلام و خسته نباشید
همون طوری که توی عنوان هم گفتم می خوام یه برناه شبیه LED Builder بسازم
تا این لحظه دارم با استفاده از picturebox های متعدد نقاطی که قرار هست در برنامه در نقش LED باشند رو اضافه می کردم
که متوجه شدم نمی تونم با این روش سیم کشی ها رو مثل نمونه ای که عکس رو هم ضمیمه کردم اضافه کنم
و مشکل دیگه اینه که می خوام با استفاده از multithreading به فرض مثال 1000 تا picturebox به فرم اضافه کنم که هنگ می کنه و جواب نمی ده کسی می تونه راهنمایی کنه؟
PictureBox[,] pb = new PictureBox[1000, 1000];
public async Task addControl()
{
if (this.InvokeRequired)
{
//this.Invoke(new delAddControl(addControl));
}
else
{
await Task.Run(() =>
{
for (int i = 0; i < 40; i++)
{
for (int j = 0; j < 40; j++)
{
pb[i, j] = new PictureBox();
pb[i, j].Location = new Point(i * 15 + 10, j * 15 + 10);
pb[i, j].Width = 15;
pb[i, j].Height = 15;
pb[i, j].Visible = true;
pb[i, j].BorderStyle = BorderStyle.FixedSingle;
pb[i, j].BackColor = Color.Red;
pb[i, j].BringToFront();
this.Controls.Add(pb[i, j]);
}
}
});
}
//foreach (var VARIABLE in Form1.ControlCollection)
//{
//}
}
1 پاسخ
با سلام اگه شما نیاز ندارید که تصویری برای به اصطلاح LED هاتون اضافه کنید میتونید از ابزار پنل و مشخصه Background Color هر پنل اون ال ای دی رو روشن یا خاموش (Transparent) کنید
و این که به هر رنگی که خواستید هم میتونید هر LED رو روشن کنید
تمام