Citat:
stefanpn: Moze li ta crna pozadina eksplozije da bude transparentna sa alfa kanalom?
Jer bi onda eksplozije izgledale super!
Naravno, magical wand tool :)
Citat:
@Eurora
Ja u VB-u to resavam ovako:
Code:
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Dim ProzorHwnd as Long
Private Sub Form_Load()
ProzorHwnd = FindWindow("Notepad", vbNullString) ' Ja sam stavio da trazi Notepad, ali tu upisujes ime prozora
End Sub
Moralo bi da radi i u FreeBASIC-u... :)
evo moje LookupWindow fje (u ovom slucaju je jednostavnije koristiti FindWindow k'o sto je Stefan predlozio, al evo mozda nekom zatreba ovakva funkcionalnost)
Code:
Private Declare Function FindWindowEx Lib "user32.dll" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
Private Declare Function GetClassName Lib "user32.dll" Alias "GetClassNameA" (ByVal hwnd As Long, ByVal lpClassName As String, ByVal nMaxCount As Long) As Long
Private Declare Function GetWindowText Lib "user32.dll" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
Public Function LookupWindow(Optional ByVal ClassName As String, Optional ByVal Title As String, Optional UseLike As Boolean = False, Optional ByVal Parent As Long) As Long
LookupWindow = GetChild(Parent, ClassName, Title, UseLike)
End Function
'
Private Function GetChild(Optional ByVal hwnd As Long, Optional ByVal ClassName As String, Optional ByVal Title As String, Optional UseLike As Boolean = False)
Dim lHandle As Long
Dim lRet As Long
Dim sBuffer As String
Dim bClassMatch As Boolean
Dim bTitleMatch As Boolean
Do
lHandle = FindWindowEx(hwnd, lHandle, vbNullString, vbNullString)
bClassMatch = False
bTitleMatch = False
If lHandle <> 0 Then
bClassMatch = LenB(ClassName) = 0
bTitleMatch = LenB(Title) = 0
If Not bClassMatch Then
sBuffer = String(160, 0)
lRet = GetClassName(lHandle, sBuffer, 160)
sBuffer = Left$(sBuffer, lRet)
bClassMatch = (UseLike And (sBuffer Like ClassName)) Or (Not UseLike And (ClassName = sBuffer))
End If
If Not bTitleMatch Then
sBuffer = String(160, 0)
lRet = GetWindowText(lHandle, sBuffer, 160)
sBuffer = Left$(sBuffer, lRet)
bTitleMatch = (UseLike And (sBuffer Like Title)) Or (Not UseLike And (Title = sBuffer))
End If
If bClassMatch And bTitleMatch Then
GetChild = lHandle
Exit Function
Else
lRet = GetChild(lHandle, ClassName, Title, UseLike)
If lRet <> 0 Then
GetChild = lRet
Exit Function
End If
End If
End If
Loop While lHandle
End Function
samo treba sa Spy++ videti klasu prozora koji se dobije sa ScreenRes