屏幕长满美女照片,还带播放音乐哟。(屏幕长满玫瑰花)C# WPF

最近刚学WPF,又恰逢朋友过生日,没什么好送的,就编写了个这个东西,现在贴在这作为纪念。
代码还有些需要改进的地方,不过现在比较忙,就不去优化了额,能实现效果就好。

屏幕长满美女照片(可以随便放什么照片),还带播放音乐哟。


XAML:


         
         


C#:


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Windows.Threading;
using System.Media;

namespace BirthdayGift
{
    /// 
    /// MainWindow.xaml 的交互逻辑
    /// 
    public partial class MainWindow : Window
    {
        MediaElement me = new MediaElement();
        DispatcherTimer timer = new DispatcherTimer();//创建定时器对象
        int screenWidth = (int)SystemParameters.PrimaryScreenWidth; //获取屏幕宽
        int screenHeight = (int)SystemParameters.PrimaryScreenHeight;//获取屏幕高
        int index = 1;  
       
        public MainWindow()
        {
            InitializeComponent();

            this.WindowState = System.Windows.WindowState.Maximized;//最大化窗口
            this.Height = screenHeight;
            this.Width = screenWidth;

            timer.Tick += new EventHandler(timer_Tick); //添加事件,定时到事件
            timer.Interval = TimeSpan.FromMilliseconds(200);//设置定时长
            timer.Start();
        }
   
        void timer_Tick(object sender, EventArgs e)
        {
            Random rdm = new Random(unchecked((int)DateTime.Now.Ticks)); //创建随机生成器对象

            int height = rdm.Next(screenHeight);//产生小于screenHeight的数
            int width = rdm.Next(screenWidth);
            Image im = new Image();

            index = rdm.Next(1, 22);  //照片数目21,随机显示一张照片
            im.Source = new BitmapImage(new Uri(@"photoes/"+index+".jpg", UriKind.Relative));//给出照片路径
            im.Height = 200;
            im.Width = 200;
            im.Stretch = Stretch.Fill;
            //给出距离屏幕边界的距离
            im.Margin = new Thickness(width,height,screenWidth-im.Width-width,screenHeight-im.Height-height);

            gd.Children.Add(im);//添加图片到窗口
           
        }
        /// 
        /// 
        /// 
        private void Window_MouseDoubleClick(object sender, MouseButtonEventArgs e)
        {
            Close();
        }
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            
            me.LoadedBehavior = MediaState.Manual;  //设置为手动控制
            me.UnloadedBehavior = MediaState.Manual;
            me.Source = new Uri(@"E:\Gift\HappyBirthday.mp3", UriKind.RelativeOrAbsolute);
           
            me.IsHitTestVisible = true;
            me.MediaEnded += new  RoutedEventHandler(me_MediaEnded);
            gd.Children.Add(me);
            me.Play();   
        }
        /// 
        /// 媒体播放完后自动重播
        /// 
        /// 
        /// 
        private void me_MediaEnded(object sender, RoutedEventArgs e)
        {
            me.Stop();
            me.Play();
        }
    }
}
屏幕长满美女照片,还带播放音乐哟。(屏幕长满玫瑰花)C# WPF_第1张图片

你可能感兴趣的:(WPF,C#,wpf,c#,桌面长图片,xaml,音乐)