6.フォームの最大化・最小化を取得及び設定・画面の中央に表示する |
1.フォームを画面の中央に表示する 2.フォームの最大化・最小化を取得する 3. 4. 5. 6. |
下記プログラムコードに関する補足・注意事項 動作確認:Windows Vista・Windows 7 (32bit) / VB6.0(SP6) Option :[Option Explicit] 参照設定: 参照設定方法参照 使用 API: その他 : : |
1.フォームを画面の中央に表示する |
VB5.0からの機能だと思うのですがフォームの StartUpPosition プロパティを 2 (画面全体の中央に指定します)に設定することで実現できます。 ヘルプには 構文 object.StartUpPosition = position 解説 StartUpPosition プロパティをプログラムまたは [プロパティ] ウィンドウで設定できます。と書いてはありますが Form1.StartUpPosition = 2 とプログラミングすると値の取得のみ可能なプロパティ・・・・・のエラーが表示され値を設定することは出来ません。デザイン時にプロパティで設定して下さい。 プログラム上で実行する場合 Option Explicit 'SampleNo=100 2002.05.19 Private Sub Form_Load() 'フォームを画面の中央に表示 Dim ScHe As Integer Dim ScWi As Integer ScHe = Screen.Height ScWi = Screen.Width Form1.Move (ScWi \ 2) - (Form1.Width \ 2), (ScHe \ 2) - (Form1.Height \ 2) '又はフォームの StartUpPosition プロパティを 2 に設定 End Sub |
2.フォームの最大化・最小化を取得する |
WindowState プロパティの値を取得することで実現出来ます。 Private Sub Form_Resize() 'ウィンドウの表示状態を取得する Select Case Me.WindowState Case vbMaximized Label1.Caption = "最大" Case vbMinimized Label1.Caption = "最小" Case Else Label1.Caption = "デフォルト" End Select End Sub 次の例はコマンドボタンをクリックする度に最大化・元のサイズにと変更する Private Sub Command1_Click() 'ウィンドウの表示状態を設定する 'クリック毎に表示を切り替え If Form1.WindowState = vbMaximized Then Form1.WindowState = vbNormal ElseIf Form1.WindowState = vbNormal Then Form1.WindowState = vbMaximized End If End Sub 最小化に設定後元のサイズに戻す Private Sub Command2_Click() '最小化に設定 Form1.WindowState = vbMinimized Timer1.Interval = 2000 End Sub Private Sub Timer1_Timer() '2秒経ったら元のサイズに戻す Form1.WindowState = vbNormal Timer1.Interval = 0 End Sub |
3. |
4. |
5. |
6. |
検索キーワード及びサンプルコードの別名(機能名) |
フォームを画面の中央に表示 ウィンドウの表示状態を取得する 最小化に設定 最大化にする 元のサイズに戻す |