2014-11-08 5 views
0

Я хотел бы знать, почему следующий код, который генерируется при нажатии на поле «да/нет», не работает в первый раз, когда он выполняется. После нажатия на него код запускается, но не подтверждает тот факт, что флажок установлен, оставив меня с отмеченным флажком, но не правильным результатом. После отмены выбора правильный результат будет достигнут, а затем, снова выбрав его, код будет выполнен правильно.Функция мыши вниз должна быть обновлена ​​

Private Sub cmdAccounting_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) 

If Me.cmdAccounting = 0 Then 

    Me![frmMasterListOfEventsDetailHistory].Form!cost.Visible = True 
    Me![frmMasterListOfEventsDetailHistory].Form!Etichetta35.Visible = True 
    Me![frmMasterListOfEventsDetailHistory].Form!Etichetta37.Visible = True 
    Me![frmMasterListOfEventsDetailHistory].Form!Etichetta43.Visible = True 
    Me![frmMasterListOfEventsDetailHistory].Form!qty.Visible = True 
    Me![frmMasterListOfEventsDetailHistory].Form!tot.Visible = True 
    Me![frmMasterListOfEventsDetailHistory].Form!lineaAccounting1.Visible = True 
    Me![frmMasterListOfEventsDetailHistory].Form!lineaAccounting2.Visible = True 
    Me![frmMasterListOfEventsDetailHistory].Form!FileSaved.Visible = False 
    Me![frmMasterListOfEventsDetailHistory].Form!lblFileSaved.Visible = False 
    Me![frmMasterListOfEventsDetailHistory].Form!Favourite.Visible = False 
    Me![frmMasterListOfEventsDetailHistory].Form!lblFavourite.Visible = False 
    Me![frmMasterListOfEventsDetailHistory].Form!ln01.Visible = False 
    Me![frmMasterListOfEventsDetailHistory].Form!ln02.Visible = False 
    Me![frmMasterListOfEventsDetailHistory].Form!ln03.Visible = False 
    Me![frmMasterListOfEventsDetailHistory].Form!ln04.Visible = False 
    Me![frmMasterListOfEventsDetailHistory].Form!txtInfo.Visible = False 
    Me![frmMasterListOfEventsDetailHistory].Form!ln05.Visible = False 
    Me![frmMasterListOfEventsDetailHistory].Form!ln06.Visible = False 

Else 
    Me![frmMasterListOfEventsDetailHistory].Form!cost.Visible = False 
    Me![frmMasterListOfEventsDetailHistory].Form!Etichetta35.Visible = False 
    Me![frmMasterListOfEventsDetailHistory].Form!Etichetta37.Visible = False 
    Me![frmMasterListOfEventsDetailHistory].Form!Etichetta43.Visible = False 
    Me![frmMasterListOfEventsDetailHistory].Form!qty.Visible = False 
    Me![frmMasterListOfEventsDetailHistory].Form!tot.Visible = False 
    Me![frmMasterListOfEventsDetailHistory].Form!lineaAccounting1.Visible = False 
    Me![frmMasterListOfEventsDetailHistory].Form!lineaAccounting2.Visible = False 

    Me![frmMasterListOfEventsDetailHistory].Form!FileSaved.Visible = True 
    Me![frmMasterListOfEventsDetailHistory].Form!lblFileSaved.Visible = True 
    Me![frmMasterListOfEventsDetailHistory].Form!Favourite.Visible = True 
    Me![frmMasterListOfEventsDetailHistory].Form!lblFavourite.Visible = True 
    Me![frmMasterListOfEventsDetailHistory].Form!ln01.Visible = True 
    Me![frmMasterListOfEventsDetailHistory].Form!ln02.Visible = True 
    Me![frmMasterListOfEventsDetailHistory].Form!ln03.Visible = True 
    Me![frmMasterListOfEventsDetailHistory].Form!ln04.Visible = True 
    Me![frmMasterListOfEventsDetailHistory].Form!txtInfo.Visible = True 
    Me![frmMasterListOfEventsDetailHistory].Form!ln05.Visible = True 
    Me![frmMasterListOfEventsDetailHistory].Form!ln06.Visible = True 

End If 

Me.Form.Refresh 
End Sub 

ответ

1

Вам не нужно обновить, вы должны использовать Clik событие, а не MouseDown:

Private Sub cmdAccounting_Click() 
    If Me.cmdAccounting = 0 Then 
    Me![frmMasterListOfEventsDetailHistory].Form!cost.Visible = True 
    Else 
    Me![frmMasterListOfEventsDetailHistory].Form!cost.Visible = False 
    End If 
End Sub 

Ваша задача: состояние флажка меняется после MouseDown события, так что ваши результат неправильный, и вы должны использовать refresh, чтобы увидеть хороший результат ...

+0

Фантастический. благодаря –

Смежные вопросы