Parsi Coders
سوال - نسخه قابل چاپ

+- Parsi Coders (http://parsicoders.com)
+-- انجمن: Software Development Programming (http://parsicoders.com/forumdisplay.php?fid=37)
+--- انجمن: Visual Basic Programming (http://parsicoders.com/forumdisplay.php?fid=39)
+---- انجمن: Visual Basic 6 (http://parsicoders.com/forumdisplay.php?fid=44)
+---- موضوع: سوال (/showthread.php?tid=3126)



سوال - attacker - 04-11-2013

چه طور می شه در vb6 پنجره ای رو با عنوانش پیدا کرد و minimize کرد.


RE: سوال - Amin_Mansouri - 04-12-2013

درود
لطفا عنوان مناسب برای تایپک خود استفاده کنید.
یک تایمر بر روی فرم بزار ,رو 1 ثانیه ست کن
بعد جای

کد:
Untitled - Notepad
تایتل پنجره ای که میخوای MINIMIZE بشه رو بده
اگر میخوای عنوان پنجره ها رو هم ببینی اخر کد ME.CAPTION =TXT رو بزن
بفرمایید :  

کد:
'CODE BY WWW.PARSICODERS.COM BY AMIN MANSOURI
'FIND HANDLE AND MINIMIZE WINDOW
Private Const SW_MINIMIZE As Long = 6

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

Private Declare Function PostMessage Lib "user32" Alias "PostMessageA" _
                    (ByVal hwnd As Long, _
                     ByVal wMsg As Long, _
                     ByVal wParam As Long, _
                     ByVal lParam As Long) As Long
Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
Private Declare Function GetForegroundWindow Lib "user32" () As Long
Private Sub Timer1_Timer()
Call FindHandleMin("Untitled - Notepad")

End Sub

Private Sub FindHandleMin(Amin As String)
Dim foreground_hwnd As Long
Dim txt As String
Dim length As Long
    foreground_hwnd = GetForegroundWindow()
    txt = Space$(1024)
    length = GetWindowText(foreground_hwnd, txt, Len(txt))
    txt = Left$(txt, length)
If txt = (Amin) Then
ret = ShowWindow((foreground_hwnd), SW_MINIMIZE)
End If
End Sub