private void AddTimeLabel_Click(object sender, EventArgs e) { if (afr != null && waveout != null) { if (TimeLabelsBox.SelectedItems.Count == 0) { TimeLabelsBox.Items.Add(Current_Label.Text); TimeLabelsBox.SetSelected(TimeLabelsBox.Items.Count - 1, true); } else if (TimeLabelsBox.SelectedItems.Count == 1) { int n = TimeLabelsBox.SelectedIndex; TimeLabelsBox.Items.Insert(n + 1, Current_Label.Text); TimeLabelsBox.SelectedItems.Clear(); TimeLabelsBox.SetSelected(n + 1, true); } else { MessageBox.Show("请注意:标签将插入到第一个所选标签的后面,建议只选中一个标签然后进行新标签的插入"); int n = TimeLabelsBox.SelectedIndex; TimeLabelsBox.Items.Insert(n + 1, Current_Label.Text); TimeLabelsBox.SelectedItems.Clear(); TimeLabelsBox.SetSelected(n + 1, true); } } else { MessageBox.Show("请播放音频"); } }
private void 重新排序ToolStripMenuItem_Click(object sender, EventArgs e) { List <int> Times = new List <int>(); foreach (string item in TimeLabelsBox.Items) { Times.Add(ChangeTimeFormat(item)); } Times = Times.Distinct().ToList(); Times.Sort(); TimeLabelsBox.Items.Clear(); for (int i = 0; i < Times.Count(); i++) { TimeLabelsBox.Items.Add(ChangeTimeFormat2(Times[i])); } TimeLabelsBox.SetSelected(TimeLabelsBox.Items.Count - 2, true); }
private void PlayButton_Click(object sender, EventArgs e) { if (waveout != null && waveout.PlaybackState == PlaybackState.Playing) { waveout.Pause(); PlayButton.Text = "已暂停"; timer1.Stop(); } else if (waveout != null && waveout.PlaybackState == PlaybackState.Paused) { waveout.Play(); PlayButton.Text = "播放"; timer1.Start(); } else { string extension = System.IO.Path.GetExtension(inputname); afr = new AudioFileReader(inputname); waveout = new WaveOut(); allseconds = afr.TotalTime.Hours * 3600 + afr.TotalTime.Minutes * 60 + afr.TotalTime.Seconds; waveout.Init(afr); waveout.Play(); PlayButton.Text = "播放"; Total_Label.Text = afr.TotalTime.ToString().Substring(0, afr.TotalTime.ToString().LastIndexOf(".")); if (!TimeLabelsBox.Items.Contains("00:00:00")) { TimeLabelsBox.Items.Add("00:00:00"); } if (!TimeLabelsBox.Items.Contains(Total_Label.Text)) { TimeLabelsBox.Items.Add(Total_Label.Text); } if (TimeLabelsBox.SelectedItems.Count == 0) { TimeLabelsBox.SetSelected(0, true); } timer1.Start(); } }