在我的c#windows窗体应用程序中,我有一个webBrowser和许多按钮和2个计时器和其他东西。我的表格让我进入我的大学网站,我整个星期都有多个课程,我的表格里面有一个时钟和我点击进入每个大学科目的按钮。我想知道我的表格是什么时间,并在一天中的那个时间执行相应的大学课程按钮。因此,例如,如果我在周一上午9点开始我的表单,它会记录我执行button1.PerformClick(); ,这会带我去OHS,并说如果我在星期二下午1点开始我的表格它会登录并点击button2.PerformClick();,这会将我带到另一个主题,依此类推。我的表单时间非常完美,我的登录工作非常完美,而且我的大学课程按钮可以正常工作,但现在我想自动化它。通过运行我自动登录的表单,但现在我怎么能让我的表单知道它的时间和日期,并按钮.performClick为我当天需要的按钮?我甚至不确定搜索什么或者如果它甚至可能请回答。
答案 0 :(得分:1)
嗯,有几种方法可以完成这项工作。由于您希望在应用程序启动时完成此操作,我会执行以下操作:
var now = DateTime.Now;
if (now.DayOfWeek == DayOfWeek.Monday)
{
if (now.Hour >= 9 && now.Hour <= 12)
{
LoadOhsPage();
}
else if (now.Hour > 12 && now.Hour <= 16)
{
LoadSomeOtherPage();
}
// ...and so on...
}
else if (now.DayOfWeek == DayOfWeek.Tuesday)
{
// ...similar to above...
}
// ...and so on...
您可以像Timer
建议的那样执行整个Psychemaster
自动化,但这会在您使用该程序时自动执行,我认为您不希望它尝试加载不同的你正在做某事的页面。或者,你可以实现Timer
,但也可以在页面的某个地方包含一个通知,告诉你是时候进入另一个类了,这样你就可以在完成当前任务时点击它。如果您决定采用这种方式,Timer
自动化不仅仅是简单的,您可以在MSDN找到更多信息(滚动到底部以获取示例)。
如果链接断开,这是一个快速示例代码:
var appTimer = new Timer();
appTimer.Interval = 3600000; // 1 hour, alternatively 1800000 would be 30 minutes.
appTimer.Tick += new EventHandler(CheckDateTime);
appTimer.Start();
private void CheckDateTime(Object obj, EventArgs args)
{
// Similarly to the first code, check the day of the week and the hour of the day;
// then perform an appropriate action, such as notifying the user that it's time
// to work on something else. This is a better approach than forcing them to change
// pages.
}