Ik heb een aantal buttons die elk een nieuwe picturebox aanmaken en deze op mijn form plaatsen. Elke picturebox roept een image op van de hd.
Dit doe ik op volgende manier:
Deze code werkt.
Nu wil ik het de geplaatste pictureboxen ook kunnen verplaatsen.
Ik heb om te experimenteren eerst gewoon een picturebox geplaatst op mijn form, dus niet een button die deze aanmaakt.
Met deze code kan ik de geplaatste picturebox verplaatsen:
En dit werkt ook, welliswaar met een klein foutje: als ik op de picturebox klik dan kan ik verslepen, maar de picture staat een grote afstand van de muiscursur af.
Wat wil ik nu doen: ik wil nu de picboxen die de button aanmaakt kunnen verplaatsen, maar elke picturebox die wordt aangemaakt krijgt een andere naam. Hoe moet ik dit programmeren? Ik veronderstel dat er een sender bij moet?
Dit doe ik op volgende manier:
C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| private int teller1 = 0; private Point positie1 = new Point(0,0) ; private void button4_Click_1(object sender, EventArgs e) { teller1 += 1; PictureBox x = new PictureBox(); Controls.Add(x); x.Name = "pic" + teller1; x.Image = Image.FromFile(@"C:\pic\trafo.jpg"); x.Location = new Point(this.positie1.X + 300, this.positie1.Y); positie1.Y += x.Height + 5; x.ClientSize = new Size(80,80); x.AllowDrop = true; x.AllowDrop = true; } |
Deze code werkt.
Nu wil ik het de geplaatste pictureboxen ook kunnen verplaatsen.
Ik heb om te experimenteren eerst gewoon een picturebox geplaatst op mijn form, dus niet een button die deze aanmaakt.
Met deze code kan ik de geplaatste picturebox verplaatsen:
C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
| private bool mouse_is_down = false; private void pictureBox2_MouseUp(object sender, MouseEventArgs e) { mouse_is_down = false; } private void pictureBox2_MouseDown(object sender, MouseEventArgs e) { mouse_is_down = true; } private void pictureBox2_MouseMove(object sender, MouseEventArgs e) { if (mouse_is_down) { Point current_pos = Control.MousePosition; pictureBox2.Location = current_pos; } } |
En dit werkt ook, welliswaar met een klein foutje: als ik op de picturebox klik dan kan ik verslepen, maar de picture staat een grote afstand van de muiscursur af.
Wat wil ik nu doen: ik wil nu de picboxen die de button aanmaakt kunnen verplaatsen, maar elke picturebox die wordt aangemaakt krijgt een andere naam. Hoe moet ik dit programmeren? Ik veronderstel dat er een sender bij moet?