2011-10-01 5 views
1

메인 양식에 TCppWebBrowser을 여러 개 사용하고 있습니다. 애플리케이션을 시작하면 마지막 인터넷 세션의 모든 탭이 복구됩니다. 하지만 이로 인해 응용 프로그램의 주요 형식이 많이 과부하됩니다. 내 질문은 어떻게 내가 기본 폼의 오버로드를 피할 수 있습니까?다중 탭 webbrowser로 응용 프로그램 기본 양식 과부하를 피하려면 어떻게해야합니까?

나는 그것을 성취하려했지만 성공하지 못했습니다. 나는 C++ Builder에서 TThread 클래스를 사용하고 거기에서 네비게이션을 시작하려고 시도했지만 실패한 메인 폼은 여전히 ​​오버로딩되었습니다. 나는 또한 CreateThread() - 똑같은 시도했다.

은 내가 발견 :

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

그러나 나는 매우 잘 이해가 안 돼요.

누군가 제 질문을 C++ Builder에서 어떻게 해결하는지 말해주십시오!

답변

0

가능한 경우 스레드를 옆으로두고 한 페이지 씩로드하려고 시도합니다. 쉽습니다. 모두 TCppWebBrowsers의 콘텐츠를 한 번에로드하지 말고 첫 번째 (사용자에게 표시) 만로드 한 다음 다른 하나를 하나씩로드하여 시작하십시오.

로드 다음 중 하나가 발생 탭 :

  • 사용자가 탭을 활성화 - 당신은 확실히이 페이지를로드해야합니다 즉시
  • 응용 프로그램이 유휴 상태이고 다른 탭의로드입니다 - 다음로드 one

모든 탭이로드 될 때까지 이렇게하십시오.

물론이 지연로드를 구현하기 위해 "세션 복구 메커니즘"에 영향을 줄 수 있어야합니다. 그러나 스레드를 추가 할 수 있다면 탭을 하나씩로드 할 수 있어야합니다. 이렇게하면 장시간에 걸쳐로드가 분산되므로 시작할 때 앱이 과부하되는 것을 방지해야합니다.

관련 문제