WinForm实现仿视频播放器左下角滚动新闻效果的方法

 更新时间:2015年08月22日 16:31:39   作者:我心依旧  
这篇文章主要介绍了WinForm实现仿视频播放器左下角滚动新闻效果的方法,涉及WinForm窗口滚动字幕设置的实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了WinForm实现仿视频播放器左下角滚动新闻效果的方法。分享给大家供大家参考。具体实现方法如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Drawing.Imaging;
using System.IO;
using System.Xml.Linq;
namespace App
{
 public partial class Form7 : Form
 {
  private int Index { get; set; }
  private DataTable dataTable { get; set; }
  private System.Timers.Timer timer { get; set; }
  public Form7()
  {
   InitializeComponent();
   dataTable = new DataTable();
   dataTable.Columns.AddRange(new DataColumn[] { 
    new DataColumn("Id",typeof(System.Int32)),
    new DataColumn("DisplayName",typeof(System.String)),
    new DataColumn("URL",typeof(System.String))
   });
   DataRow row = dataTable.NewRow();
   row["Id"] = 1;
   row["DisplayName"] = "百度百科欢迎你!";
   row["URL"] = "http://www.baidu.com";
   dataTable.Rows.Add(row);
   row = dataTable.NewRow();
   row["Id"] = 2;
   row["DisplayName"] = "刘XX明星已经现身搜狐网站,赶快去围观!";
   row["URL"] = "http://www.sohu.com";
   dataTable.Rows.Add(row);
   row = dataTable.NewRow();
   row["Id"] = 3;
   row["DisplayName"] = "新浪新闻出现重大新闻,点我快速查看!";
   row["URL"] = "http://www.sina.com.cn";
   dataTable.Rows.Add(row);
   row = dataTable.NewRow();
   row["Id"] = 4;
   row["DisplayName"] = "网易客户端出现新版本啦,赶快去体验把!";
   row["URL"] = "http://www.126.com";
   dataTable.Rows.Add(row);
   label1.Text = lblContent.Top.ToString();
   timer = new System.Timers.Timer(2000);
   timer.Elapsed += delegate
   {
    CharsMouse();
   };
   timer.Start();
   button1.Click += delegate
   {
    CharsMouse();
   };
   button2.Click += delegate
   {
    timer.Dispose();
   };
   lblContent.LinkClicked += delegate
   {
    label2.Text = dataTable.Rows[Index]["URL"].ToString();
   };
  }
  void CharsMouse()
  {
   this.lblContent.Invoke(new MethodInvoker(delegate
   {
    if (Index >= dataTable.Rows.Count)
     Index = 0;
    while (lblContent.Top > -lblContent.Height)
    {
     lblContent.Top = lblContent.Top - 2;
     label1.Text = "1.Top=" + lblContent.Top.ToString();
     System.Threading.Thread.Sleep(100);
     Application.DoEvents();
    }
    lblContent.Text = dataTable.Rows[Index]["DisplayName"].ToString();
    lblContent.Top = 2;
    timer.Enabled = false;
    Application.DoEvents();
    System.Threading.Thread.Sleep(2000);
    timer.Enabled = true;
    Index++;
   }));
  }
 }
}

希望本文所述对大家的C#程序设计有所帮助。

相关文章

  • C# 异步多线程入门到精通之Thread篇

    C# 异步多线程入门到精通之Thread篇

    Thread 是 1.0 时代的产物,当时 C# 就考虑到了多线程,于是就设计了 Thread 。其实现在不推荐使用,除非在维护老的项目已经用了的。Thread 也是比较鸡肋的,有很多缺陷,但也并不是一无是处
    2021-11-11
  • C# TreeView读取数据库简单实例

    C# TreeView读取数据库简单实例

    这篇文章主要介绍了
    2013-12-12
  • 在C#中发送自定义HTML格式邮件的示例详解

    在C#中发送自定义HTML格式邮件的示例详解

    在C#中发送自定义HTML格式邮件是一项常见的任务,这在开发电子邮件营销系统或任何需要通过电子邮件与用户沟通的应用程序中都非常重要,以下是如何在C#中发送自定义HTML格式邮件的详解与示例,需要的朋友可以参考下
    2024-07-07
  • C#中的委托delegate用法的示例详解

    C#中的委托delegate用法的示例详解

    这篇文章主要介绍了C#中的委托用法的示例详解。本章将由浅入深地讲述什么是委托、为什么要使用委托、事件的由来、.NET Framework 中的委托和事件、委托中方法异常和超时的处理、委托与异步编程、委托和事件对Observer 设计模式的意义。感兴趣的可以了解一下
    2020-07-07
  • C#中的高效IO库System.IO.Pipelines

    C#中的高效IO库System.IO.Pipelines

    这篇文章介绍了C#中的高效IO库System.IO.Pipelines,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • C#中调用命令行cmd开启wifi热点的实例代码

    C#中调用命令行cmd开启wifi热点的实例代码

    最近想在win7上开启wifi热点,于是就弄出下面这个小东西,里面涉及如何在控制台上输入命令,分享一下。首先在VS中创建一个window窗口,然后创建两个四个button,两个输入框
    2013-04-04
  • C# 语音功能的实现方法

    C# 语音功能的实现方法

    最近看了一些资料,是c#实现语音功能的。现在就简单的讲一下怎么实现。
    2013-03-03
  • C#调用SQL语句时乘号的用法

    C#调用SQL语句时乘号的用法

    这篇文章主要介绍了C#调用SQL语句时乘号的用法,可避免因符号引起的程序错误,是C#程序设计人员有必要掌握的,需要的朋友可以参考下
    2014-08-08
  • C#使用 Salt + Hash 来为密码加密

    C#使用 Salt + Hash 来为密码加密

    本文主要介绍了几种常见的破解密码的方法,为密码加盐(Salt)以及在.NET中的实现等。具有一定的参考价值,下面跟着小编一起来看下吧
    2017-01-01
  • C#中使用HttpDownLoadHelper下载文件实例

    C#中使用HttpDownLoadHelper下载文件实例

    这篇文章主要介绍了C#中使用HttpDownLoadHelper下载文件的方法,并实例讲述了在webfrom中与在mvc中的实现方法,需要的朋友可以参考下
    2014-10-10

最新评论