【发布时间】:2016-04-24 23:14:12
【问题描述】:
好的,所以这有点难以解释。
我正在制作一个基本的时间表表格。
我有 7 个按钮,分别命名为 btnMonTime、btnTueTime 等等,直到 btnSunTime 基于星期几。现在,每次单击按钮时,都会打开一个弹出窗口(winform),让用户通过dateTimePicker 控件选择某个时间。时间被解析为字符串并存储。弹出窗口上有一个接受按钮,当按下该按钮时,弹出窗口将关闭,并在特定日期旁边显示一个标签,说明时间已发布。
现在我知道如何在某一天执行此操作,但问题是我只有一个函数来创建此标签。但是我怎么知道点击了哪个时间按钮将其放置在正确的位置?
这是我能想到的代码:
private void btnAccept_Click(object sender, EventArgs e)
{
formPopup.time = timePicker.Value.ToShortTimeString();
//label1.Text = formPopup.time;
Label newLabel = new Label();
newLabel.Text = formPopup.time;
newLabel.Location = new System.Drawing.Point(205 + (100 * formTimeTable.CMonTime), 78);
formTimeTable.CMonTime++;
newLabel.Size = new System.Drawing.Size(100, 25);
newLabel.ForeColor = System.Drawing.Color.White;
thisParent.Controls.Add(newLabel);
this.Close();
}
这是 Accept 按钮单击处理程序,它将标签放置在正确的位置。而变量CMonTime 会跟踪特定时间按钮被按下的次数。
public static int CMonTime = 0;
private void btnMonTime_Click(object sender, EventArgs e)
{
formPopup f2 = new formPopup();
f2.thisParent = this;
f2.Show();
}
这就是星期一的时间按钮单击处理程序中发生的事情。
但我如何知道实际点击了哪一天的时间按钮以正确放置时间戳标签?
就像点击星期二的时间按钮一样,时间戳应该显示在星期二的时间按钮旁边。
我尽量说清楚。
提前致谢。
【问题讨论】:
标签: c# winforms label buttonclick