private void Button_Click(object sender, RoutedEventArgs e) { Dane.Wczytaj("dane.txt"); dataGrid.Items.Clear(); dataGridM2.Items.Clear(); dataGridM3.Items.Clear(); dataGrid1.Items.Clear(); var dataGridWidth = dataGrid.Width; ManagerZadan.UstawianieListZmodyfikowanychCzasow(); if (ManagerZadan.SprawdzenieDanych() == true) { ManagerZadan.UstawienieNaMaszynach(); int os = 0; foreach (Zadanie zad in ManagerZadan.M1) { if (zad.czasZakonczenia > os) { os = zad.czasZakonczenia; } } foreach (Zadanie zad in ManagerZadan.M2) { if (zad.czasZakonczenia > os) { os = zad.czasZakonczenia; } } foreach (Zadanie zad in ManagerZadan.M3) { if (zad.czasZakonczenia > os) { os = zad.czasZakonczenia; } } var maxColumnNumber = os; var width = dataGridWidth / maxColumnNumber; int licznik = 1; int k = 0; int roznica; if (ManagerZadan.M1.ElementAt(0).czasRozpoczecia != 0) { DataGridTextColumn txtColumn = new DataGridTextColumn(); txtColumn.FontSize = 25; txtColumn.Header = "X"; txtColumn.Width = ManagerZadan.M1.ElementAt(0).czasRozpoczecia *width; dataGrid.Columns.Add(txtColumn); } for (int i = 0; i < ManagerZadan.M1.Count(); i++) { if (i < ManagerZadan.M1.Count() - 1) { DataGridTextColumn textColumn = new DataGridTextColumn(); textColumn.FontSize = 25; textColumn.Header = "Z" + ManagerZadan.M1.ElementAt(i).numerZadania; textColumn.Width = ManagerZadan.M1.ElementAt(i).czasM1 *width; dataGrid.Columns.Add(textColumn); if (ManagerZadan.M1.ElementAt(i).czasZakonczenia != ManagerZadan.M1.ElementAt(i + 1).czasRozpoczecia) { roznica = ManagerZadan.M1.ElementAt(i + 1).czasRozpoczecia - ManagerZadan.M1.ElementAt(i).czasZakonczenia; DataGridTextColumn txtColumn = new DataGridTextColumn(); txtColumn.FontSize = 25; txtColumn.Header = "X"; txtColumn.Width = roznica * width; dataGrid.Columns.Add(txtColumn); } } if (i == ManagerZadan.M1.Count() - 1) { DataGridTextColumn textColumn = new DataGridTextColumn(); textColumn.FontSize = 20; textColumn.Header = "Z" + ManagerZadan.M1.ElementAt(i).numerZadania; textColumn.Width = ManagerZadan.M1.ElementAt(i).czasM1 *width; dataGrid.Columns.Add(textColumn); licznik = 1; } } if (ManagerZadan.M2.ElementAt(0).czasRozpoczecia != 0) { DataGridTextColumn txtColumn = new DataGridTextColumn(); txtColumn.FontSize = 25; txtColumn.Header = "X"; txtColumn.Width = ManagerZadan.M2.ElementAt(0).czasRozpoczecia *width; dataGridM2.Columns.Add(txtColumn); } for (int i = 0; i < ManagerZadan.M2.Count(); i++) { if (i < ManagerZadan.M2.Count() - 1) { DataGridTextColumn textColumn = new DataGridTextColumn(); textColumn.FontSize = 25; textColumn.Header = "Z" + ManagerZadan.M2.ElementAt(i).numerZadania; textColumn.Width = ManagerZadan.M2.ElementAt(i).czasM2 *width; dataGridM2.Columns.Add(textColumn); if (ManagerZadan.M2.ElementAt(i).czasZakonczenia != ManagerZadan.M2.ElementAt(i + 1).czasRozpoczecia) { roznica = ManagerZadan.M2.ElementAt(i + 1).czasRozpoczecia - ManagerZadan.M2.ElementAt(i).czasZakonczenia; DataGridTextColumn txtColumn = new DataGridTextColumn(); txtColumn.FontSize = 25; txtColumn.Header = "X"; txtColumn.Width = roznica * width; dataGridM2.Columns.Add(txtColumn); } } if (i == ManagerZadan.M2.Count() - 1) { DataGridTextColumn textColumn = new DataGridTextColumn(); textColumn.FontSize = 20; textColumn.Header = "Z" + ManagerZadan.M2.ElementAt(i).numerZadania; textColumn.Width = ManagerZadan.M2.ElementAt(i).czasM2 *width; dataGridM2.Columns.Add(textColumn); licznik = 1; } } if (ManagerZadan.M3.ElementAt(0).czasRozpoczecia != 0) { DataGridTextColumn txtColumn = new DataGridTextColumn(); txtColumn.FontSize = 25; txtColumn.Header = "X"; txtColumn.Width = ManagerZadan.M3.ElementAt(0).czasRozpoczecia *width; dataGridM3.Columns.Add(txtColumn); } for (int i = 0; i < ManagerZadan.M3.Count(); i++) { if (i < ManagerZadan.M3.Count() - 1) { DataGridTextColumn textColumn = new DataGridTextColumn(); textColumn.FontSize = 25; textColumn.Header = "Z" + ManagerZadan.M3.ElementAt(i).numerZadania; textColumn.Width = ManagerZadan.M3.ElementAt(i).czasM3 *width; dataGridM3.Columns.Add(textColumn); if (ManagerZadan.M3.ElementAt(i).czasZakonczenia != ManagerZadan.M3.ElementAt(i + 1).czasRozpoczecia) { roznica = ManagerZadan.M3.ElementAt(i + 1).czasRozpoczecia - ManagerZadan.M3.ElementAt(i).czasZakonczenia; DataGridTextColumn txtColumn = new DataGridTextColumn(); txtColumn.FontSize = 25; txtColumn.Header = "X"; txtColumn.Width = roznica * width; dataGridM3.Columns.Add(txtColumn); } } if (i == ManagerZadan.M3.Count() - 1) { DataGridTextColumn textColumn = new DataGridTextColumn(); textColumn.FontSize = 20; textColumn.Header = "Z" + ManagerZadan.M3.ElementAt(i).numerZadania; textColumn.Width = ManagerZadan.M3.ElementAt(i).czasM3 *width; dataGridM3.Columns.Add(textColumn); licznik = 1; } } for (int i = 0; i < os; i++) { DataGridTextColumn column = new DataGridTextColumn(); column.FontSize = 25; column.Header = i; column.Width = width; dataGrid1.Columns.Add(column); } } else { MessageBox.Show("Maszyna M2 nie jest zdominowana ani przez M1, ani przez M3"); } }
private void Button_Click(object sender, RoutedEventArgs e) { Dane.Wczytaj("dane1.txt"); ManagerZadan.Acyklicznosc(); if (ManagerZadan.status == true) { dataGrid.Items.Clear(); dataGrid1.Items.Clear(); opoznienie.Items.Clear(); var dataGridWidth = dataGrid.Width; ManagerZadan.UstawienieZmodyfikowanychCzasowZakonczenia(); ManagerZadan.UstawienieZadanNaMaszynie(); var maxColumnNumber = ManagerZadan.maszyna.Last().czasZakonczenia; var width = dataGridWidth / maxColumnNumber; int licznik = 1; int k = 0; DataGridTextColumn op = new DataGridTextColumn(); op.FontSize = 25; op.Header = "Opoznienie: " + ManagerZadan.WyliczenieOpoznienia(); opoznienie.Columns.Add(op); if (ManagerZadan.maszyna.ElementAt(0).czasRozpoczecia != 0) { for (int i = 0; i < ManagerZadan.maszyna.ElementAt(0).czasRozpoczecia; i++) { DataGridTextColumn column = new DataGridTextColumn(); column.FontSize = 25; column.Header = k; column.Width = width; dataGrid1.Columns.Add(column); k++; DataGridTextColumn txtColumn = new DataGridTextColumn(); txtColumn.FontSize = 25; txtColumn.Header = "X"; txtColumn.Width = width; dataGrid.Columns.Add(txtColumn); } } for (int i = 0; i < ManagerZadan.maszyna.Count(); i++) { DataGridTextColumn column = new DataGridTextColumn(); column.FontSize = 25; column.Header = k; column.Width = width; dataGrid1.Columns.Add(column); k++; if (i < ManagerZadan.maszyna.Count() - 1) { if (ManagerZadan.maszyna.ElementAt(i).numerZadania == ManagerZadan.maszyna.ElementAt(i + 1).numerZadania) { licznik++; } else { DataGridTextColumn textColumn = new DataGridTextColumn(); //switch (ManagerZadan.maszyna.ElementAt(i).numerZadania) //{ // case 1: textColumn.Foreground = new SolidColorBrush(Colors.Red); break; //} textColumn.FontSize = 25; textColumn.Header = "Z" + ManagerZadan.maszyna.ElementAt(i).numerZadania; textColumn.Width = licznik * width; dataGrid.Columns.Add(textColumn); licznik = 1; } if (ManagerZadan.maszyna.ElementAt(i).czasZakonczenia != ManagerZadan.maszyna.ElementAt(i + 1).czasRozpoczecia) { int roznica = ManagerZadan.maszyna.ElementAt(i + 1).czasRozpoczecia - ManagerZadan.maszyna.ElementAt(i).czasZakonczenia; for (int j = 0; j < roznica; j++) { DataGridTextColumn txtColumn = new DataGridTextColumn(); txtColumn.FontSize = 25; txtColumn.Header = "X"; txtColumn.Width = width; dataGrid.Columns.Add(txtColumn); DataGridTextColumn c = new DataGridTextColumn(); c.FontSize = 25; c.Header = k; c.Width = width; dataGrid1.Columns.Add(c); k++; } } } if (i == ManagerZadan.maszyna.Count() - 1) { DataGridTextColumn textColumn = new DataGridTextColumn(); textColumn.FontSize = 20; textColumn.Header = "Z" + ManagerZadan.maszyna.ElementAt(i).numerZadania; textColumn.Width = licznik * width; dataGrid.Columns.Add(textColumn); licznik = 1; } } } else { MessageBox.Show("Graf jest cykliczny!"); } }