修改库名为 YwxAppWpfBarrage

This commit is contained in:
yangwx01
2025-03-29 19:54:02 +08:00
parent 07479c8c6b
commit 72ae1ece9f
191 changed files with 2078 additions and 379 deletions

View File

@@ -1,9 +1,9 @@
using System.Windows;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using YwxAppWpfDanMu;
using YwxAppWpfDanMu.Controls;
using YwxAppWpfDanMu.Models;
using YwxAppWpfBarrage;
using YwxAppWpfBarrage.Controls;
using YwxAppWpfBarrage.Models;
namespace WpfApp1;
@@ -19,61 +19,61 @@ public partial class MainWindow : Window
InitializeComponent();
// 订阅事件
DanMuControl.DanMuClick += OnDanMuClick;
DanMuControl.DanMuAdded += OnDanMuAdded;
DanMuControl.DanMuRemoved += OnDanMuRemoved;
BarrageControl.BarrageClick += OnBarrageClick;
BarrageControl.BarrageAdded += OnBarrageAdded;
BarrageControl.BarrageRemoved += OnBarrageRemoved;
}
private void OnDanMuClick(object sender, DanMuEventArgs e)
private void OnBarrageClick(object sender, BarrageEventArgs e)
{
MessageBox.Show($"点击了弹幕: {e.Message.Content}");
}
private void OnDanMuAdded(object sender, DanMuEventArgs e)
private void OnBarrageAdded(object sender, BarrageEventArgs e)
{
// 可以在这里处理弹幕添加事件
}
private void OnDanMuRemoved(object sender, DanMuEventArgs e)
private void OnBarrageRemoved(object sender, BarrageEventArgs e)
{
// 可以在这里处理弹幕移除事件
}
private void PauseButton_Click(object sender, RoutedEventArgs e)
{
DanMuControl.IsPaused = true;
BarrageControl.IsPaused = true;
}
private void ResumeButton_Click(object sender, RoutedEventArgs e)
{
DanMuControl.IsPaused = false;
BarrageControl.IsPaused = false;
}
private void ClearButton_Click(object sender, RoutedEventArgs e)
{
DanMuControl.ClearAll();
BarrageControl.ClearAll();
}
private void Button_Click(object sender, RoutedEventArgs e)
{
// 方法1: 添加单条弹幕
AddSingleTestDanMu();
AddSingleTestBarrage();
// 方法2: 添加多条弹幕(批量)
// AddMultipleTestDanMu(5);
// AddMultipleTestBarrage(5);
}
// 添加单条测试弹幕
private void AddSingleTestDanMu()
private void AddSingleTestBarrage()
{
var colors = new[] { Colors.Red, Colors.Green, Colors.Blue, Colors.Yellow, Colors.White, Colors.Cyan, Colors.Magenta };
var fonts = new[] { "Microsoft YaHei", "SimSun", "Arial", "Segoe UI" };
var message = new DanMuMessage
var message = new BarrageMessage
{
// Content = $"这是单条测试弹幕 {DateTime.Now:HH:mm:ss}",
Content = $"这是单条测试弹幕 ",
@@ -85,19 +85,19 @@ public partial class MainWindow : Window
// Opacity = 0.7 + _random.NextDouble() * 0.3,
AvatarUrl = "https://unpkg.com/outeres@0.0.10/demo/avatar/1.jpg" // 使用占位图作为头像
};
DanMuControl.AddDanMu(message);
BarrageControl.AddBarrage(message);
}
// 添加多条测试弹幕
private void AddMultipleTestDanMu(int count)
private void AddMultipleTestBarrage(int count)
{
var messages = new List<DanMuMessage>();
var messages = new List<BarrageMessage>();
var colors = new[] { Colors.Red, Colors.Green, Colors.Blue, Colors.Yellow, Colors.White, Colors.Cyan, Colors.Magenta };
var fonts = new[] { "Microsoft YaHei", "SimSun", "Arial", "Segoe UI" };
for (int i = 0; i < count; i++)
{
messages.Add(new DanMuMessage
messages.Add(new BarrageMessage
{
Content = $"批量测试弹幕 {i + 1} - {DateTime.Now:HH:mm:ss}",
Color = colors[_random.Next(colors.Length)],
@@ -110,6 +110,6 @@ public partial class MainWindow : Window
});
}
DanMuControl.AddDanMuBatch(messages);
BarrageControl.AddBarrageBatch(messages);
}
}