はじめに
タイトルどおり、めっちゃ困ったことが3つありましたので、困ったこととその対処法を残しておきます
Visible
TWebBrowserには一応Visibleプロパティがありますが、これは意味がありません。
もし隠したり表示したりするのであれば、他の手段が必要です。
→ 対策)SetBoundsで画面外に逃がすことにしました。
01.cpp
WebBrowser->SetBounds(-100, -100, 1, 1);
Parent
Parentプロパティはdi_IDispatch型になっていて普通にTForm型を入れることはできません。
static_castしてもきっと怒られて終わります
→ 対策)TWinControlでキャストしましょう
02.cpp
static_cast<TWinControl*>(MyForm->WebBrowser)->Parent = SecondForm;
SetBounds(x, y, width, height)
難関です。なんとこいつ、他のコンポーネントと動きが違います。笑えません。
どこが違うかというとwidthかheightに0以下を入れて関数を動かしてしまうと、
動かしたが最後、二度と出てきません。マジかよって思いますよね。マジです。
もしそんなことないって方教えてください。
当方の環境は Win10 C++Builder 10Seatleです。
→ 対策)WidthとHeightは1以上の整数にしましょう
03.cpp
WebBrowser->SetBounds(-100, -100, 1, 1);
結論
TWebBrowserを使うのはやめましょう。
使ってもTCppの方がいいです。
それでもスクロールバー消せませんしね。何じゃそりゃ。
もうこりゃWebKitとかから自力でビルドした方がいいんでしょうね。
追記
C++Builder XE4でも再現を確認いただきました