using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace MPC_PP { public partial class Form2:Form { public Form1 F1; public Form2() { InitializeComponent(); } private void Form2_Load(object sender, EventArgs e) { trackBar1.Value = 0;// 初期値 trackBar1.Minimum = 0; trackBar1.Maximum = 1440*F1.TMSeed; trackBar1.TickFrequency = trackBar1.Maximum/4; // 描画される目盛りの刻みを設定 trackBar1.SmallChange = 0;// スライダーをキーボードやマウスで動かした場合の移動量 trackBar1.LargeChange = 0;// PageUp,Downキーで動かした場合の移動量 trackBar1.ValueChanged += new EventHandler(trackBar1_ValueChanged); WIMove(); this.Opacity=0.8; } public void WIMove(){ //Form2-位置調整 this.Left= F1.Left+7; this.Top = F1.Bottom-7; //-47 this.Width=F1.Width-15; } void trackBar1_ValueChanged(object sender, EventArgs e){ } public void TRView(){ this.textBox1.Text = Math.Truncate(F1.axWindowsMediaPlayer1.Ctlcontrols.currentPosition*100)/100+"/"; //秒数テキスト表示 this.textBox1.Text+= Math.Truncate(F1.axWindowsMediaPlayer1.currentMedia.duration*100)/100+""; } bool S1=false; private void trackBar1_Scroll(object sender, EventArgs e) { //バーをスライド位置に移動 [再生中=再生/停止中=停止] if(F1.timer2.Enabled==false){ if(checkBox1.Checked){ F1.axWindowsMediaPlayer1.Ctlcontrols.currentPosition=(double)this.trackBar1.Value/F1.TMSeed +F1.TMLength*(int)(F1.axWindowsMediaPlayer1.Ctlcontrols.currentPosition/F1.TMLength); } else { F1.axWindowsMediaPlayer1.Ctlcontrols.currentPosition=(double)this.trackBar1.Value/F1.TMSeed; } Start(); if(!F1.PLMode){ Stop(); } S1=true; F1.timer2.Enabled=true; //描画制限 } else{} } private void trackBar1_MouseDown(object sender, MouseEventArgs e){ Stop(); } //トラックバークリック [停止] PlayStop=true; private void trackBar1_MouseUp(object sender, MouseEventArgs e) { //クリック位置に移動([判定/甘]) [再生中=再生/停止中=停止] if(F1.timer1.Enabled){ if(S1==false){ if(checkBox1.Checked){ double VarPoint=(e.X-(double)trackBar1.Width/2)*0.05; if(VarPoint>=0){ VarPoint= ((e.X+VarPoint)/(double)trackBar1.Width*trackBar1.Maximum); } else { VarPoint= ((e.X+VarPoint*0.3)/(double)trackBar1.Width*trackBar1.Maximum); } if(VarPoint>trackBar1.Maximum){ VarPoint=trackBar1.Maximum; } if(VarPoint<0) { VarPoint=0; } this.trackBar1.Value=(int)VarPoint; F1.axWindowsMediaPlayer1.Ctlcontrols.currentPosition=(VarPoint/F1.TMSeed) +F1.TMLength*(int)(F1.axWindowsMediaPlayer1.Ctlcontrols.currentPosition/F1.TMLength); } else{ double VarPoint=(e.X-(double)trackBar1.Width/2)*0.05; if(VarPoint>=0){ VarPoint= ((e.X+VarPoint)/(double)trackBar1.Width*trackBar1.Maximum); } else { VarPoint= ((e.X+VarPoint*0.3)/(double)trackBar1.Width*trackBar1.Maximum); } if(VarPoint>trackBar1.Maximum){ VarPoint=trackBar1.Maximum; } if(VarPoint<0) { VarPoint=0; } this.trackBar1.Value=(int)VarPoint; F1.axWindowsMediaPlayer1.Ctlcontrols.currentPosition=(VarPoint/F1.TMSeed); } } else{ S1=false; } Start(); if(!F1.PLMode){ Stop(); } //if(PlayStop){ Stop(); PlayStop=false; } } } //bool PlayStop=false; public void Start(){ F1.axWindowsMediaPlayer1.Ctlcontrols.play(); //F1.Text="再生中"; } public void Stop() { F1.axWindowsMediaPlayer1.Ctlcontrols.pause(); //F1.Text="一時停止"; } public void Reset() { F1.axWindowsMediaPlayer1.Ctlcontrols.play(); F1.axWindowsMediaPlayer1.Ctlcontrols.pause(); //F1.Text="一時停止"; } public void ReStart(){ F1.axWindowsMediaPlayer1.Ctlcontrols.fastReverse(); } //早戻し public void FullStart(){ F1.axWindowsMediaPlayer1.Ctlcontrols.fastForward(); } //早送り private void Form2_KeyUp(object sender, KeyEventArgs e) { F1.KeyUP((int)e.KeyCode); } //キー操作=連動 private void trackBar1_KeyUp(object sender, KeyEventArgs e){ F1.KeyUP((int)e.KeyCode); } private void checkBox2_KeyUp(object sender, KeyEventArgs e){ F1.KeyUP((int)e.KeyCode); } private void checkBox1_KeyUp(object sender, KeyEventArgs e){ F1.KeyUP((int)e.KeyCode); } private void textBox1_KeyUp(object sender, KeyEventArgs e) { F1.KeyUP((int)e.KeyCode); } private void checkBox1_CheckedChanged(object sender, EventArgs e) { F1.LengthCheck(); } //トラックバー最大値切替 } }