private void btnOzelGamOlustur_Click(object sender, EventArgs e) { List <int> sayilar = new List <int>(); for (int i = 0; i < txtGamNotaAraliklari.TextLength; i++) { int sayi = Convert.ToInt16(txtGamNotaAraliklari.Text.Substring(i, 1)); sayilar.Add(sayi); } NotaTip notaTip = (NotaTip)listNota.SelectedItem; GamTip gamTip = (GamTip)cmbGamTip.SelectedItem; gam = Gam.ozelGamOlustur(gamTip, notaTip, sayilar.ToArray()); boxCiktiGam.Text = gam.notalar[0].ToString() + " " + gamTip.ToString(); flowLayoutPanel1.Controls.Clear(); foreach (Nota item in gam.notaSesleri) { Button btn = new Button(); btn.Width = 50; btn.Height = 25; btn.Tag = item; btn.Text = item.tip.ToString(); btn.BackColor = Color.LightGray; btn.Click += buton_Click; btn.Margin = new Padding(0, 0, 0, 0); // flowlayout un weight ile height ayarlaması için butonun margin boyutunu giriyoz. flowLayoutPanel1.Controls.Add(btn); } }
private void button1_Click(object sender, EventArgs e) { NotaTip notaTip = (NotaTip)listNota.SelectedItem; GamTip gamTip = (GamTip)cmbGamTip.SelectedItem; if (gamTip == GamTip.Özel || notaTip == null || gamTip == null) { return; } gam = Gam.gamOlustur(gamTip, notaTip); boxCiktiGam.Text = gam.notalar[0].ToString() + " " + gamTip.ToString(); flowLayoutPanel1.Controls.Clear(); foreach (Nota item in gam.notaSesleri) { Button btn = new Button(); btn.Width = 50; btn.Height = 25; btn.Tag = item; btn.Text = item.tip.ToString(); btn.BackColor = Color.LightGray; btn.Click += buton_Click; btn.Margin = new Padding(0, 0, 0, 0); // flowlayout un weight ile height ayarlaması için butonun margin boyutunu giriyoz. flowLayoutPanel1.Controls.Add(btn); } btnAritmetikCaldir.Enabled = true; MessageBox.Show((-1 % 14).ToString()); // BURADA KALDIK }
public static Gam gamOlustur(GamTip gamTip, NotaTip notaTip) { if (gamTip == GamTip.Majör) { return(ozelGamOlustur(gamTip, notaTip, 2, 2, 1, 2, 2, 2));// 2tam 1 yarım 3 tam (1 yarım = Baştaki Nota) : Do Re Mi Fa Sol La Si (Do) } else if (gamTip == GamTip.Minör) { return(ozelGamOlustur(gamTip, notaTip, 2, 1, 2, 2, 1, 2));// 1 tam 1 yarım 2 tam 1 yarım 2 tam( sonuncu tam baştaki aynı notadır) : La Si Do Re Mi Fa Sol (La) } //asd return(null); }
public static Gam ozelGamOlustur(GamTip gamTip, NotaTip baslangicNota, params int[] gelenSayilar) { Gam gam = new Gam(); gam.gamTip = gamTip; // gam'ın nota tipleri bulunur int baslangicIndex = 0; foreach (Nota item in Nota.NotaSesleri) { if (item.tip == baslangicNota) { gam.notalar.Add(item.tip); break; } baslangicIndex++; } int toplamIndex = baslangicIndex; foreach (int indeks in gelenSayilar) { toplamIndex += indeks; toplamIndex %= 23; gam.notalar.Add(Nota.NotaSesleri[toplamIndex].tip); } // gam'ın nota tipleri bulunduktan sonra sesleri yüklenir foreach (Nota item in Nota.NotaSesleri) { if (gam.notalar.Contains(item.tip)) { gam.notaSesleri.Add(item); } } return(gam); }