Witam, tworzę sobie dynamiczne guziczki. Gdy nałożę starszy na nowszy, to zasłania on tego nowszego. Jak mógłbym zrobić, żeby nowszy button przysłonił starszy? Próbowałem zamieniać kolejność w liście, ale to chyba nie o to chodziło.

- Rejestracja:ponad 11 lat
- Ostatnio:około 9 lat
- Lokalizacja:Trzebiatów
- Postów:6
0
Windows Forms
dodawanie nowego buttona:
private void New_Click(object sender, EventArgs e)
{
this.button4 = new System.Windows.Forms.Button();
button4.Cursor = System.Windows.Forms.Cursors.SizeAll;
button4.Location = new System.Drawing.Point(80, 86 + Y);
button4.Name = "button4";
button4.Size = new System.Drawing.Size(33, 23);
button4.TabIndex = mojeGuziki.Count + 1;
int text = mojeGuziki.Count + 1;
button4.Text = text.ToString();
button4.UseVisualStyleBackColor = true;
button4.MouseDown += new System.Windows.Forms.MouseEventHandler(this.button4_MouseDown);
button4.MouseMove += new System.Windows.Forms.MouseEventHandler(this.button4_MouseMove_1);
button4.FlatStyle = FlatStyle.Popup;
button4.BackColor = Color.Red;
this.Controls.Add(button4);
Y += 40;
mojeGuziki.Add(this.button4);
}
}
przesuwanie przycisków
private void button4_MouseDown(object sender, MouseEventArgs e)
{
for (int i = 0; i < mojeGuziki.Count; i++)
{
if ((Button)sender == mojeGuziki[i])
{
this.punkt.X = e.X;
this.punkt.Y = e.Y;
this.mojeGuziki[i].MouseMove += new System.Windows.Forms.MouseEventHandler(this.button4_MouseMove);
}
}
}
private void button4_MouseMove(object sender, MouseEventArgs e)
{
for (int i = 0; i < mojeGuziki.Count; i++)
{
if ((Button)sender == mojeGuziki[i])
{
int pozY, pozX;
pozY = this.mojeGuziki[i].Location.Y + e.Y - this.punkt.Y;
pozX = this.mojeGuziki[i].Location.X + e.X - this.punkt.X;
this.mojeGuziki[i].Location = new Point(pozX , pozY );
}
}
}
private void button4_MouseUp(object sender, MouseEventArgs e)
{
for (int i = 0; i < mojeGuziki.Count; i++)
{
if ((Button)sender == mojeGuziki[i])
{
int pozX, pozY;
pozX = this.mojeGuziki[i].Location.X +e.X - this.punkt.X;
pozY = this.mojeGuziki[i].Location.Y + e.Y - this.punkt.Y;
this.mojeGuziki[i].Location = new Point(pozX ,pozY);
this.mojeGuziki[i].MouseMove -= new System.Windows.Forms.MouseEventHandler(this.button1_MouseMove);
}
}
}
i globalnie
Button List<Button> mojeGuziki = new List<Button>();
private System.Drawing.Point punkt;
private int Y;
edytowany 2x, ostatnio: nekoashi25