Создание Крестика в центре экрана - VB

Узнай цену своей работы

Формулировка задачи:

Помогите плиз. Хочу сделать так: Вот чтобы открыл программу, нажал (допустим) на End и в центре экрана появился крестик Crosshair. Кто поможет? Плиз дайте код и обьясните че как делать. Заранее благодарен =)
Забыл, еще можно чтобы так: нажал на End-крестик появился, снова нажал на End - крестик исчез

Решение задачи: «Создание Крестика в центре экрана»

textual
Листинг программы
  1. Option Explicit
  2.  
  3. Private Const WM_HOTKEY = &H312
  4. Public Const GWL_WNDPROC = -4
  5.  
  6. Public Declare Function RegisterHotKey Lib "user32" (ByVal hwnd As Long, ByVal id As Long, ByVal fsModifiers As Long, ByVal vk As Long) As Long
  7. Public Declare Function UnregisterHotKey Lib "user32" (ByVal hwnd As Long, ByVal id As Long) As Long
  8. Public Declare Function GlobalAddAtom Lib "kernel32" Alias "GlobalAddAtomA" (ByVal lpString As String) As Long
  9. Public Declare Function GlobalDeleteAtom Lib "kernel32" (ByVal nAtom As Long) As Long
  10. Public Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
  11. Private Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hwnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
  12.  
  13. Public oProc As Long
  14. Public hAt As Long
  15. Dim EndState As Boolean
  16.  
  17. Public Function WindowProc(ByVal hwnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
  18.     Select Case Msg
  19.     Case WM_HOTKEY
  20.         If wParam = hAt Then EndState = Not EndState
  21.         If EndState Then frmCross.Move (Screen.Width - frmCross.Width) / 2, (Screen.Height - frmCross.Height) / 2
  22.         frmCross.Visible = EndState
  23.     End Select
  24.     WindowProc = CallWindowProc(oProc, hwnd, Msg, wParam, lParam)
  25. End Function

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4.25 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы