【问题标题】:Loading Symbol in WebBrowser Control在 WebBrowser 控件中加载符号
【发布时间】:2012-09-02 13:48:25
【问题描述】:

当我的客户等待页面加载时,我想在我的网络浏览器中显示一个大的圆形加载符号。是否可以使用 Visual Studio 中的 webbrowser 工具?如果可能的话怎么办?我正在使用 c#。任何建议将不胜感激。谢谢..:)

【问题讨论】:

    标签: c# .net browser webbrowser-control


    【解决方案1】:

    您可以使用以下代码。

    基本思想是检查 WebBrowser 控件的 ProgressChanged 事件并在 WebBrowser 控件上显示一个 PictureBox。

        PictureBox pb = new PictureBox();
        public Form6()
        {
            InitializeComponent();
            pb.Image = WindowsFormsApplication1.Properties.Resources.loading7;
            pb.Visible = false;
            pb.Width = pb.Image.Width;
            pb.Height = pb.Image.Height;
            this.Controls.Add(pb);
        }
    
        private void webBrowser1_ProgressChanged(object sender, WebBrowserProgressChangedEventArgs e)
        {
            if (e.CurrentProgress < e.MaximumProgress)
            {
                if (!pb.Visible)
                {
                    int x = webBrowser1.Left + ((webBrowser1.Width - pb.Width) / 2);
                    int y = webBrowser1.Top + ((webBrowser1.Height - pb.Height) / 2);
                    pb.Location = new Point(x, y);
                    pb.BringToFront();
                    pb.Visible = true;
                }
            }
            else
            {
                pb.Visible = false;
            }
        }
    

    【讨论】:

    • ProgressChanged 非常不可靠,请改用 DocumentCompleted。
    • 感谢您的快速回复。我会检查并告诉你。
    • 是的,它的工作原理。但是,如何让它动态呢?我的意思是,如何使圆圈成为旋转圆圈?我需要应用多个图像吗?任何建议、指南或教程链接将不胜感激。再次感谢。
    • 参见 System.Drawing.ImageAnimator
    • 谢谢盛。我会检查的。
    猜你喜欢
    • 2017-11-07
    • 2021-07-30
    • 2015-03-11
    • 1970-01-01
    • 2010-12-15
    • 2013-10-31
    • 2012-05-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多