/// <summary> /// Конструктор стартового состояния окна /// </summary> /// <param name="x">размер по оси x</param> /// <param name="y">размер по оси y</param> public MainForm(int x, int y) { Gettext.LanguageCode = "ru"; string pathDirectory = Application.StartupPath; // Путь к директории string pathFile = pathDirectory + "\\" + "eurusd" + ".txt"; // Путь к файлу c котировками eurusd Methods Time = new Methods(); // проверка интернет соединения ассинхронно tConnect = Task.Run(() => { Internet inCon = new Internet(); InetConnect.Inet = inCon.TryCon("eurusd", sync, internetActionFinished); }); switch (Time.TradeStop(DateTime.Now)) { case "Sat": MessageBox.Show(Gettext._("Forex day off")); break; case "Sun": MessageBox.Show(Gettext._("Forex day off")); break; } this.InitializeComponent(); // размеры контейнера startContainer.Size = new Size(x, y - WSettings.Size.Height); startContainer.Location = new Point(0, 0); // проверка существования директории DirectoryWork.Set(pathDirectory); // проверка существования файла FileInspection.Set(pathFile); // настройка под все экраны xS = x / 1920.0; // настройка под все экраны yS = y / 1080.0; // задание размеров экрана this.Size = new Size(x, y); #region Переменные командной комбинации к Меню текущей форме // командная комбинация клавиш для откытия настроек окна windowToolStripMenuItem.ShortcutKeys = Keys.Control | Keys.W; // командная комбинация клавиш для откытия настроек графика chartToolStripMenuItem.ShortcutKeys = Keys.Control | Keys.C; // командная комбинация клавиш для откытия графика USDEUR eURUSDToolStripMenuItem.ShortcutKeys = Keys.Control | Keys.U; // командная комбинация клавиш для откытия графика EURYPJ USDJPYToolStripMenuItem.ShortcutKeys = Keys.Control | Keys.Y; #endregion // Грузящийся курсор Cursor.Current = Cursors.WaitCursor; tConnect.Wait(); // Возвращение к нормальному состоянию Cursor.Current = Cursors.Default; // передача строки подключения Bd BasaDan = new Bd("Data Source = (LocalDB)\\MSSQLLocalDB; AttachDbFilename='" + Application.StartupPath + "\\Forex.mdf'; Integrated Security = True; Connect Timeout = 30"); // проверка интернет соединения if (true == InetConnect.Inet) { tTask = LoadBdQuote(BasaDan); List <int> timeL = new List <int>(); List <double> sellL = new List <double>(); List <double> buyL = new List <double>(); // получение событий парралельно ParserEventFabric Parse = new ParserEventFabric(); BasaDan.LoadInBdEvent("https://myfirstphpapp-skro.rhcloud.com/get_Event.php", BasaDan.SelectLastIdEvent(), Parse); ParserEventGroupFabric Parse1 = new ParserEventGroupFabric(); BasaDan.LoadInBdEventGroup("https://myfirstphpapp-skro.rhcloud.com/get_EventGroup.php", BasaDan.SelectLastIdEventGroup(), Parse1); BasaDan.Select("eurusd", ref timeL, ref sellL, ref buyL); } // выбор событий из БД по id //Events = BasaDan.SelectEvent(5000); // выбор событий по Id_Group // Events = BasaDan.SelectSameEvent(20); // выбор грядущих событий // выбор из группы события по id // Groups = BasaDan.SelectEventGroup(500); // выбор группы по name // Groups = BasaDan.SelectEventGroup("'Выступление представителя ФРС США Джеффри Лэкера'"); int NowTime = Convert.ToInt32((DateTime.Now - new DateTime(1970, 1, 1, 0, 0, 0, 0)).TotalSeconds - 15) - 3600 * 1; Console.WriteLine(NowTime); FutureEvent = BasaDan.SelectEventTime(1495209600); }
/// <summary> /// Cоздание окна валюты /// </summary> /// <param name=" Vvalue">Наименование валюты</param> public Windowd(string Vvalue) { // получение строки через конструктор value = Vvalue; Bd BasaDan = new Bd("Data Source = (LocalDB)\\MSSQLLocalDB; AttachDbFilename='" + Application.StartupPath + "\\Forex.mdf'; Integrated Security = True; Connect Timeout = 30"); // запрос последнего времени из БД BasaDan.SelectLastIdEvent(); // запрос данных из БД BasaDan.Select(value, ref timeL, ref sellL, ref buyL); // ненужные местоположения int ButtLocX = 1101; int ButtLocY = 35; int ButtonSize = 59; int shift = 12; SpeedDraw.Speed = 1; System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US"); // настройка под все экраны double xS = x / 1920.0; // настройка под все экраны double yS = y / 1080.0; this.InitializeComponent(); this.FormClosing += new FormClosingEventHandler(OnClos); graphic = new Chart(); graphic.Parent = this; this.Text = value; area.Name = "myGraph"; // доработать интервал по координате X 1= 1 день area.AxisX.MajorGrid.Interval = 1; // размещение чарта graphic.Location = new Point(0, 10); this.graphic.Size = new System.Drawing.Size(Convert.ToInt32(chatSizeX * xS * (WString.X / fX)), Convert.ToInt32(chatSizeY * yS * (WString.X / fX))); // размеры чарта // передача graphic.ChartAreas.Add(area); // замена присвоение точек через переопределение дисплея. #region Задание параметров кнопкам button9, button8, button10, button1, button7 buttonBuy.Location = Display.customizedPoint(1100, 27); // кнопка buy buttonSell.Location = Display.customizedPoint(1274, 27); // кнопак sell price.Location = Display.customizedPoint(1216, 72); // кнопка price buttonPriceBuy.Location = Display.customizedPoint(1100, 72); // кнопка value buttonPriceSell.Location = Display.customizedPoint(1157, 27); // кнопка value buttonBuy.rusLan = "Покупка"; buttonBuy.engLan = "Buy"; buttonSell.rusLan = "Продажа"; buttonSell.engLan = "Sell"; buttonPriceBuy.rusLan = "Цена покупки"; buttonPriceBuy.engLan = "Value Buy"; buttonPriceSell.rusLan = "Цена продажи"; buttonPriceSell.engLan = "Value Sell"; checkBoxLevelSupandResis.engLan = "Levels support and resistance"; checkBoxSMA.engLan = "SMA"; checkBoxLineCoord.engLan = "Line coordinates"; checkBoxBinding.engLan = "Binding graphics"; checkBoxLevelSupandResis.rusLan = "Уровни сопротивления и поддержки"; checkBoxSMA.rusLan = "Скользящая кривая"; checkBoxLineCoord.rusLan = "Координатные линии"; checkBoxBinding.rusLan = "Привязка графика"; tabControl.Location = Display.customizedPoint(ButtLocX, ButtLocY + 122); numericUpDown1.Value = 10; double SizeDisplayX = xS * (WString.X / fX); double SizeDisplayY = yS * (WString.Y / fY); tabControl.Size = new Size(Convert.ToInt32(250 * SizeDisplayX), Convert.ToInt32(500 * SizeDisplayY)); // Проверка существования if (tabControl.TabPages[0] != null) { tabControl.TabPages[0].Text = "Methods"; } if (tabControl.TabPages[1].Text != null) { tabControl.TabPages[1].Text = "Tools"; } buttonSell.Size = new Size(Convert.ToInt32((ButtonSize + shift * 2 / 3.0) * SizeDisplayX), Convert.ToInt32(46 * SizeDisplayY)); price.Size = new Size(Convert.ToInt32((ButtonSize + 60 + shift * 2 / 3.0) * SizeDisplayX), Convert.ToInt32(46 * SizeDisplayY)); buttonBuy.Size = new Size(Convert.ToInt32((ButtonSize + shift) * SizeDisplayX), Convert.ToInt32(46 * SizeDisplayY)); buttonPriceBuy.Size = new Size(Convert.ToInt32((ButtonSize + 60 + shift) * SizeDisplayX), Convert.ToInt32(46 * SizeDisplayY)); buttonPriceSell.Size = new Size(Convert.ToInt32((ButtonSize + 60 + shift * 2 / 3.0) * SizeDisplayX), Convert.ToInt32(46 * SizeDisplayY)); numericUpDown1.Size = new Size(Convert.ToInt32(117 * SizeDisplayX), Convert.ToInt32(20 * SizeDisplayY)); #endregion // Чекбокс отвечающий за привязку графика к середине включен checkBoxBinding.Checked = true; // Вызов метода объявления линий ChartQ S = new ChartQ(); graphic = S.Quote(graphic, value); #region вызов Методов локализации формы // локализация всплывающих подсказок tTip(); // переводчик кнопок Button(); // переводчик меню #endregion }