Ejemplo n.º 1
0
 /// <summary>
 /// 采集影片资料
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void button_update_Click(object sender, EventArgs e)
 {
     if (IsRun)
     {
         ShowToast("有任务正在执行");
         return;
     }
     if (selectCard == null)
     {
         ShowToast("请先选择一部影片");
         return;
     }
     panelEx1.Enabled = false;
     ShowToast("正在采集影片信息...");
     FileProcess.Start(new List <VideoInfo>()
     {
         selectCard.VideoFile
     }, config, new FileProcess.OnCompleteHandle(() =>
     {
         Invoke(new EventHandler((o1, e1) =>
         {
             selectCard.Movie = NfoTools.Load(selectCard.VideoFile.filename);
             panelEx1.Enabled = true;
             ShowToast("影片信息采集成功");
         }));
     }),
                       new FileProcess.OnLogHandle((str, logLevel) =>
     {
         LogAdd(str, logLevel);
     }));
 }
Ejemplo n.º 2
0
        private void AddCard()
        {
            Invoke(new EventHandler((o1, e1) =>
            {
                tabControlPanel4.Controls.RemoveByKey("cardPanel");
            }));
            var flowLayoutPanel1 = new Panel()
            {
                Name        = "cardPanel",
                AutoScroll  = true,
                Location    = new Point(55, 44),
                Size        = new Size(tabControlPanel4.Width - 479, tabControlPanel4.Height - 8),
                BorderStyle = BorderStyle.None,
                BackColor   = Color.White
            };
            var count = 6;
            var width = (flowLayoutPanel1.Width - 30) / count;

            for (int i = libPage * 12; i < libPage * 12 + 12; i++)
            {
                if (i >= libFiles.Count)
                {
                    break;
                }
                var item = libFiles[i];
                try
                {
                    //加载影片信息
                    var movieInfo = NfoTools.Load(item);

                    //创建信息卡片
                    var card = new InfoCard()
                    {
                        Width     = width,
                        Height    = (int)(width / 0.55),
                        Cursor    = Cursors.Hand,
                        Movie     = movieInfo,
                        VideoFile = new VideoInfo()
                        {
                            filename = item,
                            name     = Path.GetFileNameWithoutExtension(item),
                            num      = movieInfo.Number,
                            avtype   = NumberTools.IsUncensored(movieInfo.Number) ? "无码" : ""
                        }
                    };
                    //双击播放事件
                    card.DoubleClick += (o1, e1) =>
                    {
                        Process.Start(item);
                    };
                    //单击信息查看
                    card.Click += (o1, e1) =>
                    {
                        ShowMovieDetail(card);
                    };
                    //计算位置
                    var x = (i % 12) % count * card.Width + ((i % 12) % count) + 4;
                    var y = (i % 12) / count * card.Height + ((i % 12) / count * 20) + 10;
                    card.Location = new Point(x, y);
                    flowLayoutPanel1.Controls.Add(card);
                }
                catch (Exception e1)
                {
                    Console.WriteLine(e1.Message);
                }
            }
            if (flowLayoutPanel1.Controls.Count > 0)
            {
                Invoke(new EventHandler((o1, e1) =>
                {
                    tabControlPanel4.Controls.Add(flowLayoutPanel1);
                }));
            }
            else
            {
                flowLayoutPanel1.Dispose();
            }
        }