• 締切済み

グリッドのサイズ変更について

【環境】 OS:win2000pro 開発ツール:VB6.0sp5 グリッドツール:TDBGrid 【質問】 VBを用いて、フォームを作成し フォーム上にグリッドを貼り付け使用しているのですが (1)通常、フォームのサイズ>グリッドのサイズ  グリッドのスクロール機能:不要 (2)フォームの端をドラッグandドロップし、サイズを縮小し  フォームのサイズ<グリッドのサイズになった場合  グリッドのスクロール機能:要 なのですが、機能せず、グリッドが一部しか見れていません スクロール機能を用いて、グリッド内容を表示したいのですが  どのように設定すればいいのでしょうか? 以上です

みんなの回答

回答No.1

こんにちは Form_Resizeイベントに TDBGrid.Width=Me.ScaleWidth とすればフォームの幅に合わせてTDBGridの幅も変わり、 スクロールバーが出現します。 気をつけなければいけない点は、フォームの幅よりかなり狭い グリッドにした場合、たとえば TDBGrid.Width=Me.ScaleWidth-3000 のような場合、フォームの幅を小さくしていくとTDBGrid.Widthが 0以下になり「プロパティの値が不正です」のエラーが出ます。 そのような時は、Me.Widthの大きさでIf文をつくり、TDBGrid.Widthが ある一定の数値以下にならないようにしてください。 蛇足ですが上記If文でMe.Widthをある幅以下にならないようにして、 エラーを回避しようとすると、最小化ボタンで最小化したときに 「最大化または最小化されているフォームは、移動またはサイズの 変更することはできません。」 のエラーが出ますので、注意してください。 その場合は上記If文にMe.WindowStateを検証する文を足せば よいと思われます。ちなみに最小化状態のWindowStateは「1」です。(標準は0)

関連するQ&A