什么是在C#中做出悸动的最好方法?

时间:2008-09-12 23:27:39

标签: c# treeview

具体来说,我要做的是让我的System.Windows.Forms.TreeView控件中的节点图标在长时间加载操作时发出砰砰声。

1 个答案:

答案 0 :(得分:4)

如果将每个帧加载到ImageList中,则可以使用循环更新到每个帧。 例如:

    bool runThrobber = true;
    private void AnimateThrobber(TreeNode animatedNode)
    {
        BackgroundWorker bg = new BackgroundWorker();
        bg.DoWork += new DoWorkEventHandler(delegate
        {
            while (runThrobber)
            {
                this.Invoke((MethodInvoker)delegate
                {
                    animatedNode.SelectedImageIndex++;
                    if (animatedNode.SelectedImageIndex >= imageList1.Images.Count) > animatedNode.SelectedImageIndex = 0;
                });
                Thread.Sleep(100);
            }
        });
        bg.RunWorkerAsync();
    }

显然,实现这一目标的方法不止一种,但这是基本的想法。