PDA

View Full Version : Focus دائم به فرم



aleas2
جمعه 11 مرداد 1398, 02:23 صبح
سلام توسط SetWindowPos مشخص میکنم فرم بالای تمام‌پنجره ها باشه اما اگر یه پنجره باز بشه فوکوس تغییر میکنه چکار کنم فوکوس دائم بر روی فرم باشه؟

میخوام دائم همیشه فوکوس بر روی فرم باشه

aban56
جمعه 15 شهریور 1398, 11:58 صبح
سلام روزتون بخیر

من دقیقا مشکل شما رو دارم. آیا تونستید کاری کنید فرمتون همیشه on top باشه؟

isaac23
چهارشنبه 27 شهریور 1398, 20:40 عصر
Option ExplicitPrivate Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long


Const SWP_NOMOVE = 2
Const SWP_NOSIZE = 1
Const FLAGS = SWP_NOMOVE Or SWP_NOSIZE
Const HWND_TOPMOST = -1
Const HWND_NOTOPMOST = -2


Private Function SetTopMostWindow(hwnd As Long, Topmost As Boolean) As Long
If Topmost = True Then 'Make the window topmost
SetTopMostWindow = SetWindowPos(hwnd, HWND_TOPMOST, 0, 0, 0, 0, FLAGS)
Else
SetTopMostWindow = SetWindowPos(hwnd, HWND_NOTOPMOST, 0, 0, 0, 0, FLAGS)
SetTopMostWindow = False
End If
End Function




Private Sub Form_Load()
Dim lR As Long
lR = SetTopMostWindow(Form1.hwnd, True)
'For inactive always on top Properties : lR = SetTopMostWindow(Form1.hwnd, False)
End Sub