/// <summary> /// Clicking the Start button /// </summary> private void buttonStart_Click(object sender, EventArgs e) { string musicProgramName = textBoxMusicProgram.Text.Trim(); string musicProgramWindowTitle = GetWindowTitleFromProcessByName(musicProgramName); int musicProgramId = GetIdFromProcessByName(musicProgramName); // show info about the music program DisplayMusicProgramInfo(musicProgramId, musicProgramName); // start the timer textBoxMusicProgram.Enabled = false; textBoxDelay.Enabled = false; TheTimer.Interval = ToInteger(textBoxDelay.Text.Trim()); TheTimer.Start(); }
private void LoadConfiguration() { // from https://www.c-sharpcorner.com/article/four-ways-to-read-configuration-setting-in-c-sharp/ var url = ConfigurationManager.AppSettings["url"]; var currency = ConfigurationManager.AppSettings["currency"]; var refreshRateInSeconds = ConfigurationManager.AppSettings["refreshRateInSeconds"]; // cb url cbRateURL = url + currency; // start the timer TheTimer.Interval = Convert.ToInt32(refreshRateInSeconds) * 1000; TheTimer.Start(); // show the rate for the first time before the timer kicks in UpdateRate(); }
private void ToolStripButton1_Click(object sender, EventArgs e) { try { ValidateInput(out int elements, out int interval); Count = elements; //preparing var source = gViewer.Entities.Select(s => s.DrawingObject).FirstOrDefault(s => s.UserData is Source <ProductBase>) as Node; var seed = gViewer.Entities.Select(s => s.DrawingObject).FirstOrDefault(s => s.UserData is Seed <ProductBase>) as Node; var productType = _factory.CreateProduct(Convert.ToInt32((source.UserData as Source <ProductBase>).Id)); //Updatin for new run ResetSS(elements, interval, source, seed, productType); UpdateNodes <ProductBase>(source, seed); _objectsSequence.Clear(); GetSequence(source, ref _objectsSequence); _objectsSequence.Reverse(); if (_objectsSequence is null || _objectsSequence.Count < 2) { throw new ArgumentNullException("Последовательность не может быть пуста"); } if (_objectsSequence.FirstOrDefault() is Source <ProductBase> == false) { throw new ArgumentNullException("Генератор продуктов должен начинать последовательность"); } if (_objectsSequence.LastOrDefault() is Seed <ProductBase> == false) { throw new ArgumentNullException("Утилизатор продуктов должен заканчивать последовательность"); } //adding connections for (int current = 0, next = 1; current < _objectsSequence.Count; current++, next++) { if (next < _objectsSequence.Count) { _objectsSequence[next].JoinPrevious(_objectsSequence[current]); } } _past = DateTime.Now; IsRunning = true; propertyGrid1.Enabled = false; btnStart.Enabled = false; btnStop.Enabled = true; toolStripButtonStatisctics.Enabled = false; statusPanel.Text = "on"; //run TheTimer.Start(); } catch (ArgumentNullException nullExp) { MessageBox.Show(nullExp.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } catch (ArgumentException argExp) { MessageBox.Show(argExp.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } catch (Exception) { MessageBox.Show("Возникла неопределенная ошибка", "Unexpected Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } }