Author Topic: При передаче параметра в процедуру он меняется, не пойму...  (Read 1281 times)

0 Members and 1 Guest are viewing this topic.

ksa-nsk

  • Освоившийся
  • **
  • Posts: 55
    • View Profile
вот такой обрезанный код для примера:
Code: (clickermann) [Select]
//=============================================
// процедура ввода текстовых данных в поля формы

SUB(InputString, $str)
   
       print("ввод (InputString) строка: ", $str)
   TOCLIP($str)
        WAITMS (50)
   
   KEYDOWN (#CTRL)
       WAITMS (50)
   KEYDOWN (#V)
       WAITMS (250)
   KEYUP (#V)
   KEYUP (#CTRL)
   
       WAIT(2)
//print("(InputString) строка после ввода: ", $str)   
END_SUB  // SUB(InputString, $str)

//=============================================


$str_in = "0123456789,*?+- абвг,.конец"
        print("    передан параметр ($str_in): ", $str_in)

       
//    ChangeLang("ru")
 
  //первая попытка
  $str = $str_in
    InputString($str)  // ввод текста
print("после ввода (InputString) строка: ", $str)


в итоге выводится
0123456789,*?+0- абвг,.конец

Вопросы
1) откуда ноль взялся?
2) почему после процедуры $str=0?

« Last Edit: November 04, 2014, 10:06:28 PM by ksa-nsk »

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Если ты используешь 4.11 то скачай патч 4.11.001
http://crapware.aidf.org/forum/index.php?topic=356.msg8385#msg8385

Переменная $str после окончания подпрограммы обнуляется.

Писать надо так
Code: (clickermann) [Select]
// процедура ввода текстовых данных в поля формы

SUB(InputString, $str)
   
   print("ввод (InputString) строка: ", $str)
   TOCLIP($str)
   WAITMS (50)
   
   KEYDOWN (#CTRL)
   WAITMS (50)
   KEYDOWN (#V)
   WAITMS (250)
   KEYUP (#V)
   KEYUP (#CTRL)
   
   WAIT(2)
   //print("(InputString) строка после ввода: ", $str)
END_SUB  // SUB(InputString, $str)

//=============================================


$str_in = "0123456789,*?+- абвг,.конец"
print("передан параметр ($str_in): ", $str_in)
//    ChangeLang("ru")

InputString($str_in)  // ввод текста

HALT

ksa-nsk

  • Освоившийся
  • **
  • Posts: 55
    • View Profile
спасибо за патч, пошло))