Author Topic: Помогите оптимизировать код.  (Read 2055 times)

0 Members and 2 Guests are viewing this topic.

Разумист

  • Зашел в гости
  • *
  • Posts: 13
    • View Profile
Помогите оптимизировать код.
« on: September 01, 2019, 05:01:18 PM »
Постоянная область для сканирования (0,1014, 66,1079), здесь появляются картинки 1, 2, 3.
Если появляется картинка 1 нажимается кнопка 1 на клавиатуре
Если появляется картинка 2 нажимается кнопка 2
Если появляется картинка 3 нажимается кнопка 3
Картинки появляются случайным образом, т.е может появиться картинка 2(нажать 2), картинка 1(нажать 1), и что бы постоянно ожидалась картинка и нажималась соответствующая кнопка.

Code: [Select]
$check = 0
WHILE($check = 0)
   GETSCREEN (0,1014, 66,1079)
   IF_PICTURE_IN (0,1014, 66,1079, "1.bmp", -1, 100)
      $check = 1
      KEYPRESS(#1)
      WAITMS(100)
   END_IF
END_CYC

else

$check = 0
WHILE($check = 0)
   GETSCREEN (0,1014, 66,1079)
   IF_PICTURE_IN (0,1014, 66,1079, "2.bmp", -1, 100)
      $check = 1
      KEYPRESS(#2)
      WAITMS(100)
   END_IF
END_CYC

else

$check = 0
WHILE($check = 0)
   GETSCREEN (0,1014, 66,1079)
   IF_PICTURE_IN (0,1014, 66,1079, "3.bmp", -1, 100)
      $check = 1
      KEYPRESS(#3)
      WAITMS(100)
   END_IF
END_CYC

else

halt

Code: (clickermann) [Select]
// Клавиша   |   Константа   |   10-ный код
// 0         |   #0          |   48
// 1         |   #1          |   49
// 2         |   #2          |   50
// 3         |   #3          |   51
// и т.д.

GETSCREEN (0, 1014, 66, 1079)
FOR($i = 1, $i < 4)
   IF_PICTURE_IN (0, 1014, 66, 1079, STRCONCAT($i, ".bmp"), -1, 100)
      KEYPRESS(48+$i)
      WAITMS(100)
   END_IF 
END_CYC

HALT
Спасибо :)
« Last Edit: September 01, 2019, 05:43:02 PM by Разумист »

Космич

  • Активный участник
  • ***
  • Posts: 265
    • View Profile
Re: Помогите оптимизировать код.
« Reply #1 on: September 01, 2019, 05:12:37 PM »
Code: (clickermann) [Select]
// Клавиша   |   Константа   |   10-ный код
// 0         |   #0          |   48
// 1         |   #1          |   49
// 2         |   #2          |   50
// 3         |   #3          |   51
// и т.д.

GETSCREEN (0, 1014, 66, 1079)
FOR($i = 1, $i < 4)
   IF_PICTURE_IN (0, 1014, 66, 1079, STRCONCAT($i, ".bmp"), -1, 100)
      KEYPRESS(48+$i)
      WAITMS(100)
   END_IF 
END_CYC

HALT
« Last Edit: September 01, 2019, 05:18:00 PM by Космич »
«Иногда ты ваяешь до тех пор, пока до тебя не дойдёт, что именно ты делаешь.»