The Tips for Developers > 他のウィンドウを最小化する(VB版)

他のウィンドウを最小化する(VB版)(最終更新日 2002/10/14)

VBによる他ウィンドウの操作
VCで他ウィンドウを最小化させる方法については紹介したが、同様にVBで他ウィンドウを最小化させる。
VCの場合と同様、Win32API を利用してウィンドウをコントロールする。

作成するアプリケーションはVCのときのものをカスタマイズし、入力されたウィンドウタイトルを持つウィンドウを制御するものである。(当然、VCでも同様のインターフェースを作成することができる。)

VBの場合、Win32APIを使用する際には、APIビューアを使用すると便利である。

APIビューアを使用し、VCのときに使用した FindWindow 関数、ShowWindow 関数、IsIconic 関数を検索すると、以下のような文字列が表示される。
FindWindow関数
Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
ShowWindow関数
Public Declare Function ShowWindow Lib "user32" Alias "ShowWindow" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
IsIconic関数
Public Declare Function IsIconic Lib "user32" Alias "IsIconic" (ByVal hwnd As Long) As Long
VBにおいて上記のようなWin32APIを使用する場合は、使用する前に上記の文字列を記述し、宣言しておく必要がある。

サンプルでは、メインフォームの中に宣言することにする。この場合、各関数はPublicではなくPrivateによる宣言になる。
Option Explicit

Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long

Private Declare Function ShowWindow Lib "user32" _
(ByVal hwnd As Long, ByVal nCmdShow As Long) As Long

Private Declare Function IsIconic Lib "user32" (ByVal hwnd As Long) As Long
また、ShowWindow関数で使用する SW_xxxx の定数に関しては、フォーム内でのグローバル変数とし、フォームがロードされた際に初期化するようにしてある。

Win32APIを宣言したあとの処理方法に関してはVCのときとまったく同一であるので、詳細に関しては、ここを参照していただきたい。

サンプルはこちらから。