Страница: 1 |
Страница: 1 |
Вопрос: помогите с процедурой
Добавлено: 09.06.08 12:10
Автор вопроса: Trey
У меня в каждой форме есть вот такой код
Dim Key As Boolean
Private Sub Form_Load()
Key = False
Image1.Picture = Image11
Image2.Picture = Image21
Image3.Picture = Image31
Image4.Picture = Image41
End Sub
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Key = False Then Exit Sub
Key = False
Image1.Picture = Image11
Image2.Picture = Image21
Image3.Picture = Image31
Image4.Picture = Image41
End Sub
Private Sub Image1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Key = True Then Exit Sub
Key = True
Image1.Picture = Image12
End Sub
Private Sub Image2_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Key = True Then Exit Sub
Key = True
Image2.Picture = Image22
End Sub
Private Sub Image3_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Key = True Then Exit Sub
Key = True
Image3.Picture = Image32
End Sub
Private Sub Image4_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Key = True Then Exit Sub
Key = True
Image4.Picture = Image42
End Sub
как написать процедуру чтобы все это вызывалась из Module1?
Ответы
Всего ответов: 9
Номер ответа: 1
Автор ответа:
Holsten
Вопросов: 5
Ответов: 100
Профиль | | #1
Добавлено: 09.06.08 15:40
сменить Private на Public
Номер ответа: 2
Автор ответа:
Trey
Вопросов: 13
Ответов: 45
Профиль | | #2
Добавлено: 09.06.08 15:41
я и сам знаю это нужно будет в модуле сделать... а как вызывать это все в форму? чтобы кода поменьше было
Номер ответа: 3
Автор ответа:
Trey
Вопросов: 13
Ответов: 45
Профиль | | #3
Добавлено: 09.06.08 15:41
я и сам знаю это нужно будет в модуле сделать... а как вызывать это все в форму? чтобы кода поменьше было
Номер ответа: 4
Автор ответа:
Trey
Вопросов: 13
Ответов: 45
Профиль | | #4
Добавлено: 09.06.08 15:41
я и сам знаю это нужно будет в модуле сделать... а как вызывать это все в форму? чтобы кода поменьше было
Номер ответа: 5
Автор ответа:
Holsten
Вопросов: 5
Ответов: 100
Профиль | | #5
Добавлено: 09.06.08 15:45
Я понимаю, что ты плаваешь в вопросе, переформулируй.
Номер ответа: 6
Автор ответа:
Trey
Вопросов: 13
Ответов: 45
Профиль | | #6
Добавлено: 09.06.08 15:47
допустим есть Module1 там вышеизложенный код.
Как эту процедуру вызывать в формах
Номер ответа: 7
Автор ответа:
Holsten
Вопросов: 5
Ответов: 100
Профиль | | #7
Добавлено: 09.06.08 15:58
Вышеизложенный код для всех форм не подойдет!
В коде каждой "формы" надо бы создать оболочку типа:
Private Sub Form_Load()
Call super_puper_Form_Load(Me)
End Sub
А в модуле создать публичные прцедуры похожие на:
Public Sub super_puper_Form_Load(frm As Form)
frm.Image1.Picture = ...
...
End Sub
Спрашивай.
Номер ответа: 8
Автор ответа:
Winand
Вопросов: 87
Ответов: 2795
Web-сайт:
Профиль | | #8
Добавлено: 09.06.08 18:48
Для каждого события Form_MouseMove, Image3_MouseMove и т.д. надо будет вызывать некую процедуру из модуля, т.ч. кода не станет намного меньше.
Номер ответа: 9
Автор ответа:
Trey
Вопросов: 13
Ответов: 45
Профиль | | #9
Добавлено: 09.06.08 18:49
я уже понял что гаразда проще будет оставить все как есть