16/12/11 21:28
Nevinyrral
Grazie per l'attenzione,
sto cercando di fare un crosshair per un video gioco dove nessun arma ha il mirino apparte una ed è un po fastidioso, specialmente per i novizzi quindi ho cercato di fare questa applicazione con il seguente codice:
per rendere il form trasparente
ed applicare la trasparenza
è un vecchio trucchetto che mi ha insegnato un amico poi ho fatto un timer per spegnere l'applicazione non avendo pulsanti
Dopo di che ho fatto un form 500 x 500 con due linie rosse puu.sh/… che stanno perfettamente al centro senza aver bisogno della risoluzione grazie ha StartUpPosition = 1.
Normalemente funziona, il problema è che questo gioco è tutto schermo e non so perche non ci va sopra anche con form1.show ogni millesimo di secondo, in Java non son ancora capace a fare questa applicazione, mi sapreste dare qualche pezzo di codice in più per farlo funzionare anche sulle applicazione massimizate?
sto cercando di fare un crosshair per un video gioco dove nessun arma ha il mirino apparte una ed è un po fastidioso, specialmente per i novizzi quindi ho cercato di fare questa applicazione con il seguente codice:
per rendere il form trasparente
' preparazione trasparenza--- Option Explicit Private Declare Function GetWindowLong Lib "user32" _ Alias "GetWindowLongA" ( _ ByVal hWnd As Long, _ ByVal nIndex As Long) As Long Private Declare Function SetWindowLong Lib "user32" _ Alias "SetWindowLongA" ( _ ByVal hWnd As Long, _ ByVal nIndex As Long, _ ByVal dwNewLong As Long) As Long Private Declare Function SetLayeredWindowAttributes Lib "user32" ( _ ByVal hWnd As Long, _ ByVal crKey As Long, _ ByVal bAlpha As Byte, _ ByVal dwFlags As Long) As Long Private Const GWL_EXSTYLE = (-20) Private Const WS_EX_LAYERED = &H80000 Private Const LWA_COLORKEY = &H1& Private Const LWA_ALPHA = &H2& '---
ed applicare la trasparenza
Private Sub Form_Load() 'applica trasparenza al form--- BackColor = RGB(127, 127, 0) SetWindowLong hWnd, _ GWL_EXSTYLE, _ GetWindowLong(hWnd, GWL_EXSTYLE) Or WS_EX_LAYERED SetLayeredWindowAttributes hWnd, BackColor, 0, LWA_COLORKEY '--- End Sub
è un vecchio trucchetto che mi ha insegnato un amico poi ho fatto un timer per spegnere l'applicazione non avendo pulsanti
'ricavare key input Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer Private Sub Timer1_Timer() Dim result, i As Integer Dim Scrit As Integer 'sistema di chiusura premendo 5 volte ' chr=219 For i = 1 To 255 result = 0 result = GetAsyncKeyState(i) If result = -32767 Then If i = 219 Then Label1.Caption = Label1.Caption + 1 End If If Label1.Caption = 5 Then End End If End If Next i '--- 'tenere visibile il form Form1.Show '--- End Sub
Dopo di che ho fatto un form 500 x 500 con due linie rosse puu.sh/… che stanno perfettamente al centro senza aver bisogno della risoluzione grazie ha StartUpPosition = 1.
Normalemente funziona, il problema è che questo gioco è tutto schermo e non so perche non ci va sopra anche con form1.show ogni millesimo di secondo, in Java non son ancora capace a fare questa applicazione, mi sapreste dare qualche pezzo di codice in più per farlo funzionare anche sulle applicazione massimizate?
Ultima modifica effettuata da Nevinyrral 16/12/11 21:30
aaa