private void btnShutDownAndStopJob_Click(object sender, EventArgs e) { if (SchedulerManager.GetScheduler().IsStarted) { SchedulerManager.GetScheduler().Shutdown(true); } }
private void btnStart_Click(object sender, EventArgs e) { if (!SchedulerManager.GetScheduler().IsStarted) { SchedulerManager.GetScheduler().Start(); } }
public void UpdateUI() { if (SchedulerManager.GetScheduler() != null) { this.lblScheduleName.Text = SchedulerManager.GetScheduler().SchedulerName; this.lblScheduleID.Text = SchedulerManager.GetScheduler().SchedulerInstanceId; if (!SchedulerManager.GetScheduler().IsStarted) { this.lblScheduleState.Text = "未启动"; this.btnShutDown.Enabled = false; this.btnShutDownAndStopJob.Enabled = false; this.btnStart.Enabled = true; } else if (!SchedulerManager.GetScheduler().IsShutdown) { this.lblScheduleState.Text = "执行中"; this.btnShutDown.Enabled = true; this.btnShutDownAndStopJob.Enabled = true; this.btnStart.Enabled = false; } else { this.lblScheduleState.Text = "已关闭"; this.btnShutDown.Enabled = false; this.btnShutDownAndStopJob.Enabled = false; this.btnStart.Enabled = true; } } }
private void AddJob() { if (jobDetail == null) { MessageBox.Show("任务不能为空!", "出错", MessageBoxButtons.OK); return; } if (trigger == null) { MessageBox.Show("触发器不能为空!", "出错", MessageBoxButtons.OK); return; } SchedulerManager.GetScheduler().ScheduleJob(jobDetail, trigger); }
public void UpdateUI() { if (SchedulerManager.GetScheduler() != null) { lbJobRunning.Items.Clear(); foreach (string group in SchedulerManager.GetScheduler().JobGroupNames) { //lbJobRunning.Items.Add(group); foreach (string job in SchedulerManager.GetScheduler().GetJobNames(group)) { lbJobRunning.Items.Add("触发器组名:" + group + "\t触发器名:" + SchedulerManager.GetScheduler().GetJobDetail(job, group)); } } } }
public mainForm() { InitializeComponent(); //绑定日志记录源 QuartzLogger.LogWindow = winLog; QuartzLogger.ErrorWindow = winError; // m_deserializeDockContent = new DeserializeDockContent(GetContentFromPersistString); sf = SchedulerManager.GetSchedulerFactory(); //获取默认调度器 scheduler = SchedulerManager.GetScheduler(); //打开 scheduler.Start(); //两秒钟更新一次 updateTimer.Interval = 2000; updateTimer.Tick += new EventHandler(updateTimer_Tick); updateTimer.Start(); }
private void mainForm_FormClosing(object sender, FormClosingEventArgs e) { string configFile = Path.Combine(Path.GetDirectoryName(Application.ExecutablePath), "DockPanel.config"); if (m_bSaveLayout) { dockPanel.SaveAsXml(configFile); } else if (File.Exists(configFile)) { File.Delete(configFile); } //关闭 updateTimer.Stop(); SchedulerManager.GetScheduler().Shutdown(false); try { this.Close(); } catch { } }
private void btnNext_Click(object sender, EventArgs e) { switch (guideStep) { case GuideStep.ChooseJob: if (JobConfigPanel != null) { if (!pnlJob.Controls.Contains(JobConfigPanel)) { pnlJob.Controls.Add(JobConfigPanel); JobConfigPanel.Dock = DockStyle.Fill; } pnlJob.Controls.SetChildIndex(JobConfigPanel, 0); guideStep = GuideStep.ConfigJob; btnPre.Enabled = true; btnNext.Enabled = true; } break; case GuideStep.ConfigJob: if (defaultTriggerPanel != null) { jobDetail = (JobConfigPanel as IJobConfigPanel).GetJobDetail(); if (jobDetail == null) { return; } foreach (string jobNames in SchedulerManager.GetScheduler().GetJobNames(jobDetail.Group)) { if (jobNames == jobDetail.Name) { MessageBox.Show("任务组名、任务名不能同时重复,请修改"); return; } } if (!pnlJob.Controls.Contains(defaultTriggerPanel)) { pnlJob.Controls.Add(defaultTriggerPanel); defaultTriggerPanel.Dock = DockStyle.Fill; } pnlJob.Controls.SetChildIndex(defaultTriggerPanel, 0); guideStep = GuideStep.ConfigTrigger; btnPre.Enabled = true; btnNext.Enabled = true; } break; case GuideStep.ConfigTrigger: if (!pnlJob.Controls.Contains(oKPanel)) { pnlJob.Controls.Add(oKPanel); oKPanel.Dock = DockStyle.Fill; } pnlJob.Controls.SetChildIndex(oKPanel, 0); defaultTriggerPanel.JobName = jobDetail.Name; defaultTriggerPanel.JobGroupName = jobDetail.Group; trigger = defaultTriggerPanel.GetTrigger(); guideStep = GuideStep.OK; btnPre.Enabled = true; btnNext.Enabled = true; btnNext.Text = "完成"; break; case GuideStep.OK: AddJob(); btnPre.Enabled = true; btnNext.Enabled = false; btnAddNew.Visible = true; break; } }