Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / ЧТО-ТО ДЕЛАЮ НЕ ТАК !!!! / 21 сообщений из 21, страница 1 из 1
20.07.2011, 11:22
    #37359033
Андик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЧТО-ТО ДЕЛАЮ НЕ ТАК !!!!
'ЧТО-ТО ДЕЛАЮ НЕ ТАК !!!!
'нет справки в (VB6) по этому обращаюсь к вам
'как использовать кнопки в циклах (FOR)
'быть может есть еще какой-то выход кроме (REFRESH)

Dim a&, b$

Private Sub Command1_Click() 'кнопка стоп
b$ = "стоп"
End Sub

Private Sub Form_Activate()
b$ = ""
For a& = 0 To 1000000000
Command1.Refresh 'ПОЧЕМУ НЕ РАБОТАЕТ КНОПКА СТОП ?!
If b$ = "стоп" Then Command1.Caption = "работает": Exit For
Next a&
End Sub
...
Рейтинг: 0 / 0
20.07.2011, 11:27
    #37359041
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЧТО-ТО ДЕЛАЮ НЕ ТАК !!!!
а ничего , что у вас ваш цикл работает до показа формы?

ну и когда его суните куда вам надо , не забудьте внутрь цикла DoEvents добавить
...
Рейтинг: 0 / 0
20.07.2011, 11:37
    #37359062
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЧТО-ТО ДЕЛАЮ НЕ ТАК !!!!
Андик'быть может есть еще какой-то выход кроме (REFRESH)
А refresh-то там как раз и не нужен
...
Рейтинг: 0 / 0
20.07.2011, 11:44
    #37359069
Андик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЧТО-ТО ДЕЛАЮ НЕ ТАК !!!!
не смотрите что цикл на 10...00 а также что нет ограничения цикла это тестовая форма проверки как работает REFRESH
(перед вставкой в нормальный код) а что касается формы то она грузится изапускается (!)
кроме того если я не ошибаюсь то

Private Sub Form_Activate()
MsgBox ("Activate") 'без формы
End Sub

Private Sub Form_Initialize()
MsgBox ("Initialize") 'без формы
End Sub

Private Sub Form_Load()
MsgBox ("Load") 'с формой
End Sub
...
Рейтинг: 0 / 0
20.07.2011, 11:47
    #37359074
Андик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЧТО-ТО ДЕЛАЮ НЕ ТАК !!!!
если refresh не нужен то как сделать остановку цикла кнопкой (!)
...
Рейтинг: 0 / 0
20.07.2011, 11:49
    #37359079
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЧТО-ТО ДЕЛАЮ НЕ ТАК !!!!
Андикесли refresh не нужен то как сделать остановку цикла кнопкой (!) не читай сообщения через одно - Костя уже ответил: 10998936
...
Рейтинг: 0 / 0
20.07.2011, 11:51
    #37359088
Игорь Горбонос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЧТО-ТО ДЕЛАЮ НЕ ТАК !!!!
> Автор: Андик
> кроме того если я не ошибаюсь то


Ошибаешся :)

I - Initialize
L ike - Load
R - Resize
A - Activate
P - Paint

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
20.07.2011, 12:02
    #37359106
Андик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЧТО-ТО ДЕЛАЮ НЕ ТАК !!!!
спасибо игорь что указал на ошибку (это мой промах запускал и получил одно - а написал в коментарии другое )
...
Рейтинг: 0 / 0
20.07.2011, 12:09
    #37359122
Андик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЧТО-ТО ДЕЛАЮ НЕ ТАК !!!!
Shocker.Pro,

все равно непонятно как использовать здесь DoEvents если мне к примеру не ненужно ограничивать длинну цикла а всего лиш сделать остановку по кнопке стоп
...
Рейтинг: 0 / 0
20.07.2011, 12:25
    #37359146
Андик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЧТО-ТО ДЕЛАЮ НЕ ТАК !!!!
сделал как подсказали:

Dim a&, b$

Private Sub Command1_Click() 'кнопка стоп
b$ = "стоп"
End Sub

Private Sub Form_Activate()
b$ = ""
For a& = 0 To 1000000000
DoEvents
If b$ = "стоп" Then Command1.Caption = "работает": Exit For
Next a&
End Sub
...
Рейтинг: 0 / 0
20.07.2011, 12:26
    #37359149
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЧТО-ТО ДЕЛАЮ НЕ ТАК !!!!
можно так, например. можете ещё таймер навесить, условия добавить и тд и тп
...
Рейтинг: 0 / 0
20.07.2011, 12:34
    #37359165
Андик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЧТО-ТО ДЕЛАЮ НЕ ТАК !!!!
не могу открыть архив (с ошибкой) но все равно спасибо за сочуствие
...
Рейтинг: 0 / 0
20.07.2011, 12:35
    #37359167
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЧТО-ТО ДЕЛАЮ НЕ ТАК !!!!
Form1.frm

Код: plaintext
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.
VERSION  5 . 00 
Begin VB.Form Form1 
   Caption         =   "Form1"
   ClientHeight    =    3510 
   ClientLeft      =    120 
   ClientTop       =    420 
   ClientWidth     =    6150 
   LinkTopic       =   "Form1"
   ScaleHeight     =    3510 
   ScaleWidth      =    6150 
   StartUpPosition =    3   'Windows Default
   Begin VB.CommandButton Command1 
      Caption         =   "Стоп"
      Height          =    675 
      Left            =    1560 
      TabIndex        =    0 
      Top             =    2700 
      Width           =    2895 
   End
   Begin VB.Label Label1 
      Alignment       =    2   'Center
      Caption         =   "Label1"
      Height          =    255 
      Left            =    1020 
      TabIndex        =    1 
      Top             =    780 
      Width           =    3975 
   End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit

Public bStop As Boolean


Private Sub Command1_Click()

If Me.Command1.Caption = "Start" Then
    Me.bStop = False
    Me.Command1.Caption = "Stop"
    DoEvents
    
    Me.DoIt
    
Else
    Me.bStop = True
    DoEvents
    Me.Command1.Caption = "Start"
    DoEvents
End If

End Sub

Private Sub Form_Load()

Me.bStop = False
Me.Command1.Caption = "Start"
Me.Label1.Caption = ""
Me.Refresh
DoEvents

End Sub

Friend Sub DoIt()

Do While Not Me.bStop
    Me.Label1.Caption = VBA.Timer
    DoEvents
Loop

End Sub
...
Рейтинг: 0 / 0
20.07.2011, 12:41
    #37359180
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЧТО-ТО ДЕЛАЮ НЕ ТАК !!!!
Андик если мне к примеру не ненужно ограничивать длинну цикла
для этого используется такая конструкция:
Код: plaintext
1.
2.
3.
Do Wlile True
  ...
  DoEvents
Loop
...
Рейтинг: 0 / 0
20.07.2011, 12:43
    #37359186
Игорь Горбонос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЧТО-ТО ДЕЛАЮ НЕ ТАК !!!!
> Автор: Андик
> не ненужно ограничивать длинну цикла

И правильно! Чего процессор простаивает зазря! Пусть воздух погреет
Может имеет смысл пересмотреть логику обработки? И убрать бесконечные циклы?

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
20.07.2011, 12:44
    #37359188
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЧТО-ТО ДЕЛАЮ НЕ ТАК !!!!
да пусть циклит
...
Рейтинг: 0 / 0
20.07.2011, 12:44
    #37359189
Игорь Горбонос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЧТО-ТО ДЕЛАЮ НЕ ТАК !!!!
> Автор: Shocker.Pro
> для этого используется такая конструкция:


А ты тоже! Хоть бы знак повесил, что там ОБРЫВ, но туда можно :)

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
20.07.2011, 12:49
    #37359198
Андик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЧТО-ТО ДЕЛАЮ НЕ ТАК !!!!
в принципе все ясно кроме (ME.)?
...
Рейтинг: 0 / 0
20.07.2011, 12:51
    #37359203
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЧТО-ТО ДЕЛАЮ НЕ ТАК !!!!
Me - это обращение к текущему инстансу вашего класса
...
Рейтинг: 0 / 0
20.07.2011, 12:53
    #37359208
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЧТО-ТО ДЕЛАЮ НЕ ТАК !!!!
Игорь Горбонос> Автор: Shocker.Pro
> для этого используется такая конструкция:


А ты тоже! Хоть бы знак повесил, что там ОБРЫВ, но туда можно :) (c) Семен Альтов

Человек просил бесконечный цикл - я нарисовал. Мало ли, может он внеземные цивилизации ищет делает длинный математический расчет и хочет иметь возможность его прервать.
...
Рейтинг: 0 / 0
20.07.2011, 13:03
    #37359229
Андик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЧТО-ТО ДЕЛАЮ НЕ ТАК !!!!
Shocker.ProИгорь Горбонос> Автор: Shocker.Pro
> для этого используется такая конструкция:


А ты тоже! Хоть бы знак повесил, что там ОБРЫВ, но туда можно :) (c) Семен Альтов

Человек просил бесконечный цикл - я нарисовал. Мало ли, может он внеземные цивилизации ищет делает длинный математический расчет и хочет иметь возможность его прервать.



все намного проще чем кажеться
задача сделать счетчик всего лиш на 65536 циклов но с обязательными прерываниями через кнопки пуск\стоп и шаг
а нужно это для моего (если дожму) эмулятора отладчика процессора(пока тока z80 там проще с описанием комманд)
но бесконечный цикл в процессоре все-же нужен (переход ffff-->0000)
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / ЧТО-ТО ДЕЛАЮ НЕ ТАК !!!! / 21 сообщений из 21, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]