powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Панель инструментов и кнопки на ней (+ путь от контрола к главной форме)
15 сообщений из 40, страница 2 из 2
Панель инструментов и кнопки на ней (+ путь от контрола к главной форме)
    #32630441
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Глазки протер и возник вопрос.
Саныч, вот это

If TypeName(c) = "SubForm"

работать не будет - нет такого типа - SubForm
...
Рейтинг: 0 / 0
Панель инструментов и кнопки на ней (+ путь от контрола к главной форме)
    #32630443
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Victoshaработать не будет - нет такого типа - SubForm
У меня работает. Видать, нечистая сила сегодня со мной...
...
Рейтинг: 0 / 0
Панель инструментов и кнопки на ней (+ путь от контрола к главной форме)
    #32630444
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а на вопрос в первоначальной постановке - определить, накодится ли активный контрол на подформе, ответит такая функция

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
Public Function IsControlOnSubForm() As Boolean
  On Error Resume Next
  
   Dim tObj As Object
   Dim formLevel As Long
   
   
   Set tObj = ActiveControl
   
   Do While Not tObj Is Nothing
     Set tObj = tObj.Parent
     
     If Err.Number <>  0  Then
       Err.Clear
       Exit Do
     End If
     
     If TypeName(tObj) Like "Form*" Then
       formLevel = formLevel +  1 
     End If
       
     IsControlOnSubForm = formLevel >  1 
   Loop
   
   

End Function
...
Рейтинг: 0 / 0
Панель инструментов и кнопки на ней (+ путь от контрола к главной форме)
    #32630578
Фотография funddd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мать-мать-мать!!!

Ух ты!

Вот спасибо!

Да, в принципе, у меня был частный случай, но и за глобальное ее решение, и за "IsControlOnSubForm = formLevel > 1" спасибо!





NB. Форум — плохая вещь. Не будь его, сидел бы неделю, и допер бы до отлова ошибки. А так, вопрос написал, ручки на пузе сложил, сиди и жди, пока добрые зубры все за тебя сделают. Плохо это. Мозги, получается, не нужны — достаточно того, что они есть у Victosh'и и ВС. Горе мне.
...
Рейтинг: 0 / 0
Панель инструментов и кнопки на ней (+ путь от контрола к главной форме)
    #32630584
Фотография Serge Gavrilov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Victosha
...
If TypeName(tObj) Like "Form*" Then
...


Маленькое уточнение: в A97 TypeName(tObj) для формы вернет IForm_ИмяФормы
...
Рейтинг: 0 / 0
Панель инструментов и кнопки на ней (+ путь от контрола к главной форме)
    #32630653
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Serge GAvrilov
понял

2 funddd

сочтемся - мне тоже ручки на пузе рано или поздо сложить придется...

А идея - это Geo+Саныч
...
Рейтинг: 0 / 0
Панель инструментов и кнопки на ней (+ путь от контрола к главной форме)
    #32630743
Фотография funddd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, столкнулся еще с проблемой отлова пробелов и зажима их в квадратные скобки.
...
Рейтинг: 0 / 0
Панель инструментов и кнопки на ней (+ путь от контрола к главной форме)
    #32630760
Фотография funddd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ээээ....
а как бы это содержимому контрола, полное имя которого мы знаем, присвоить значение какое-нить? Через Eval оно только достается... Или нет?
...
Рейтинг: 0 / 0
Панель инструментов и кнопки на ней (+ путь от контрола к главной форме)
    #32631034
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
fundddээээ....
а как бы это содержимому контрола, полное имя которого мы знаем, присвоить значение какое-нить? Через Eval оно только достается... Или нет?
Наверно, надо этот полный адрес не в стринг запихивать, а по частям в коллекцию или в массив. И обращаться так:

forms(переменная)(переменная).form(переменная).form(переменная).form(переменная)
...
Рейтинг: 0 / 0
Панель инструментов и кнопки на ней (+ путь от контрола к главной форме)
    #32631099
AlTis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 funddd

Не знаю полностью задачу, но может подойдёт:

Код: plaintext
1.
2.
3.
4.
Dim ctl as control

set ctl = screen.activecontrol
ctl.value=...

+ обработчик ошибок
...
Рейтинг: 0 / 0
Панель инструментов и кнопки на ней (+ путь от контрола к главной форме)
    #32631133
Фотография funddd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2ВС: я по этому принципу и делал сначала. :)

2AITis: ты полностью убедил меня в моем идиотизме.
Правда, я уже две ночи не спал.

Спасибо всем!
...
Рейтинг: 0 / 0
Панель инструментов и кнопки на ней (+ путь от контрола к главной форме)
    #32631140
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир Саныч fundddээээ....
а как бы это содержимому контрола, полное имя которого мы знаем, присвоить значение какое-нить? Через Eval оно только достается... Или нет?
Наверно, надо этот полный адрес не в стринг запихивать, а по частям в коллекцию или в массив. И обращаться так:

forms(переменная)(переменная).form(переменная).form(переменная).form(переменная)

Если не секрет, а зачем это?
Неужели нельзя в данном случае написать просто
screen.activecontrol.value = "значение"
?
...
Рейтинг: 0 / 0
Панель инструментов и кнопки на ней (+ путь от контрола к главной форме)
    #32631149
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
:^) Geo прав. Я чешу левой рукой правое ухо.
...
Рейтинг: 0 / 0
Панель инструментов и кнопки на ней (+ путь от контрола к главной форме)
    #32631221
Фотография funddd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В тот момент, когда надо изменять значение, он уже не active.
...
Рейтинг: 0 / 0
Панель инструментов и кнопки на ней (+ путь от контрола к главной форме)
    #32631233
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fundddВ тот момент, когда надо изменять значение, он уже не active.
Но в какой-то момент, например, в тот, где ты берешь его имя, он активный? Так запоминай не имя, а ссылку:

dim c as access.control
set c = screen.activecontrol
...
' переводим фокус еще куда-то
...
c.value = "значение"
...
Рейтинг: 0 / 0
15 сообщений из 40, страница 2 из 2
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Панель инструментов и кнопки на ней (+ путь от контрола к главной форме)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]