{在Delphi中实现动态字幕}
来源:互联网 发布:画板软件下载 编辑:程序博客网 时间:2024/04/27 22:54
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
一、设计思路
首先在窗体上放置一个Panel控件,并在Panel控件中放置需要显示的文字,然后通过Timer控件,在一定的间隔时间内不断改变Panel控件的位置就可以实现滚动字幕的效果了。
二、实现方法
1.新建一个窗体,设置其属性如下:
Name:frmAbout1
AutoScroll:False
2.在窗体上放置一个Panel控件,其默认名称为Panel1,设置其属性如下:
BevelOuter:bvNone
Caption:(设为空)
调整Panel1的高度和宽度,使其成一竖长条形,其高度视需显示的内容多少而定(可以大于窗体的高度)。
3.在Panel1上面放置Label控件以显示文字,当然你也可以在上面放置Image控件来显示图片,但图片的尺寸不可太大,否则会影响显示效果。
4.在窗体上放置一个Timer控件,其默认名称为Timer1,将其Interval属性值设为50,并在其OnTimer事件中输入以下代码:
if Panel1.top>-Panel1.height then
Panel1.top:=Panel1.top-1
else
Panel1.top:=frmAbout1.height-35;
{判断Panel1是否移动到了窗体的最上端,如果不是,就向上移动一个像素点的位置;如果是的话,就将Panel1移动到窗体的最下端,循环显示字幕}
5.在窗体上放置一个Button控件,将其Caption属性设为“确定”,并在OnClick事件中输入以下代码:
close;{关闭窗体}
三、改进分析
以上是一个简单的滚动字幕的实现过程,但还有一个地方需要进一步完善:如果窗体使用了图片作为背景的话,Panel控件会遮挡住部分背景图案。其实要解决这个问题,我们完全可以不使用Panel控件,而是直接将Label控件放置在窗体上,并将Label控件的Transparent(透明)属性值设为True,然后通过Timer控件直接控制这些Label控件的移动。限于篇幅,在这里笔者就不再具体叙述了<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 160x600, 创建于 08-4-23MSDN */google_ad_slot = "4367022601";google_ad_width = 160;google_ad_height = 600;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
{ 如果大家使用过《金山词霸》或《东方快车》的话,一定会对其“关于”窗口中的滚动字幕感兴趣,其实利用Delphi中的Timer控件可以很轻松地实现这一功能。一、设计思路
首先在窗体上放置一个Panel控件,并在Panel控件中放置需要显示的文字,然后通过Timer控件,在一定的间隔时间内不断改变Panel控件的位置就可以实现滚动字幕的效果了。
二、实现方法
1.新建一个窗体,设置其属性如下:
Name:frmAbout1
AutoScroll:False
2.在窗体上放置一个Panel控件,其默认名称为Panel1,设置其属性如下:
BevelOuter:bvNone
Caption:(设为空)
调整Panel1的高度和宽度,使其成一竖长条形,其高度视需显示的内容多少而定(可以大于窗体的高度)。
3.在Panel1上面放置Label控件以显示文字,当然你也可以在上面放置Image控件来显示图片,但图片的尺寸不可太大,否则会影响显示效果。
4.在窗体上放置一个Timer控件,其默认名称为Timer1,将其Interval属性值设为50,并在其OnTimer事件中输入以下代码:
if Panel1.top>-Panel1.height then
Panel1.top:=Panel1.top-1
else
Panel1.top:=frmAbout1.height-35;
{判断Panel1是否移动到了窗体的最上端,如果不是,就向上移动一个像素点的位置;如果是的话,就将Panel1移动到窗体的最下端,循环显示字幕}
5.在窗体上放置一个Button控件,将其Caption属性设为“确定”,并在OnClick事件中输入以下代码:
close;{关闭窗体}
三、改进分析
以上是一个简单的滚动字幕的实现过程,但还有一个地方需要进一步完善:如果窗体使用了图片作为背景的话,Panel控件会遮挡住部分背景图案。其实要解决这个问题,我们完全可以不使用Panel控件,而是直接将Label控件放置在窗体上,并将Label控件的Transparent(透明)属性值设为True,然后通过Timer控件直接控制这些Label控件的移动。限于篇幅,在这里笔者就不再具体叙述了<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 160x600, 创建于 08-4-23MSDN */google_ad_slot = "4367022601";google_ad_width = 160;google_ad_height = 600;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
- {在Delphi中实现动态字幕}
- {在Delphi中实现动态字幕}
- QT 实现在ui控件QLabel中实现滚动字幕
- 用paint()函数实现在对话框中显示滚动字幕!
- 在Delphi中动态生成QuickReport报表
- 在Delphi中使用动态图标
- 在delphi中动态创建控件
- 在Delphi中使用动态图标
- 在Delphi中使用动态图标
- 在Delphi中使用动态图标
- 在Delphi中动态生成QuickReport报表
- 在Delphi中使用动态图标
- 在Delphi中动态创建ActiveX组件
- 直播中字幕的实现
- 如何在Delphi中实现ASP编程
- 在Delphi中实现ASP编程
- 在Delphi中实现StringTokenizer功能模块
- 在DELPHI中实现打印的预览
- JPA总结
- MySQL进阶_SELECT篇(二)
- 用DELPHI给OICQ动手术(二)
- CSS样式表一席谈之绝对定位与相对定位
- Servlet总结
- {在Delphi中实现动态字幕}
- 精通数据库系列之入门-技巧篇4
- 用CSS制作扑克牌
- JSP总结
- awk 简单用法
- 软件产业研发即将进入《4S主义》阶段
- 精通数据库系列之入门-技巧篇2
- 在Kylix中模拟Windows API中的FindWindow函数
- Struts