Использование флажка для управления
-
21-12-2019 - |
Вопрос
Я создал элемент управления в виде флажка, при активации которого определенные элементы управления становятся видимыми..После его деактивации элементы управления становятся невидимыми.Моя проблема связана с загрузкой формы.При первом установлении флажка (при событии mousedown) ничего не происходит, заставляя пользователя отменить его выбор, а затем установить повторно..При повторном выборе это работает нормально..Я предполагаю, что мне нужно где-то выполнить какое-то обновление, но я не могу понять, как..не мог бы кто-нибудь помочь мне?Ниже приведен мой код..Спасибо
Private Sub cmdAccounting_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Me.cmdAccounting = 0 Then
cost.Visible = True
Etichetta35.Visible = True
Etichetta37.Visible = True
Etichetta43.Visible = True
qty.Visible = True
tot.Visible = True
lineaAccounting1.Visible = True
lineaAccounting2.Visible = True
Me.FileSaved.Visible = False
Me.lblFileSaved.Visible = False
Else
cost.Visible = False
Etichetta35.Visible = False
Etichetta37.Visible = False
Etichetta43.Visible = False
qty.Visible = False
tot.Visible = False
lineaAccounting1.Visible = False
lineaAccounting2.Visible = False
Me.FileSaved.Visible = True
Me.lblFileSaved.Visible = True
End If
Me.Form.Refresh
End Sub
Решение
Я бы посоветовал вам сохранить переход к коду в его собственном подразделе, что-то вроде Sub UpdateControls().Затем вы можете вызвать этот вспомогательный модуль в двух местах: Form_Current
и _AfterUpdate
событие любого элемента управления, которое должно изменить состояние.Удалите Me.Form.Refresh
линия.Form_current срабатывает при отображении первой записи и повторяется при каждом переходе пользователя. AfterUpdate
сработает при изменении флажка внутри записи.