purebasic.info

PureBasic forum
Текущее время: Ср дек 19, 2018 12:36 am

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: закрытие программы.
СообщениеДобавлено: Вс фев 12, 2017 12:16 pm 
Не в сети
доцент

Зарегистрирован: Чт дек 08, 2016 5:32 pm
Сообщений: 25
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
Прога не закрывается при нажатии на закрыть окно.Пытаюсь закрыть с помощью Нажатия на кнопку,тоже не помогает.Подскажите,что делать?Вот код:
Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
OpenWindow(0, 0, 0, 600, 600, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) 
     StringGadget(10, 8,  10, 306, 20, "0")
    StringGadget(11, 8,  10, 306, 20, "0")
    StringGadget(12, 8,  10, 306, 20, "0")
    StringGadget(13, 8,  10, 306, 20, "0")
    StringGadget(14, 8,  10, 306, 20, "0")
    StringGadget(15, 8,  10, 306, 20, "0")
    StringGadget(16, 8,  10, 306, 20, "0")
    StringGadget(17, 8,  10, 306, 20, "0")
    StringGadget(18, 8,  10, 306, 20, "0")
    StringGadget(31, 8,  10, 306, 20, " ")
    StringGadget(32, 38, 50, 406, 60, " ")
    StringGadget(33, 8,  10, 306, 20, " ")
    StringGadget(34, 8,  10, 306, 20, " ")
    StringGadget(35, 8,  10, 306, 20, " ")
    StringGadget(36, 8,  10, 306, 20, " ")
    StringGadget(37, 8,  10, 306, 20, " ")
    StringGadget(38, 8,  10, 306, 20, " ")
    StringGadget(39, 8,  10, 306, 20, " ")
    StringGadget(40, 8,  10, 0, 0, "-1")
    StringGadget(50, 8,  10, 0, 0, "")
      e=Val(GetGadgetText(31))  
  g=Val(GetGadgetText(32))  
  h=Val(GetGadgetText(33))  
  i=Val(GetGadgetText(40))
  j=Val(GetGadgetText(34))
  k=Val(GetGadgetText(35))
  l=Val(GetGadgetText(36))
  m=Val(GetGadgetText(37))
  n=Val(GetGadgetText(38))
  o=Val(GetGadgetText(39))
    StringGadget(51,0,0,0,0,"")
    ButtonGadget(19,0,0,100,100,"жми!")
    v=Val(GetGadgetText(51))
    OpenWindow(52, 0, 0, 600, 600, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
    WebGadget(0, 10, 10, 100, 100, (GetGadgetText(31)))
    OpenWindow(53, 0, 0, 600, 600, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
    WebGadget(1, 10, 10, 0, 0, (GetGadgetText(32)))
    OpenWindow(54, 0, 0, 600, 600, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
    WebGadget(2, 10, 10, 0, 0, (GetGadgetText(33)))
    OpenWindow(55, 0, 0, 600, 600, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
    WebGadget(3, 10, 10, 0, 0, (GetGadgetText(34)))
    OpenWindow(56, 0, 0, 600, 600, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
    WebGadget(4, 10, 10, 0, 0, (GetGadgetText(35)))
    OpenWindow(57, 0, 0, 600, 600, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
    WebGadget(5, 10, 10, 0, 0, (GetGadgetText(36)))
    OpenWindow(58, 0, 0, 600, 600, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
    WebGadget(6, 10, 10, 0, 0, (GetGadgetText(37)))
    OpenWindow(59, 0, 0, 600, 600, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
    WebGadget(7, 10, 10, 0, 0, (GetGadgetText(38)))
    OpenWindow(60, 0, 0, 600, 600, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
    WebGadget(8, 10, 10, 0, 0, (GetGadgetText(39)))
    OpenWindow(62, 0, 0, 600, 600, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
    StringGadget(61, 8,  10, 0, 0, "")
    Procedure.i readd(filename$,u)
  If ReadFile(u, filename$)
    FileSeek(u, 0)
    Protected text.s
    While Eof(u) = 0
      text + ReadString(u)
    Wend
    CloseFile(u)
    SetGadgetText(u, text)
    ProcedureReturn 1
  EndIf
  ProcedureReturn 0
EndProcedure;    
f=0
Procedure.i save(filename$)
   Debug filename$
  If CreateFile(28, filename$)
    WriteString(28, GetGadgetText(3))
    CloseFile(28)
    ProcedureReturn 1
  EndIf
  ProcedureReturn 0
EndProcedure
Repeat
    If GetGadgetText(31)="0"
     OpenWindow(20, 0, 0, 600, 300, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
     ButtonGadget(21,0,0,100,100,"")
     ButtonGadget(22,100,0,100,100,")
    ButtonGadget(23,200,0,100,100,"выйти")
    Repeat
      Select WaitWindowEvent()
     Case #PB_Event_Gadget
       Select EventGadget()    
         Case 21
    OpenWindow(23, 0, 0, 600, 300, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
    StringGadget(24, 8,  10, 0, 0, "")
    StringGadget(26, 8,  10, 0, 0, "")
    WebGadget(25, 10, 10, 580, 280, (GetGadgetText(26)))
    Repeat
      WindowEvent()
      If GetGadgetText(24)="7000";на просмотр видео 7 сек
        CloseWindow(23)
    OpenWindow(27, 0, 0, 600, 300, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
    StringGadget(28, 8,  10, 0, 0, "")
    readd("D:\Tuy.txt",28)
    y=Val(GetGadgetText(28))
    p=y+5
    SetGadgetText(28,Str(p))
    StringGadget(30, 8,  10, 0, 0, "")
    StringGadget(42, 8,  10, 0, 0, "")
    readd("D:\Tuy152145.txt",42)
    WebGadget(29, 10, 10, 580, 280,Str(v))
    WebGadget(41, 10, 10, 0, 0,(GetGadgetText(42)))
    WebGadget(43, 10, 10, 0, 0,(GetGadgetText(42)))
    WebGadget(44, 10, 10, 0, 0,(GetGadgetText(42)))
    WebGadget(45, 10, 10, 0, 0,(GetGadgetText(42)))
    readd("D:\Tuy.txt",28);
    a=5
    g=Val(GetGadgetText(28))
    NumLOc=g-a
    SetGadgetText(28,Str(NumLOc))
    save("D:\Tuy.txt")
    Repeat
      WindowEvent()
    If GetGadgetText(30)="15000"
      CloseWindow(27)
      Break
    Else
      b=Val(GetGadgetText(30))
    a=b+1
    b=a
    SetGadgetText(30,Str(b))
    EndIf  
    ForEver
  Break  
  Else
   b=Val(GetGadgetText(24))
    a=b+1
    b=a
    SetGadgetText(24,Str(b))
     EndIf
  ForEver
Case 22
  SetGadgetText(10,"0")
  SetGadgetText(31," ")
  SetGadgetText(32," ")
  SetGadgetText(33," ")
  SetGadgetText(34," ")
  SetGadgetText(35," ")
  SetGadgetText(36," ")
  SetGadgetText(37," ")
  SetGadgetText(38," ")
  SetGadgetText(39," ")
  SetGadgetText(40,"-1")
  CloseWindow(20)
  i=-1
  Break
Case 23  
 SetGadgetText(61,"lp")
 Break
 Break
EndSelect
EndSelect
Until WaitWindowEvent() = #PB_Event_CloseWindow
Else
 If GetGadgetText(10)="10000"
   SetGadgetText(10,"0")
   SetGadgetText(31,"0")
   i=Val(GetGadgetText(40))
   e=i+1
   i=e
   SetGadgetText(40,Str(i))
   readd("D:\STY"+Str(e)+".txt",31)
   Debug(e)
   v=Val(GetGadgetText(31))
   Else
 b=Val(GetGadgetText(10))
    a=b+1
    b=a
    SetGadgetText(10,Str(b))
    If GetGadgetText(61)="lp"  
      CloseWindow(0)
 CloseWindow(20)
 CloseWindow(52)
 CloseWindow(53)
 CloseWindow(54)
 CloseWindow(55)
 CloseWindow(56)
 CloseWindow(57)
 CloseWindow(58)
 CloseWindow(59)
 CloseWindow(60)
      CloseWindow(62)
      Break
    EndIf
  EndIf
  EndIf
Until WaitWindowEvent() = #PB_Event_CloseWindow
   End



Последний раз редактировалось Kirya859 Вс фев 12, 2017 3:48 pm, всего редактировалось 1 раз.

Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: закрытие программы.
СообщениеДобавлено: Вс фев 12, 2017 1:23 pm 
Не в сети
профессор

Зарегистрирован: Пт фев 20, 2009 12:57 pm
Сообщений: 1717
Откуда: Алматы
Благодарил (а): 16 раз.
Поблагодарили: 47 раз.
Пункты репутации: 5
это не код... это какой-то эпический *цензура


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: закрытие программы.
СообщениеДобавлено: Вс фев 12, 2017 2:39 pm 
Не в сети
профессор

Зарегистрирован: Пн янв 03, 2011 4:27 pm
Сообщений: 412
Благодарил (а): 5 раз.
Поблагодарили: 17 раз.
Пункты репутации: 0
Kirya859, переписать код заново.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: закрытие программы.
СообщениеДобавлено: Вс фев 12, 2017 3:47 pm 
Не в сети
доцент

Зарегистрирован: Чт дек 08, 2016 5:32 pm
Сообщений: 25
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
@ZOLO@ писал(а):
Kirya859, переписать код заново.
SereZa писал(а):
это не код... это какой-то эпический *цензура
Спасибо ребята,очень помогли!Вот правда.Обычно люди дают советы,как что-то сделать ,а вы ответили прямо как действительно стоющие программисты. :lol:


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: закрытие программы.
СообщениеДобавлено: Вс фев 12, 2017 3:48 pm 
Не в сети
док

Зарегистрирован: Ср апр 16, 2014 5:56 pm
Сообщений: 113
Благодарил (а): 7 раз.
Поблагодарили: 6 раз.
Пункты репутации: 5
Здесь много причин. Например:
-функция WaitWindowEvent() вызывается В ЦИКЛЕ НЕОДНОКРАТНО
-безусловное выполнение break-ов (в сочетании с Case)
-непонятен смысл использования функции WindowEvent() в конструкции
Код:
1
2
3
4
5
 
   Repeat
     WindowEvent()
     If GetGadgetText(24)="7000";на просмотр видео 7 сек
...


и другие (пока достаточно)
Не ленитесь, почитайте Справку о работе этих двух функций (и чем грозит их примение в цикле), их отличиях, о ловле событий (например, закрытия окна #PB_Event_CloseWindow) и об использовании самих циклов. У меня возникло ощущение, что Вы нечётко представляете себе, как ими пользоваться и как избежать зацикливания.
Мы все когда-то начинали, и поэтому советую разбить Ваш пример на части и отлаживать по отдельности.
Постарайтесь максимально упрощать, а главное - осознать принцип прерывания цикла


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group (блог о phpBB)
Сборка создана CMSart Studio
Русская поддержка phpBB