Рисование вне формы в любом месте экрана - VB
Формулировка задачи:
Всем привет!
Подскажите, пожалуйста, как оперативно в любой части экрана отрисовать определенную несложную фигуру.
Конкретно хочу сделать программу которая каждые X миллисекунд будет отрисовывать посередине экрана прицел. Такого рода софт требуется игроманам, когда стандартные прицелы в игре разъезжаются или попросту плохо видны на объектах того же цвета что и сам прицел.
В интернете находил конечно подобный софт.. но они обновляли прицел на экране на столько медленно, что даже на рабочем столе их не было толком видно, уж не говорю про то что в игре .. там его и вовсе становиться не видно.
P.S.: Ввел в поисковике форума слово "графика" и "рисование".. вылезало всё что угодно кроме нужного =(
Решение задачи: «Рисование вне формы в любом месте экрана»
textual
Листинг программы
Private Type LOGBRUSH lbStyle As Long lbColor As Long lbHatch As Long End Type Private Declare Function ExtCreatePen Lib "gdi32" (ByVal dwPenStyle As Long, ByVal dwWidth As Long, lplb As LOGBRUSH, ByVal dwStyleCount As Long, lpStyle As Long) As Long Private Declare Function SelectObject Lib "gdi32" (ByVal hdc As Long, ByVal hObject As Long) As Long Private Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As Long Private Const BS_SOLID = 0& Private Const PS_COSMETIC = 0& Private Const PS_USERSTYLE = 7& Private OldPen As Long Private Sub Form_Load() Dim lb As LOGBRUSH, Lengths(4) As Long lb.lbColor = 255 lb.lbStyle = BS_SOLID Lengths(1) = 10 Lengths(2) = 3 Lengths(3) = 5 Lengths(4) = 3 OldPen = SelectObject(hdc, ExtCreatePen(PS_COSMETIC Or PS_USERSTYLE, 1, lb, 4, Lengths(1))) End Sub Private Sub Form_Unload(Cancel As Integer) DeleteObject SelectObject(hdc, OldPen) End Sub Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) Line (0, 0)-(X, Y) End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д