winform状态栏跑马灯(图片+文字 )问题

.Net技术 码拜 6年前 (2015-05-10) 349次浏览 0个评论
 

查找了下往上都是label移动的例子,但是label不能添加到状态栏上
还有用gdi绘制的例子,但是toolstripstatuslabel不支持creategraphics方法.
谁做过,给代码看看吧.

顶顶,没人啊
10分
做一个假的状态栏啊,放个容器在下面,然后加入。
不想做假的,没有人写过么.类似于CCTV-8屏幕下方的新闻滚动显示,图片+文字  图片+文字….
20分
自己写个自定义类,就可以了,我写了个sample,

public partial class MyToolStripStatusLabel : ToolStripStatusLabel
    {
        private Timer timer;
        private List<string> lstContents;
        private int index;

        public MyToolStripStatusLabel()
        {
            InitializeComponent();

            timer = new Timer();
            timer.Interval = 1000;
            timer.Tick += new EventHandler(timer_Tick);

            lstContents = new List<string>(5);
            lstContents.Add("a");
            lstContents.Add("b");
            lstContents.Add("c");
            lstContents.Add("d");
            lstContents.Add("e");

            timer.Enabled = true;
        }

        void timer_Tick(object sender, EventArgs e)
        {
            index = index % 5;
            this.Text = lstContents[index++];
        }
    }
引用 5 楼 xiaoyuzi 的回复:

自己写个自定义类,就可以了,我写了个sample,
C# code

public partial class MyToolStripStatusLabel : ToolStripStatusLabel
    {
        private Timer timer;
        private List<string> lstContents;
        private in……

–虽然逐条显示没有问题,但是怎么能够移动呢

10分
可以这么逐条显示阿
比如滚动abcdef
那么逐次显示
a
ab
abc
abcd
abcde
abcdef
终于有点头绪了,做完了和大家共享
说下思路吧,因为要用到项目中代码先不公开了
—-
首先要启动一个死循环的后台线程
在线程中获取stauslabel的大小生成一个相同大小的bitmap.
现在可以对staslabel进行绘制了,绘制上图片和文本,记录当前位置.设置staslabel的背景
下次改变位置,即可.
我想实现一个屏幕保护程序 并且屏幕上有个小汽车在跑要看着跟真的差不多的那种,不知道如何实现,各位大哥大姐能帮我指点指点吗?最好是有个Demo我看了就明白了。

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明winform状态栏跑马灯(图片+文字 )问题
喜欢 (0)
[1034331897@qq.com]
分享 (0)

文章评论已关闭!