/// <summary> /// Metoda pokazująca urządzenie oraz specyfikację w nowym oknie /// </summary> /// <param name="mp3"></param> public void ShowDevice(Mp3 mp3) { Mp3Form mp3Form = new Mp3Form(); mp3Form.Show(); mp3Form.FillDataGridView(mp3.DiskSizeGb, mp3.NumberOfFormats, mp3.FmRadio, mp3.HeadphoneJack, mp3.TimeOfPlayingMusic); }
/// <summary> /// Metoda opisująca pokazywanie groupboxów w zależności od wybranej opcji. Najpier wszystkie sa niewidoczne, a zależności od /// wybranego urządzenia pojawia się jeden z nich /// </summary> private void ShowGroupBox() { groupBoxMp3.Visible = false; groupBoxTablet.Visible = false; groupBoxTv.Visible = false; groupBoxSmartphone.Visible = false; groupBoxLaptop.Visible = false; if (GetBaseInformation() == true) { switch (comboBoxLookingFor.Text) { case "Mp3": groupBoxMp3.Visible = true; break; case "Tablet": groupBoxTablet.Visible = true; break; case "Telewizor": groupBoxTv.Visible = true; break; case "Smartfon": groupBoxSmartphone.Visible = true; break; case "Laptop": groupBoxLaptop.Visible = true; break; default: MessageBox.Show("Error"); break; } /////////////////////////PRZYKŁAD POLIMORFIZMU///////////////////////// //Tutaj pokazany został przykład polimorfizmu, dzieki któremu można wywołać metodę o tej samej nazwie z wielu klas device[0] = new Mp3(); device[1] = new Tablet(); device[2] = new Laptop(); device[3] = new TV(); device[4] = new Smartphone(); foreach (var dev in device) { // MessageBox.Show(dev.ShowInformation()); } } }
/// <summary> /// Metoda sprawdzająca czy użytkownik poprawnie wypełnił wszystkie pola, jeśli nie, zostaje wyrzucony error oraz /// zwrócona wartośc metody false /// </summary> /// <returns></returns> private bool GetBaseInformation() { try { var emPeTrzy = new Mp3(RandomNumber(Int32.Parse(textBoxWeightMin.Text), Int32.Parse(textBoxWeightMax.Text)), RandomNumber(Int32.Parse(textBoxScreenMin.Text), Int32.Parse(textBoxScreenMax.Text)), checkBoxBluetooth.Checked); return(true); } catch (FormatException) { MessageBox.Show("Podaj wszystkie potrzebne informacje lub we właściwym formacie", "Błąd podawania informacji"); return(false); } }
/// <summary> /// MP3 - Metoda tworząca obiekt klasy Mp3 i wypełniająca go odpowiedznimi wartościami. Metoda /// sprawdza także, czy pola zostały wpełnione poprawnie. Obiekt zostaje dodany do listy. /// </summary> private bool GetMp3Information() { try { var mp3 = new Mp3(RandomNumber(Int32.Parse(textBoxWeightMin.Text), Int32.Parse(textBoxWeightMax.Text)), RandomNumber(Int32.Parse(textBoxScreenMin.Text), Int32.Parse(textBoxScreenMax.Text)), checkBoxBluetooth.Checked) { DiskSizeGb = Int32.Parse(comboBoxDiskSizeMp3.Text), NumberOfFormats = checkedListBoxMusicFormatMp3.Items.Count, FmRadio = checkBoxFmMp3.Checked, HeadphoneJack = checkBoxHeadphoneJackMp3.Checked, TimeOfPlayingMusic = Int32.Parse(textBoxTimeOfPlayingMusicMp3.Text) }; listOfMp3.Add(mp3); return(true); } catch (FormatException) { MessageBox.Show("Podaj wszystkie potrzebne informacje lub we właściwym formacie", "Błąd podawania informacji"); return(false); } }
/// <summary> /// Metoda uzupełniająca DataGridView w otwartym oknie, wartościami obiektu danymi do funckji /// </summary> /// <param name="diskSize"></param> /// <param name="formatsNumber"></param> /// <param name="fm"></param> /// <param name="miniJack"></param> /// <param name="timeOfPlaying"></param> public void FillDataGridView(/*int weight, int screenSize, bool bluetooth, */ int diskSize, int formatsNumber, bool fm, bool miniJack, int timeOfPlaying) { dataGridViewMp3.DataSource = Mp3.TakeChosen(connection, diskSize, formatsNumber, fm, miniJack, timeOfPlaying); }