![]() |
|
Модераторы: Akina |
![]()
|
|
| Voldemar2004 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1650 Регистрация: 25.12.2004 Репутация: 7 Всего: 23 |
M.E.G.U.S, ты прав, мне тоже кажется ерунда какая-то. И смысла задачи то я не понял. Гость_Гость делает какую-то игру. -------------------- i_i (';') (V) ![]() |
|||
|
||||
| Gannibal |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 742 Регистрация: 15.4.2003 Где: 010101 Репутация: 18 Всего: 17 |
вот так вот должно быть
кстати Гость у тебя там ошибка в этой строчке
там в конце недложно быт ":" вот так вот Добавлено @ 18:31
полностью согласен -------------------- Я родился в этом безумном мире - и Я сделаю всё чтобы в нём выжить! |
||||||
|
|||||||
| Voldemar2004 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1650 Регистрация: 25.12.2004 Репутация: 7 Всего: 23 |
А это зачем? -------------------- i_i (';') (V) ![]() |
|||
|
||||
| cardinal |
|
||||
![]() Инженер ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6003 Регистрация: 26.3.2002 Где: Германия Репутация: 19 Всего: 99 |
Ходилку по лабиринту Добавлено @ 21:09
В смысле? -------------------- Немецкая оппозиция потребовала упростить натурализацию иммигрантов В моем блоге: Разные истории из жизни в Германии "Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино". А. и Б. Стругацкие |
||||
|
|||||
| Gannibal |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 742 Регистрация: 15.4.2003 Где: 010101 Репутация: 18 Всего: 17 |
а может стрелялку какую нибудь
он наверное пошутил как я понял -------------------- Я родился в этом безумном мире - и Я сделаю всё чтобы в нём выжить! |
||||
|
|||||
| Guest |
|
|||
|
Unregistered |
Option Explicit
Private Sub Command1_Click() Dim level Command1.Visible = False If Label1.Caption = "B" Then Label5.Caption = "Íàéäåí âûõîä.": level = level + 1: GoTo XXX100 XXX100: Print "ura" End Sub это понятно. но если есть Private Sub Command1_Click() Private Sub Command2_Click() ..... Private Sub Command100_Click() и что бы каждый раз не писать XXX100: Print "ura" его нужно вынести куда то и написать один раз. но обращаться программа будет туда из разных мест. |
|||
|
||||
| Voldemar2004 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1650 Регистрация: 25.12.2004 Репутация: 7 Всего: 23 |
Ну зачем Goto, если есть операторы If else end if, elseif, select case end select ? Потом замучаешься крутить колесо мыши и бегать по экрану глазами в пойсках этой несчастной метки, связанной с Goto. -------------------- i_i (';') (V) ![]() |
|||
|
||||
| Guest |
|
|||
|
Unregistered |
XXX100:
Print "ura" его нужно вынести куда то и написать один раз. но обращаться программа будет туда из разных мест. как сделать ?? |
|||
|
||||
| Voldemar2004 |
|
||||||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1650 Регистрация: 25.12.2004 Репутация: 7 Всего: 23 |
Module:
Form1:
Form2:
Guest, что ты пишешь, если не секрет? Игру? Это сообщение отредактировал(а) Voldemar2004 - 16.5.2005, 15:46 -------------------- i_i (';') (V) ![]() |
||||||||
|
|||||||||
| Guest |
|
|||
|
Unregistered |
а зачем загружать форму2 ?
|
|||
|
||||
| cardinal |
|
|||
![]() Инженер ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6003 Регистрация: 26.3.2002 Где: Германия Репутация: 19 Всего: 99 |
Ну, Guest, это же просто пример
Давай уж регистрируйся, хватит быть гостем -------------------- Немецкая оппозиция потребовала упростить натурализацию иммигрантов В моем блоге: Разные истории из жизни в Германии "Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино". А. и Б. Стругацкие |
|||
|
||||
| Guest |
|
|||
|
Unregistered |
Блин, вот код програмки
' Имеется форма на которой 4 label (LA1, LA2, LB1, LB2) ' На них наложены 4 кнопки (BA1, BA2, BB1, BB2) ' Выпадает случайное число для К (клад) ' Выпадает случайное число для В (выход) ' Если игрок нажал кнопку под которой ничего нет, игра продолжается. ' Если игрок попал на К - добавляется 100 очков ' Если игрок попал на В - происходит смена уровня (+1), все кнопки становятся видимыми. Option Explicit Dim klad As Integer Dim vixod As Integer Dim ochki As Integer Dim level As Integer Private Sub Form_Load() level = 1 Label505 = 1 XXX100: ' все кнопки видимые BA1.Visible = True BA2.Visible = True BB1.Visible = True BB2.Visible = True ' обнуление вида ячеек LA1 = "" LA2 = "" LB1 = "" LB2 = "" ' определяем в какой ячейке клад и присваиваем выпавшему номеру ячейки букву К Randomize klad = Int((4 * Rnd) + 1) If klad = 1 Then LA1 = "K" If klad = 2 Then LA2 = "K" If klad = 3 Then LB1 = "K" If klad = 4 Then LB2 = "K" ' определяем в какой ячейке выход и присваиваем выпавшему номеру ячейки букву В Randomize vixod = Int((4 * Rnd) + 1) If vixod = 1 Then LA1 = "B" If vixod = 2 Then LA2 = "B" If vixod = 3 Then LB1 = "B" If vixod = 4 Then LB2 = "B" ' проверяем что бы не совпали ячейки выхода и клада. Если совпали, делаем расчет заново. If klad = vixod Then GoTo XXX100 End Sub ' Нажата кнопка BA1. Кнопка исчезает показывая что под ней. Private Sub BA1_Click() BA1.Visible = False ' результат того что под кнопкой. Если под кнопкой К добавляем 100 очков, отображаем результат. If LA1 = "K" Then Label501 = "Найден клад. + 100": ochki = ochki + 100: Label503 = ochki If LA1 = "B" Then Label501 = "Найден выход.": level = level + 1: Label505 = level: GoTo XXX200 GoTo XXX205 XXX200: ' все кнопки видимые BA1.Visible = True BA2.Visible = True BB1.Visible = True BB2.Visible = True ' обнуление вида ячеек LA1 = "" LA2 = "" LB1 = "" LB2 = "" ' определяем в какой ячейке клад и присваиваем выпавшему номеру ячейки букву К Randomize klad = Int((4 * Rnd) + 1) If klad = 1 Then LA1 = "K" If klad = 2 Then LA2 = "K" If klad = 3 Then LB1 = "K" If klad = 4 Then LB2 = "K" ' определяем в какой ячейке выход и присваиваем выпавшему номеру ячейки букву В Randomize vixod = Int((4 * Rnd) + 1) If vixod = 1 Then LA1 = "B" If vixod = 2 Then LA2 = "B" If vixod = 3 Then LB1 = "B" If vixod = 4 Then LB2 = "B" ' проверяем что бы не совпали ячейки выхода и клада. Если совпали, делаем расчет заново. If klad = vixod Then GoTo XXX200 XXX205: End Sub ' Нажата кнопка BA2. Кнопка исчезает показывая что под ней. Private Sub BA2_Click() BA2.Visible = False ' результат того что под кнопкой. Если под кнопкой К добавляем 100 очков, отображаем результат. If LA2 = "K" Then Label501 = "Найден клад. + 100": ochki = ochki + 100: Label503 = ochki If LA2 = "B" Then Label501 = "Найден выход.": level = level + 1: Label505 = level: GoTo XXX200 GoTo XXX205 XXX200: ' все кнопки видимые BA1.Visible = True BA2.Visible = True BB1.Visible = True BB2.Visible = True ' обнуление вида ячеек LA1 = "" LA2 = "" LB1 = "" LB2 = "" ' определяем в какой ячейке клад и присваиваем выпавшему номеру ячейки букву К Randomize klad = Int((4 * Rnd) + 1) If klad = 1 Then LA1 = "K" If klad = 2 Then LA2 = "K" If klad = 3 Then LB1 = "K" If klad = 4 Then LB2 = "K" ' определяем в какой ячейке выход и присваиваем выпавшему номеру ячейки букву В Randomize vixod = Int((4 * Rnd) + 1) If vixod = 1 Then LA1 = "B" If vixod = 2 Then LA2 = "B" If vixod = 3 Then LB1 = "B" If vixod = 4 Then LB2 = "B" ' проверяем что бы не совпали ячейки выхода и клада. Если совпали, делаем расчет заново. If klad = vixod Then GoTo XXX200 XXX205: End Sub ' Нажата кнопка BB1. Кнопка исчезает показывая что под ней. Private Sub BB1_Click() BB1.Visible = False ' результат того что под кнопкой. Если под кнопкой К добавляем 100 очков, отображаем результат. If LB1 = "K" Then Label501 = "Найден клад. + 100": ochki = ochki + 100: Label503 = ochki If LB1 = "B" Then Label501 = "Найден выход.": level = level + 1: Label505 = level: GoTo XXX200 GoTo XXX205 XXX200: ' все кнопки видимые BA1.Visible = True BA2.Visible = True BB1.Visible = True BB2.Visible = True ' обнуление вида ячеек LA1 = "" LA2 = "" LB1 = "" LB2 = "" ' определяем в какой ячейке клад и присваиваем выпавшему номеру ячейки букву К Randomize klad = Int((4 * Rnd) + 1) If klad = 1 Then LA1 = "K" If klad = 2 Then LA2 = "K" If klad = 3 Then LB1 = "K" If klad = 4 Then LB2 = "K" ' определяем в какой ячейке выход и присваиваем выпавшему номеру ячейки букву В Randomize vixod = Int((4 * Rnd) + 1) If vixod = 1 Then LA1 = "B" If vixod = 2 Then LA2 = "B" If vixod = 3 Then LB1 = "B" If vixod = 4 Then LB2 = "B" ' проверяем что бы не совпали ячейки выхода и клада. Если совпали, делаем расчет заново. If klad = vixod Then GoTo XXX200 XXX205: End Sub ' Нажата кнопка BB2. Кнопка исчезает показывая что под ней. Private Sub BB2_Click() BB2.Visible = False ' результат того что под кнопкой. Если под кнопкой К добавляем 100 очков, отображаем результат. If LB2 = "K" Then Label501 = "Найден клад. + 100": ochki = ochki + 100: Label503 = ochki If LB2 = "B" Then Label501 = "Найден выход.": level = level + 1: Label505 = level: GoTo XXX200 GoTo XXX205 XXX200: ' все кнопки видимые BA1.Visible = True BA2.Visible = True BB1.Visible = True BB2.Visible = True ' обнуление вида ячеек LA1 = "" LA2 = "" LB1 = "" LB2 = "" ' определяем в какой ячейке клад и присваиваем выпавшему номеру ячейки букву К Randomize klad = Int((4 * Rnd) + 1) If klad = 1 Then LA1 = "K" If klad = 2 Then LA2 = "K" If klad = 3 Then LB1 = "K" If klad = 4 Then LB2 = "K" ' определяем в какой ячейке выход и присваиваем выпавшему номеру ячейки букву В Randomize vixod = Int((4 * Rnd) + 1) If vixod = 1 Then LA1 = "B" If vixod = 2 Then LA2 = "B" If vixod = 3 Then LB1 = "B" If vixod = 4 Then LB2 = "B" ' проверяем что бы не совпали ячейки выхода и клада. Если совпали, делаем расчет заново. If klad = vixod Then GoTo XXX200 XXX205: End Sub ------------------------------------------------------------------------------------------------------------------------------------------------------------- На форме размещено 4 кнопки, но по замыслу их должно 400 (поле 20 х 20), как видите из программы ее часть повторяется при нажатии каждой кнопки. -------------------------------------------------------------------------------------------------------------------------------------------------------------- XXX200: ' все кнопки видимые BA1.Visible = True BA2.Visible = True BB1.Visible = True BB2.Visible = True ' обнуление вида ячеек LA1 = "" LA2 = "" LB1 = "" LB2 = "" ' определяем в какой ячейке клад и присваиваем выпавшему номеру ячейки букву К Randomize klad = Int((4 * Rnd) + 1) If klad = 1 Then LA1 = "K" If klad = 2 Then LA2 = "K" If klad = 3 Then LB1 = "K" If klad = 4 Then LB2 = "K" ' определяем в какой ячейке выход и присваиваем выпавшему номеру ячейки букву В Randomize vixod = Int((4 * Rnd) + 1) If vixod = 1 Then LA1 = "B" If vixod = 2 Then LA2 = "B" If vixod = 3 Then LB1 = "B" If vixod = 4 Then LB2 = "B" ' проверяем что бы не совпали ячейки выхода и клада. Если совпали, делаем расчет заново. If klad = vixod Then GoTo XXX200 ---------------------------------------------------------------------------------------------------------------------------------------------------------- Если их 4 то это еще ладно, но когда их 400, то код увеличится до офигенных размеров. Вышеуказанная часть должна быть написана 1 раз, а не 400 раз (по 1000 строк в каждой ). Так вот как это сделать? Куда и как прописать этот кусочек кода, чтобы к нему обращаться при нажатии одной из 400 кнопок ??? |
|||
|
||||
| cardinal |
|
|||
![]() Инженер ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6003 Регистрация: 26.3.2002 Где: Германия Репутация: 19 Всего: 99 |
Для начала сделай функцию и вставь туда повторяющийся кусок:
Как объявлять функции и т.д. найдешь тут: http://vb.hut.ru/vbnovice/les1.htm А вообще я тебе про это 15.05. говорил. Самому не хочется мозгами пораскинуть? -------------------- Немецкая оппозиция потребовала упростить натурализацию иммигрантов В моем блоге: Разные истории из жизни в Германии "Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино". А. и Б. Стругацкие |
|||
|
||||
| Guest |
|
|||
|
Unregistered |
Так бы сразу и сказал, что делается это так:
Private Sub BA1_Click() BA1.Visible = False ... текст программы... Call XXX100 End Sub Public Function XXX100() As Long ....Часто используемый код.... End Function а то все вокруг да окола... |
|||
|
||||
| vADIKg |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 18.5.2005 Репутация: нет Всего: нет |
Не скажу, что я спец, но это работает.
И все. Тестил при 100 - работает
Это сообщение отредактировал(а) vADIKg - 18.5.2005, 16:14 |
|||
|
||||
![]()
|
| Правила форума "VB6" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | VB6 | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |