PDA

View Full Version : سوال: ایجاد چک باکس کوچک بر روی تصویر هنگام لود



دلتنگ اسمان
پنج شنبه 03 مهر 1393, 20:15 عصر
سلام
با کد زیر عکسها رو در flowLayoutPanel میریزم. و زمانی که بر روی تصویری کلیک میکنم یه چک باکس کوچک بر روی اون تصویر نشون داده میشه. میخوام این چک باکس در زمان لود تصویر ایجاد بشه و همزمان با نشون دادن تصویر چک باکس هم نشون داده بشه. ممنون

private void button1_Click(object sender, EventArgs e)
{
OpenFileDialog d = new OpenFileDialog();
d.Multiselect = true;
d.Filter = "All Pictures (*.*)|*.*|PNG(*.png)|(*.png)|BMP(*.bmp)|(*.bmp)|GI F(*.gif)|(*.gif) |JPEG(*.jpeg;*.jpg;*.jpe;*.jfif)|(*.jpeg;*.jpg;*.j pe;*.jfif)";

if (d.ShowDialog() == DialogResult.OK)
{
int pict = 0;
foreach (string image in d.FileNames)
{
pict++;
PictureBox pb = new PictureBox();
pb.Image = new Bitmap(image);
pb.Name = d.FileNames[pict - 1];
pb.SizeMode = PictureBoxSizeMode.StretchImage;
pb.Height = pb.Image.Height / 10;
pb.Width = pb.Image.Width / 10;
pb.Click +=new EventHandler(pb_Click);
flowLayoutPanel1.Controls.Add(pb);
}
}
}

private void pb_Click(object sender, System.EventArgs e)
{
PictureBox pictre = (PictureBox)sender;
CheckBox ch = new CheckBox();
pictre.Controls.Remove(ch);
ch.Name = "ch";
ch.Visible = true;
if (ch.Checked == true) ch.Checked = false;
if (ch.Checked == false) ch.Checked = true;
ch.Size = new Size(13, 10);
pictre.Controls.Add(ch);
}

khokhan
پنج شنبه 03 مهر 1393, 20:43 عصر
همزمان با نشون دادن تصویر چک باکس هم نشون داده بشه.

.................................................. .............


private void button1_Click(object sender, EventArgs e)
{
OpenFileDialog d = new OpenFileDialog();
d.Multiselect = true;
d.Filter = "All Pictures (*.*)|*.*|PNG(*.png)|(*.png)|BMP(*.bmp)|(*.bmp)|GI F(*.gif)|(*.gif) |JPEG(*.jpeg;*.jpg;*.jpe;*.jfif)|(*.jpeg;*.jpg;*.j pe;*.jfif)";

if (d.ShowDialog() == DialogResult.OK)
{
int pict = 0;
foreach (string image in d.FileNames)
{
pict++;
PictureBox pb = new PictureBox();
CheckBox ch = new CheckBox();
ch.Size = new Size(13, 10);
ch.Name = "ch";
ch.Visible = true;
if (ch.Checked == true) ch.Checked = false;
if (ch.Checked == false) ch.Checked = true;
pb.Image = new Bitmap(image);
pb.Name = d.FileNames[pict - 1];
pb.SizeMode = PictureBoxSizeMode.StretchImage;
pb.Height = pb.Image.Height / 10;
pb.Width = pb.Image.Width / 10;
pb.Controls.Add(ch);
//pb.Click += new EventHandler(pb_Click);
flowLayoutPanel1.Controls.Add(pb);
}
}
}