プロが教えるわが家の防犯対策術!

VB6でTabStripコントロールの上にLabelコントロールを乗せようとしています。

もちろん、コンテナに積んで乗せてやれば乗ることはわかっていますが、コンテナに積まず直接乗せようとすると乗りません。配置した後に最前面を指定しても最前面に出てきません。

FrameなどのコンテナのBorderStyleを無にしてFrameに積んでTabStripに配置するという方法はとりたくありません。

TextBoxやChkeckBoxなどのコントロールは直接乗るのにLabelは乗りません。 これはVB6の仕様なのでしょうか、若しくはコンテナに積まず乗せる方法がほかにあるのでしょうか。

A 回答 (2件)

TabStripには、ハンドルを持つオブジェクトしか載りません。


ラベルオブジェクトは、VBが描画している絵です。
フォームや、ピクチャボックスにラベルを張ると、載っているように見えますが、実際にはVBが描画しているものと考えたらいいでしょう。

よってそのままでは乗せることはできません。

どうしてもというのであれば、ピクチャボックスにラベルを張って、そのピクチャボックスをタブStripコントロールに張るという手もあります。
ピクチャボックスのスタイルや縁線を調整したら、ラベルだけ張っているように見せることができます。

個人的には、#1maruru01氏の発言にあるコントロールの方が好きです。
    • good
    • 0
この回答へのお礼

ハンドルを持つオブジェクトしか乗らないというのは初耳でした。 やはりタブダイアログを使用したほうが懸命のようですね。

お礼日時:2003/10/24 16:45

こんにちは。

maruru01です。

タブストリップ(TabStrip)ではなく、タブダイアログ(SSTab)を使用してはいかがですか?
タブダイアログは、コンポーネントで、

「Microsoft Tabbed Dialog Control 6.0」

にチェックするとコントロールツールボックスに追加されて、使用可能になります。
一度試してみては?
    • good
    • 1
この回答へのお礼

タブダイアログにすることにしました。 有り難うございました。

お礼日時:2003/10/24 16:45

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!