Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
ahamoth
0 / 0 / 1
Регистрация: 26.11.2010
Сообщений: 111
1

разрешить/запретить доступ к элементам управления (.Enable)

15.12.2010, 19:15. Просмотров 1345. Ответов 2
Метки нет (Все метки)

Здравствуйте. Есть форма Железная дорога. Мне нужно чтобы при запуске формы все поля формы (включая поля подчиненной формы) КРОМЕ комбобокса "выберите железную дорогу" были не активны. После выбора какой-либо дороги они становились активны и в них можно было вносить данные
как это сделать?
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.12.2010, 19:15
Ответы с готовыми решениями:

Доступ к элементам, элемента управления Список
Подскажите, как обратится и получить значения всех элементов , элемента управления Список(ListBox)...

Программно Запретить/Разрешить переход по записям
Всех с Наступившим Новым 2018 годом!!! :drink: Чёй та я уже подтупливаю в начале нового года и ни...

Доступ к элементам управления другого приложения. Часть 2
Здраствуйте! Управляю программой на Delphi, не могу понять одну вещь. На форме приложения есть...

Доступ к элементам управления (DGW, ListBox) из потоков
Под элементами управления имею в виду datgaridview, listbox и т.д. В общем подскажите в какую...

2
Teslenko_EA
1170 / 623 / 37
Регистрация: 30.05.2010
Сообщений: 712
15.12.2010, 23:30 2
Здравствуйте ahamoth.
"..были не активны .. становились активны .. как это сделать?.." - с применением кода VBA.
например такого :
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Private Sub Form_Open(Cancel As Integer)
    enCtl False
End Sub
Private Sub Выберите_железную_дорогу_AfterUpdate()
    enCtl Not Nz([Выберите_железную_дорогу], "") = ""
End Sub
Sub enCtl(bAdm As Boolean)
Const sN = "выберите железную дорогу"
Dim o As Object, b As Boolean
With Me
    .[выберите железную дорогу].SetFocus
    For Each o In .Controls
        b = (o.Name = sN) Or (bAdm = True)
        If Not Left(o.Name, 7) = "Надпись" Then 'если контрол не является меткой.
             o.Enabled = b
        End if
    Next
End With
End Sub
рекомендация : откажитесь от использования длинных имен в качестве имен объектов.
выберите железную дорогу
выберите_железную_дорогу
выберитеЖелезнуюДорогу

Евгений.
2
ironegg
1900 / 777 / 31
Регистрация: 11.02.2010
Сообщений: 1,567
16.12.2010, 18:30 3
вот еще, на мой взгляд, более удачный способ обращения к нужным контролам
Visual Basic
1
2
3
4
5
6
Dim i As Control
For Each i In Me.Controls
    If TypeName(i) = "TextBox" Then
        MsgBox i.Name  'здесь впишешь свои инструкции
    End If
Next i
1
16.12.2010, 18:30
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.12.2010, 18:30

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Как получить доступ к элементам управления другой формы
как можно получит значение элементов первой формы если в проекте 2 формы Form1 f = new Form1();...

Доступ к элементам управления одной активности через другую
Имеется две активности. Когда запускаю вторую активность, первую не выгружаю (не удаляю). Можно ли...

Как запретить/разрешить скролирование в DBGrid?
После сохранения данных в строке DBGrid я делаю проверку по всей таблице(перебор с первой до...

Найти, запретить/разрешить открытие LPT порта
Появилась необходимость программно отыскать адрес или адреса LPT порта или портов на данном...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.