手机
当前位置:查字典教程网 >编程开发 >C#教程 >C#滚动字幕的实现方法
C#滚动字幕的实现方法
摘要:本文实例讲述了C#滚动字幕的实现方法,分享给大家供大家参考。具体方法如下:在c#中其实滚动屏幕的实现其实很简单,只需要用到Graphics....

本文实例讲述了C#滚动字幕的实现方法,分享给大家供大家参考。具体方法如下:

在c#中其实滚动屏幕的实现其实很简单,只需要用到Graphics.DrawString方法. Graphics.DrawString (String s, Font font, Brush brush, PointF point) 在指定位置并且用指定的 Brush 和 Font 对象绘制指定的文本字符串。

参数说明:

s要绘制的字符串。

font它定义字符串的文本格式。

brush它确定所绘制文本的颜色和纹理。

point结构,它指定所绘制文本的左上角。

其中,我们要用到的就是point函数,通过控制它的X或Y参数来控制文字的偏移量.下面以水平滚动字幕为例.

复制代码 代码如下:private Label label = new Label();

public string text="csdn baihe_591";

private void FrmShow_Load(object sender, EventArgs e)

{

this.label.Location = new Point(149, 13);

this.label.Size = new Size(134, 16);

this.Controls.Add (label);

this.label.Text = "";

this.timer1.Enabled = true;

this.timer1.Interval = 500;

p = new PointF(this.label.Size.Width, 0);

}

PointF p;

Font f = new Font("宋体", 10);

Color c = Color.White;

string temp;

private void timer1_Tick(object sender, EventArgs e)

{

Graphics g = this.label.CreateGraphics();

SizeF s = new SizeF();

s = g.MeasureString(text, f);//测量文字长度

Brush brush = Brushes.Black;

g.Clear(c);//清除背景

if (temp != text)//文字改变时,重新显示

{

p = new PointF(this.label.Size.Width, 0);

temp = text;

}

else

p = new PointF(p.X - 10, 0);//每次偏移10

if (p.X <= -s.Width)

p = new PointF(this.label.Size.Width, 0);

g.DrawString(text, f, brush, p);

}

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

【C#滚动字幕的实现方法】相关文章:

c#之滚动字幕动画窗体的实现详解

分享C#操作内存读写方法的主要实现代码

C#注释的一些使用方法浅谈

c#简单读取文本的实例方法

C#生成影像金字塔的原理实例

c#模拟平抛运动动画的方法详解

c#图片添加水印的实例代码

C# 改变无边框窗体尺寸大小的方法

C#连接db2数据库的实现方法

C#TreeView 无限级别分类实现方法

精品推荐
分类导航