Advertisement
anatolt

Untitled

Jan 22nd, 2015
407
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. OpenWindow(0,100,100,400,300,"Программуля",#PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  2.  
  3. Enumeration
  4.   #text1
  5.   #text2
  6.   #button
  7. EndEnumeration
  8.  
  9. TextGadget(#PB_Any,10,10,300,20, "Переносит текст между строками")
  10. TextGadget(#PB_Any,10,40,300,20, "Строка 1")
  11. StringGadget(#text1,10,60,300,20,"Текст из строки 1")
  12. ButtonGadget(#button,10,100,300,20,"Перенести")
  13. TextGadget(#PB_Any,10,130,300,20,"Строка 2")
  14. StringGadget(#text2,10,150,300,20,"Тут должен появиться Текст из строки 1")
  15.  
  16. ; в винде все построено на получении ивентов и их контролировании
  17. ; поэтому мы создаем цикл с построверкой условия
  18. ; (повторять, пока не выполнится условие)
  19. Repeat
  20.   ; вот тут мы получаем сам ивент и пишем его в переменную ev
  21.   ; для дальнейшей обработки
  22.   ; если мы этого делать не будем (или наше приложение повиснет при какой-то операции)
  23.   ; то винда будет считать что оно зависло
  24.   ; и предложит его завершить (уверен ты такое видел не раз)
  25.   ; можешь закомментировать эту строку и посмотреть что будет
  26.   ev = WaitWindowEvent()
  27.   Text$ = GetGadgetText(#text1)
  28.   ; стандартный во многих языках case
  29.   ; как if-else, но для большого количества условий
  30.   ; тут мы проверяем какой нам ивент пришел
  31.   Select ev
  32.     ; если это ивент от гаджета
  33.     Case #PB_Event_Gadget
  34.       ; смотрим что это за гаджет
  35.       Select EventGadget()
  36.         Case #button
  37.           ; и что за тип ивента
  38.           Select EventType()
  39.             ; типы ивентов можно посмотреть в хэлпе по конкретному гаджету
  40.             Case #PB_EventType_Change
  41.               Debug "ты поменял текст"
  42.             Default
  43.               SetGadgetText(#text2, Text$)
  44.           EndSelect
  45.       EndSelect
  46.   EndSelect
  47. ; если ивент вот такой, то значит юзер нажал на крестик
  48. ; и можно завершить цикл
  49. Until ev = #PB_Event_CloseWindow
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement