【问题标题】:How to avoid overloading of application main form by multi tabs webbrowser?如何避免多标签网络浏览器使应用程序主窗体超载?
【发布时间】:2011-11-28 23:27:18
【问题描述】:

我在主窗体上使用了多个TCppWebBrowsers,当我启动应用程序时,上次互联网会话的所有选项卡都已恢复。但这使得应用程序的主要形式过载很多。我的问题是如何避免主表单重载?

我尝试自己去实现它,但没有成功。我使用了 C++ Builder 中的 TThread 类并尝试从那里开始导航,但不成功,主窗体仍然重载。我也试过CreateThread() - 同样的事情。

我找到了:

WebBrowser Control (MFC) created in seperate thread working in Windows 7 and Vista, but Windows XP

但是这个我不是很懂。

请有人告诉我如何在 C++ Builder 中解决我的问题!

【问题讨论】:

    标签: browser webbrowser-control c++builder twebbrowser


    【解决方案1】:

    如果可能的话,我会把线程放在一边,然后尝试一页接一页地加载。这更容易。您所要做的就是不要一次加载所有TCppWebBrowsers 的内容,而是先加载第一个(对用户可见),然后一个接一个地加载其他内容。

    当发生以下情况之一时加载标签:

    • 用户激活了一个标签 - 您绝对应该立即加载此页面
    • 应用程序处于空闲状态,没有加载其他选项卡 - 加载下一个选项卡

    执行此操作,直到加载所有选项卡。

    当然,您需要能够以某种方式影响“会话恢复机制”来实现这种延迟加载。但是,如果您能够添加线程,那么您也应该能够一一加载选项卡。这将使负载分散更长的时间,并应防止您的应用在启动时过载。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-24
      • 1970-01-01
      • 2011-05-29
      • 2021-11-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多