|
|
|
| Никак не соображу, что за ерунда, пишу
Dim ctl As Control
.....
For Each ctl In Me.Controls
ctl.Enabled = False
Next
.......
|
генерит ошибку, что не поддерживает метод ... Это как это? Причем в этой же процедуре, но по другому условию нормально отрабатывает ...
я понимаю, что я Enabled набрал руками с клавиатуры, но как то странно, там работает, а рядом нет ...
Кто знает, как обмануть акс, или как получить штатно блокировку поля перебором контролов? | |
|
| |
|
|
|
| не у всех конетролов есть свойство Enabled.
Соответственно не может присвоить ему значение.
Делай доп проверку какую нибуть: тип контрола, имя и т.п. | |
|
| |
|
|
|
|
Private Sub cnt_Set(bo As Boolean)
Dim cnt As Object
On Error Resume Next
For Each cnt In Me.Controls
If Mid(cnt.Name, 1, 5) = "Text_" Then cnt.Locked = IIf(bo, False, True): cnt.BackColor = IIf(bo, &H80000005, &HE0E0E0)
If Mid(cnt.Name, 1, 6) = "Check_" Then cnt.Enabled = IIf(bo, True, False)
Next
End Sub
|
| |
|
| |
|
|
|
| ок, спасибо ... /свойство .Name в списке тоже отсутствует, равно как и .tag Я так понимаю, что это ушло вместе с 97-м аксом, как это в 2003? как бы работает, но свойство просто вписываешь .../ | |
|
| |