即効テクニック |
●詳細● フォームのサイズを変更するには、フォームのHeightプロパティに目的の値を設定します。 サンプルでは、フォームの上半分に今日の日付、下半分に時刻が表示されるフォームを作成します。そのフォームに配置されたコマンドボタンをクリックすると、全体が表示されたり、上半分の日付のみが表示されたりとなるように、フォームのサイズを変更します。 ●準備● 高さ144ポイントのフォームを用意します。高さは、プロパティウィンドウの[Height]プロパティで設定してください。 フォームの左上に、コマンドボタン「CommandButton1」を配置します。 フォームの上半分にラベル「Label1」、下半分にラベル「Label2」を配置します。 フォームを表示する時に発生するイベント「Initialize」に、ラベル「Label1」には日付を、ラベル「Label2」には時刻を表示する処理を記述します。
Private Sub UserForm_Initialize() Label1.Caption = Date Label2.Caption = Time End Sub
コマンドボタンをクリックした時に発生するイベント「Click」には、フォームのサイズが144ポイントの場合は72ポイントにサイズを設定し直し、72ポイントの場合は144ポイントに設定し直す処理を記述します。 DoEvents関数は、発生したイベントがオペレーティングシステムによって処理されるように、プログラムで占有していた制御をオペレーティングシステムに渡すフロー制御関数です。
Private Sub CommandButton1_Click() If Me.Height = 144 Then Me.Height = 72 Else Me.Height = 144 End If DoEvents End Sub
●実行方法● フォームを表示します。 最初に表示されたときは、フォーム全体が見えます。 コマンドボタンをクリックすると、フォームのサイズが半分になり、下半分(時刻)が見えなくなります。 再びコマンドボタンをクリックすると、フォーム全体が見えます。