Важная информация
Показано с 1 по 2 из 2

Тема: Помогите понять программу

  1. #1 Помогите понять программу 
    Новичок
    Регистрация
    16.08.2011
    Сообщений
    17
    Сказал(а) спасибо
    5
    Поблагодарили 0 раз(а) в 0 сообщениях
    Я недавно нашёл у себя пример реализации мышки в QBasic'е.
    Мне хотелось бы разобраться, что там означает каждый фрагмент (а ещё лучше - каждая строчка ). В целях самообразования, так сказать.
    Вот сам код. Если кто-нибудь его подробно закомментирует, то буду премного благодарен.
    Код QBasic:
    [Ссылки могут видеть только зарегистрированные пользователи. ] FUNCTION MouseInit% ()
    [Ссылки могут видеть только зарегистрированные пользователи. ] SUB MouseStatus (Lb%, Rb%, xMouse%, yMouse%)
    [Ссылки могут видеть только зарегистрированные пользователи. ] SUB MouseRange (X1%, Y1%, x2%, Y2%)
    [Ссылки могут видеть только зарегистрированные пользователи. ] SUB MousePut (X%, Y%)
    [Ссылки могут видеть только зарегистрированные пользователи. ] SUB MouseHide ()
    [Ссылки могут видеть только зарегистрированные пользователи. ] SUB MouseDriver (ax%, bx%, cx%, dx%)
    [Ссылки могут видеть только зарегистрированные пользователи. ] SUB MouseShow ()
    [Ссылки могут видеть только зарегистрированные пользователи. ] A-Z: [Ссылки могут видеть только зарегистрированные пользователи. ] [Ссылки могут видеть только зарегистрированные пользователи. ] = &HA000:      
    [Ссылки могут видеть только зарегистрированные пользователи. ] [Ссылки могут видеть только зарегистрированные пользователи. ] mouse$: mouse$ = [Ссылки могут видеть только зарегистрированные пользователи. ](57)
    [Ссылки могут видеть только зарегистрированные пользователи. ]
    [Ссылки могут видеть только зарегистрированные пользователи. ] 12
    FOR I% = 1 TO 57
    [Ссылки могут видеть только зарегистрированные пользователи. ] a$
    H$ = [Ссылки могут видеть только зарегистрированные пользователи. ]([Ссылки могут видеть только зарегистрированные пользователи. ]("&H" + a$))
    [Ссылки могут видеть только зарегистрированные пользователи. ](mouse$, I%, 1) = H$
    NEXT I%
    [Ссылки могут видеть только зарегистрированные пользователи. ] 55,89,E5,8B,5E,0C,8B,07,50,8B,5E,0A,8B,07,50,8B
    [Ссылки могут видеть только зарегистрированные пользователи. ] 5E,08,8B,0F,8B,5E,06,8B,17,5B,58,1E,07,CD,33,53
    [Ссылки могут видеть только зарегистрированные пользователи. ] 8B,5E,0C,89,07,58,8B,5E,0A,89,07,8B,5E,08,89,0F
    [Ссылки могут видеть только зарегистрированные пользователи. ] 8B,5E,06,89,17,5D,CA,08,00 
    [Ссылки могут видеть только зарегистрированные пользователи. ]
    IF [Ссылки могут видеть только зарегистрированные пользователи. ] MouseInit% THEN
    [Ссылки могут видеть только зарегистрированные пользователи. ] "Mouse not found"
    [Ссылки могут видеть только зарегистрированные пользователи. ]
    [Ссылки могут видеть только зарегистрированные пользователи. ] IF
    [Ссылки могут видеть только зарегистрированные пользователи. ] 2, 30
    [Ссылки могут видеть только зарегистрированные пользователи. ] "Mouse Control in QBasic"
    MouseShow
    MouseRange 0, 0, 630, 478
    DO
     MouseStatus Lb, Rb, X, Y
     
     SELECT CASE Lb%
      CASE -1: [Ссылки могут видеть только зарегистрированные пользователи. ] 10, 1: [Ссылки могут видеть только зарегистрированные пользователи. ] "Left Button Pressed"
      CASE ELSE: [Ссылки могут видеть только зарегистрированные пользователи. ] 10, 1: [Ссылки могут видеть только зарегистрированные пользователи. ] [Ссылки могут видеть только зарегистрированные пользователи. ](20)
     [Ссылки могут видеть только зарегистрированные пользователи. ] SELECT
     SELECT CASE Rb%
      CASE -1: [Ссылки могут видеть только зарегистрированные пользователи. ] 10, 60: [Ссылки могут видеть только зарегистрированные пользователи. ] "Right Button Pressed"
      CASE ELSE: [Ссылки могут видеть только зарегистрированные пользователи. ] 10, 60: [Ссылки могут видеть только зарегистрированные пользователи. ] [Ссылки могут видеть только зарегистрированные пользователи. ](20)
     [Ссылки могут видеть только зарегистрированные пользователи. ] SELECT
    LOOP UNTIL [Ссылки могут видеть только зарегистрированные пользователи. ] = [Ссылки могут видеть только зарегистрированные пользователи. ](27)
     
    [Ссылки могут видеть только зарегистрированные пользователи. ] A-Z
    SUB MouseDriver (ax%, bx%, cx%, dx%)
      [Ссылки могут видеть только зарегистрированные пользователи. ] [Ссылки могут видеть только зарегистрированные пользователи. ] = [Ссылки могут видеть только зарегистрированные пользователи. ](mouse$)
      mouse% = [Ссылки могут видеть только зарегистрированные пользователи. ](mouse$)
      CALL [Ссылки могут видеть только зарегистрированные пользователи. ](ax%, bx%, cx%, dx%, mouse%)
    [Ссылки могут видеть только зарегистрированные пользователи. ] SUB
     
    SUB MouseHide
     ax% = 2
     MouseDriver ax%, 0, 0, 0
    [Ссылки могут видеть только зарегистрированные пользователи. ] SUB
     
    FUNCTION MouseInit%
      ax% = 0
      MouseDriver ax%, 0, 0, 0
      MouseInit% = ax%
    [Ссылки могут видеть только зарегистрированные пользователи. ] FUNCTION
     
    SUB MousePut (X%, Y%)
      ax% = 4
      cx% = X%
      dx% = Y%
      MouseDriver ax%, 0, cx%, dx%
    [Ссылки могут видеть только зарегистрированные пользователи. ] SUB
     
    SUB MouseRange (X1%, Y1%, x2%, Y2%)
      ax% = 7
      cx% = X1%
      dx% = x2%
      MouseDriver ax%, 0, cx%, dx%
      ax% = 8
      cx% = Y1%
      dx% = Y2%
      MouseDriver ax%, 0, cx%, dx%
    [Ссылки могут видеть только зарегистрированные пользователи. ] SUB
     
    SUB MouseShow
      ax% = 1
      MouseDriver ax%, 0, 0, 0
    [Ссылки могут видеть только зарегистрированные пользователи. ] SUB
     
    SUB MouseStatus (Lb%, Rb%, xMouse%, yMouse%)
      ax% = 3
      MouseDriver ax%, bx%, cx%, dx%
      Lb% = ((bx% [Ссылки могут видеть только зарегистрированные пользователи. ] 1) <> 0)
      Rb% = ((bx% [Ссылки могут видеть только зарегистрированные пользователи. ] 2) <> 0)
      xMouse% = cx%
      yMouse% = dx%
    [Ссылки могут видеть только зарегистрированные пользователи. ] SUB
    Ответить с цитированием  
     

  2. #2  
    Супер модератор Аватар для >Quiet Snow<
    Регистрация
    11.04.2011
    Адрес
    Планета земля
    Сообщений
    3,829
    Сказал(а) спасибо
    1,810
    Поблагодарили 934 раз(а) в 796 сообщениях
    Записей в блоге
    1
    Ответ на цайбере... я первым делом туда захожу.
    Обучение прикладному программированию(по skype), качественно, недорого, 18+, вопросы в личку.
    «Если вы ничего не сделаете, я уверяю вас, ничего и не произойдёт» © Жак Фреско
    Ограниченно модерирую.
    Ответить с цитированием  
     

  3. Пользователь сказал cпасибо:

    Black Doomer (18.12.2011)

Информация о теме
Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. помогите написать программу
    от Стамус в разделе QBasic
    Ответов: 5
    Последнее сообщение: 18.10.2012, 20:35
  2. Ребят, помогите понять суть программы.
    от gernsback в разделе Turbo Pascal
    Ответов: 9
    Последнее сообщение: 14.03.2012, 03:21
  3. Ответов: 1
    Последнее сообщение: 01.12.2011, 17:53
  4. Ответов: 5
    Последнее сообщение: 10.04.2011, 21:20
  5. Ответов: 6
    Последнее сообщение: 09.12.2010, 18:40
Ваши права
  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •