From e93ed871c540afcb35dad21be0fe7a95904a2681 Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期四, 09 六月 2022 10:54:30 +0800
Subject: [PATCH] 2022年06月09日10:53:32
---
HDL_ON/UI/UI2/FuntionControlView/Music/A31PlayMusicPage.cs | 126 +++++++++++++++++++++++++++++++----------
1 files changed, 94 insertions(+), 32 deletions(-)
diff --git a/HDL_ON/UI/UI2/FuntionControlView/Music/A31PlayMusicPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Music/A31PlayMusicPage.cs
index 7fed773..6bcea7c 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/Music/A31PlayMusicPage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/Music/A31PlayMusicPage.cs
@@ -4,6 +4,7 @@
using System.Collections.Generic;
using System.Security;
using HDL_ON.UI.UI2.FuntionControlView.Music;
+using HDL_ON.Entity;
namespace HDL_ON.UI.Music
{
@@ -90,38 +91,62 @@
///鍒囨崲鎾斁妯″紡鐐瑰嚮浜嬩欢;
playView.playOrderBtn.MouseUpEventHandler += (sender, e) =>
{
- string modeValueString = string.Empty;
string msg = Language.StringByID(StringId.switchTo);
- string modeKeyValue = A31MusicModel.Current.functionMusic.GetAttrState(KeyProperty.mode);
- switch (modeKeyValue)
+ //鑾峰彇褰撳墠鎾斁妯″紡
+ string currModeKeyValue = A31MusicModel.Current.functionMusic.GetAttrState(KeyProperty.mode);
+ //鑾峰彇闊充箰鎾斁妯″紡鍒楄〃
+ var attributes = A31MusicModel.Current.functionMusic.GetAttribute(KeyProperty.mode);
+ if (attributes==null) {
+ attributes=new FunctionAttributes();
+ }
+ var attributesList = attributes.value;
+ //鎵惧埌褰撳墠鎾斁妯″紡绱㈠紩鍊�
+ int currModeIndexe = attributesList.IndexOf(currModeKeyValue);
+ //璁板綍閫変腑鐨勬挱鏀炬ā寮忕殑绱㈠紩鍊�
+ int count = 0;
+ if (currModeIndexe >= attributesList.Count-1)
+ {
+ //閲嶇疆绱㈠紩鍊�
+ count = 0;
+ }
+ else
+ {
+ count = currModeIndexe + 1;
+ }
+ //閫氳繃绱㈠紩鍊兼壘鍒版ā寮弙alue鍊�
+ string modeValueString = attributesList[count];
+ switch (modeValueString)
{
//list_cycle鍒楄〃寰幆锛宻ingle_cycle鍗曟洸寰幆锛宺andom闅忔満鎾斁;
case ValueProperty.list_cycle:
- modeValueString=ValueProperty.single_cycle;
- playView.playOrderBtn.UnSelectedImagePath = "MusicIcon/single.png";
- msg += Language.StringByID(StringId.singleMode);
+ playView.playOrderBtn.UnSelectedImagePath = "MusicIcon/list.png";
+ msg += Language.StringByID(StringId.listMode);
break;
case ValueProperty.single_cycle:
- modeValueString =ValueProperty.random;
+ playView.playOrderBtn.UnSelectedImagePath = "MusicIcon/single_cycle.png";
+ msg += Language.StringByID(StringId.singleCycleMode);
+ break;
+ case ValueProperty.random:
playView.playOrderBtn.UnSelectedImagePath = "MusicIcon/random.png";
msg += Language.StringByID(StringId.randomMode);
break;
- case ValueProperty.random:
- modeValueString = ValueProperty.list_cycle;
- playView.playOrderBtn.UnSelectedImagePath = "MusicIcon/list.png";
- msg += Language.StringByID(StringId.listMode);
+ case ValueProperty.single:
+ playView.playOrderBtn.UnSelectedImagePath = "MusicIcon/single.png";
+ msg += Language.StringByID(StringId.single);
break;
- default:
- modeValueString = ValueProperty.list_cycle;
- playView.playOrderBtn.UnSelectedImagePath = "MusicIcon/list.png";
- msg += Language.StringByID(StringId.listMode);
+ case ValueProperty.order:
+ playView.playOrderBtn.UnSelectedImagePath = "MusicIcon/order.png";
+ msg += Language.StringByID(StringId.orderMode);
break;
+
}
+ //鍐欏叆缂撳瓨
A31MusicModel.Current.functionMusic.SetAttrState(KeyProperty.mode, modeValueString);
- new PublicAssmebly().TipMsgAutoClose(msg, false,1000);
+ new PublicAssmebly().TipMsgAutoClose(msg, false, 1000);
Dictionary<string, string> dic = new Dictionary<string, string>();
- dic.Add(KeyProperty.mode,modeValueString);
- SendMethod.mMethod.SendControlCommand(A31MusicModel.Current.functionMusic,dic);
+ dic.Add(KeyProperty.mode, modeValueString);
+ //鍙戦�佹帶鍒舵寚浠�
+ SendMethod.mMethod.SendControlCommand(A31MusicModel.Current.functionMusic, dic);
};
///娣诲姞鍠滅埍鐐瑰嚮浜嬩欢;
playView.loveBtn.MouseUpEventHandler += (sender, e) =>
@@ -219,6 +244,8 @@
playView.volValueBtn.Text = playView.volSeekBar.Progress + "%";
if (startVolume != e)
{
+ ///鏇存柊鏈�鏂板��
+ A31MusicModel.ProgressDateTime = DateTime.Now;
startVolume = e;
A31MusicModel.Current.functionMusic.SetAttrState(KeyProperty.volume, startVolume);
Dictionary<string, string> dic = new Dictionary<string, string>();
@@ -251,7 +278,8 @@
if (playView.playBtn.IsSelected)
{
playView.playBtn.IsSelected = false;
- status = ValueProperty.off;
+ status = ValueProperty.off;
+
}
else
{
@@ -319,22 +347,29 @@
int totalMusicMinute = totalSecond / 60;
//绉掗挓
int totalMusicSecond = totalSecond % 60;
-
+ //杞寲姝屾洸鎬绘椂闂存椂闂存牸寮�
string totalTime = (totalMusicMinute.ToString().Length < 2 ? "0" + totalMusicMinute.ToString() : totalMusicMinute.ToString()) + ":" + (totalMusicSecond.ToString().Length < 2 ? "0" + totalMusicSecond.ToString() : totalMusicSecond.ToString());
+ //鏄剧ず鎬绘椂闂�
playView.endTimeBtn.Text = totalTime;
-
+ //鏄剧ず鎾斁鍣ㄥ悕绉�
topView.topNameBtn.Text = A31MusicModel.Current.functionMusic.name;
- string s = A31MusicModel.Current.functionMusic.GetAttrState(KeyProperty.mode);
+ //鏄剧ず鎾斁妯″紡鍥炬爣
switch (A31MusicModel.Current.functionMusic.GetAttrState(KeyProperty.mode))
{
case ValueProperty.list_cycle://鍒楄〃寰幆
playView.playOrderBtn.UnSelectedImagePath = "MusicIcon/list.png";
break;
case ValueProperty.single_cycle://鍗曟洸寰幆
- playView.playOrderBtn.UnSelectedImagePath = "MusicIcon/single.png";
+ playView.playOrderBtn.UnSelectedImagePath = "MusicIcon/single_cycle.png";
break;
case ValueProperty.random://闅忔満鎾斁
playView.playOrderBtn.UnSelectedImagePath = "MusicIcon/random.png";
+ break;
+ case ValueProperty.single:// 鍗曟洸<single>
+ playView.playOrderBtn.UnSelectedImagePath = "MusicIcon/single.png";
+ break;
+ case ValueProperty.order://寰簭寰幆
+ playView.playOrderBtn.UnSelectedImagePath = "MusicIcon/order.png";
break;
}
@@ -369,7 +404,9 @@
// playView.loveBtn.IsSelected = false;
// }
//}
+ //鏄剧ず鎾斁鍣ㄥ尯鍩�
playView.regionBtn.Text = A31MusicModel.Current.functionMusic.GetRoomListName();
+ //鏄剧ず鎾斁鍣ㄦ敹钘忕姸鎬佸浘鏍�
if (A31MusicModel.Current.functionMusic.collect)
{
playView.collectIconBtn.IsSelected = true;
@@ -394,8 +431,8 @@
// playView.volValueBtn.Text = A31MusicModel.Current.A31PlayStatus.vol + "%";
// }
//}
-
- if (1000 < (DateTime.Now - A31MusicModel.ProgressDateTime).TotalMilliseconds)
+ //涓轰簡闃叉闊抽噺鏉¤烦鍔�,寤堕暱鏇存柊鏃堕棿(澶氬姞1s)
+ if (2000 < (DateTime.Now - A31MusicModel.ProgressDateTime).TotalMilliseconds || A31MusicModel.ProgressDateTime==DateTime.MinValue)
{
//闊抽噺杩涘害鏉�;
playView.volSeekBar.Progress = int.Parse(A31MusicModel.Current.functionMusic.GetAttrState(KeyProperty.volume));
@@ -403,30 +440,49 @@
playView.volValueBtn.Text = A31MusicModel.Current.functionMusic.GetAttrState(KeyProperty.volume) + "%";
}
//鏇存柊鎾斁鍣ㄩ煶閲忕粰绯荤粺闊抽噺
- Volume.MusicVolume = playView.volSeekBar.Progress;
+ //Volume.MusicVolume = playView.volSeekBar.Progress;
//褰撳墠鎾斁闊充箰鏃堕棿
//鎸夐亾鐞嗕笉浼氫负绌猴紝GetAttrState("playing_time")鍊煎彲鑳戒负绌猴紝寮哄埗杞崲int.Parse(锛変細鍑虹幇寮傚父锛屼笉杩囦篃鍋氫簡寮傚父澶勭悊浜�
- int playSecond = int.Parse(A31MusicModel.Current.functionMusic.GetAttrState(KeyProperty.playing_time))+ (int)(DateTime.Now - A31MusicModel.Current.LastDateTime).TotalSeconds;
-
+ int playSecond = int.Parse(A31MusicModel.Current.functionMusic.GetAttrState(KeyProperty.playing_time));
+ //璇嗗埆闊充箰鐘舵�佹槸鍚﹀湪鎾斁鐘舵��
+ if (A31MusicModel.Current.functionMusic.GetAttrState(KeyProperty.on_off) == ValueProperty.on)
+ {
+ //闊充箰鍦ㄦ挱鏀炬椂锛屽啀璁$畻鎾斁鏃堕棿(鐜板湪鏃堕棿=鍘熸潵鏃堕棿+1绉�)
+ playSecond +=(int)(DateTime.Now - A31MusicModel.Current.LastDateTime).TotalSeconds;
+ playSecond += 1;//琛ㄧず鍔犱笂绛夊緟鐨勬椂闂�1s
+ ///姝屾洸璁板綍鏆傛椂鏃堕棿鍐欏叆缂撳瓨锛�
+ A31MusicModel.Current.functionMusic.SetAttrState(KeyProperty.playing_time, playSecond);
+ }
+ if (playSecond<=0)
+ {
+ ///鎾斁鏃堕棿涓嶈兘灏忎簬0锛�
+ playSecond = 0;
+ }
+ if (playSecond >=totalSecond)
+ {
+ ///鎾斁鏃堕棿涓嶈兘瓒呰繃鎬绘椂闂达紱
+ playSecond = totalSecond;
+ }
int playMusicMinute = playSecond / 60;
//绉掗挓
int playMusicSecond = playSecond % 60;
-
+ //杞寲鎾斁鏃堕棿鏃堕棿鏍煎紡
string playTime = (playMusicMinute.ToString().Length < 2 ? "0" + playMusicMinute.ToString() : playMusicMinute.ToString()) + ":" + (playMusicSecond.ToString().Length < 2 ? "0" + playMusicSecond.ToString() : playMusicSecond.ToString());
if (A31MusicModel.Current.functionMusic.GetAttrState(KeyProperty.on_off) == ValueProperty.on)
{
+ //鏄剧ず鎾斁鐘舵�佸浘鏍�
playView.playBtn.IsSelected = true;
- //濡傛灉鍦ㄦ挱鏀撅紝鏃堕棿灏变笉鏂彉鍖�
+ //鏄剧ず鎾斁鏃堕棿
playView.startTimeBtn.Text = playTime;
if (totalSecond == 0)
{
- //姝屾洸杩涘害鏉�
+ //鏄剧ず姝屾洸杩涘害鏉�
playView.diyArcSeekBar.Progress = 0;
}
else
{
- //姝屾洸杩涘害鏉�
+ //鏄剧ず姝屾洸杩涘害鏉�
playView.diyArcSeekBar.Progress = (int)(playSecond * 100.0 / totalSecond);//+1
}
@@ -434,11 +490,17 @@
}
else
{
+ //鏄剧ず鎾斁鐘舵�佸浘鏍�
playView.playBtn.IsSelected = false;
//鍋滄鎾斁
playView.startTimeBtn.Text =playTime;
+ //playView.startTimeBtn.Text ="00:00";
+ ///璁板綍姝屾洸鏆傚仠鏃堕棿锛�<LastDateTime 璁$畻鎾斁鏃堕棿鏈夌敤鍒�>
+ A31MusicModel.Current.LastDateTime = DateTime.Now;
}
+ //鏄剧ず姝屾洸鍚嶇О
playView.songNameTextView.Text = A31MusicModel.Current.functionMusic.GetAttrState(KeyProperty.song_name) == null ? "Unkown" : A31MusicModel.Current.functionMusic.GetAttrState(KeyProperty.song_name);
+ //鏄剧ず姝屾墜鍚嶇О
playView.singerBtn.Text = A31MusicModel.Current.functionMusic.GetAttrState(KeyProperty.song_name) == null ? "Unkown" : A31MusicModel.Current.functionMusic.GetAttrState(KeyProperty.song_name);
//鏇存柊婧愮殑鐣岄潰
// showSourcePage();
--
Gitblit v1.8.0