FlowLayout中有许多按钮。当我点击按钮时,我想要改变正常的颜色。当我第一次单击时,按钮的颜色会发生变化。这里没有问题,但是当我第二次单击另一个按钮时,我之前单击的按钮没有恢复。我该怎么做?
int j =1;
foreach (...)
{
BunifuFlatButton newButton = new BunifuFlatButton();
{
newButton.Name = string.Format("Button{0}", j);
flowLayoutPanel1.Controls.Add(newButton);
newButton.Click += NewButtonOnClick;
j++;
}
}
private void NewButtonOnClick(object sender, EventArgs eventArgs)
{
BunifuFlatButton btn = (BunifuFlatButton)sender;
btn.Normalcolor = Color.FromArgb(37, 66, 80);
}发布于 2018-07-07 21:50:48
List<BunifuFlatButton> btnss = new List<BunifuFlatButton>();
private bool pressed = false;
private void NewButtonOnClick(object sender, EventArgs eventArgs)
{
BunifuFlatButton btn = (BunifuFlatButton)sender;
if (pressed)
{
btnss[0].Normalcolor = Color.FromArgb(37, 37, 37);
btn.Normalcolor = Color.FromArgb(37, 66, 80);
pressed = false;
btnss.Clear();
btnss.Add(btn);
}
else
{
if (btnss.Count != 0)
{
btnss[0].Normalcolor = Color.FromArgb(80, 80, 80);
}
btn.Normalcolor = Color.FromArgb(37, 66, 80);
btnss.Clear();
btnss.Add(btn);
pressed = true;
}}
https://stackoverflow.com/questions/51170693
复制相似问题