65.9K
CodeProject 正在变化。 阅读更多。
Home

RssToolbar - 桌面 RSS 播报器

starIconstarIconstarIcon
emptyStarIcon
starIcon
emptyStarIcon

3.78/5 (7投票s)

2009年6月29日

CPL

2分钟阅读

viewsIcon

85850

downloadIcon

2416

将 RSS 头条信息流式传输到桌面

news-ticker

引言

RssToolbar 是一个小型实用程序,它会停靠在屏幕顶部,并以股票风格的滚动条将 RSS 新闻源滚动到桌面。

背景

几年前,我开发了这个产品,将其分发给客户工作站,预配置为连接到我们组织的 RSS 订阅源,作为一种简单而令人印象深刻的方式,让客户了解我们的最新新闻和警报。 最终,该产品被撤回,因为大多数客户使用它来向他们的桌面流式传输当地天气、体育和新闻,而不是我们希望他们消费的订阅源!

RssToolbar 最初是用 Visual Basic 在 .NET v1.1 中开发的。 后来它被匆忙地转换为 C#,但从未经过同行评审或认证。 几天前,我偶然发现了这个旧产品,并决定将其移植到 .NET v2.0。

使用工具栏

RssToolbar 使用 INI 文件 (settings.ini) 进行配置(是的,我告诉过你这东西很老!)。 如果您使用的是 Vista,那么您可能需要使用 Wordpad 来打开 settings.ini 文件,因为 Vista 似乎不允许您在记事本中打开 *.ini 文件。 在下面您可以看到配置

settings.ini

[Feeds]
1=https://codeproject.org.cn/webservices/articlerss.aspx?cat=1
2=http://rss.slashdot.org/Slashdot/slashdot
3=http://feeds.digg.com/digg/container/technology/popular.rss
4=http://feeds.gawker.com/lifehacker/full
5=http://feeds.gawker.com/kotaku/full

[Preferences]
speed=25
maxstories=10
maxheadlines=50
fontface=Arial
fontsize=14

配置部分 - 订阅源

订阅源部分允许用户指定他们希望在滚动条中流式传输的订阅源。 目前,最多允许 5 个订阅源,并且只要 RSS 订阅源提供商使用 RSS 兼容 XML 文档,滚动条就能够处理它们。

配置部分 - 首选项

  • speed - 滚动条滚动的速度。 越低越快,越高越慢
  • maxstories - 从一个订阅源流式传输的最大头条新闻数量
  • maxheadlines - 要流式传输的所有订阅源的最大头条新闻数量
  • fontface - 滚动条的字体
  • fontsize - 滚动条的字号

.NET Framework 的早期版本对标签控件有大约 2,000 个字符的限制,因此 maxstories/maxheadlines 设置允许您在达到限制之前将各种不同的订阅源放入滚动条。

运行时选项

通过右键单击滚动条,您可以显示几个选项

rssticker02.jpg

  • 刷新 - 获取所有订阅源并重建滚动条流
  • 启动 - 从滚动条中导出订阅源和链接,并将它们发布到一个 HTM 文件中
  • 退出 - 退出滚动条控件

在下面您可以看到当您单击“启动”选项时生成的网页

rssticker03.jpg

源代码

这真的是非常简单的事情,可能甚至不值得一提。

为了获取和解析 RSS 订阅源,我使用了略微修改后的 RSS.NET

为了读取 INI 配置文件,我使用了我编写的一个原始的 IniDataReader 类,它使用正则表达式。 滚动条本身是一个基本的面板、文本框和标签控件,连接到一个计时器。 计时器的 _Tick 事件是实际创建滚动感觉的事件。

历史

  • 2009 年 6 月 29 日 - 提交文章
© . All rights reserved.