常に手前に表示を設定/解除する
VisualBasic6用
常に手前に表示を設定/解除する
Private Type RECT left As Long 'WindowのX座標 top As Long 'WindowのY座標 right As Long 'Windowの右端の座標 bottom As Long 'Windowの底にあたる部分の座標 End Type Const HWND_TOP = 0 '手前にセット Const HWND_BOTTOM = 1 '後ろにセット Const HWND_TOPMOST = -1 '常に手前にセット Const HWND_NOTOPMOST = -2 '常に手前、解除 Const SWP_SHOWWINDOW = &H40 '表示する ' ' 常に手前に表示を設定/解除する ' lngHWnd : 対象のウィンドウハンドル ' bolIsTop : True - 設定 / False - 解除 ' Sub SetFormTop(lngHWnd As Long, bolIsTop As Boolean) Dim mLeft Dim mTop Dim mWidth Dim mHeight Dim lpRect As RECT SetFormTop = GetWindowRect(lngHWnd, lpRect) mLeft = lpRect.left mTop = lpRect.top mWidth = lpRect.right - lpRect.left mHeight = lpRect.bottom - lpRect.top If bolIsTop Then SetFormTop = SetWindowPos(lngHWnd, HWND_TOPMOST, mLeft, mTop, mWidth, mHeight, SWP_SHOWWINDOW) Else SetFormTop = SetWindowPos(lngHWnd, HWND_NOTOPMOST, mLeft, mTop, mWidth, mHeight, SWP_SHOWWINDOW) End If End Sub