Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.91/22: Рейтинг темы: голосов - 22, средняя оценка - 4.91
0 / 0 / 0
Регистрация: 27.03.2009
Сообщений: 26

Имя переменной как переменная. Как получить доступ к такой переменной?

27.03.2009, 14:52. Показов 4186. Ответов 20
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите как получать данные из переменной, если ее имя вычисляется? И соответственно как потом возвращать в подобную переменную данные? И соответственно менять свойства такой переменной?
Суть в том, что есть переменные с разными именами, но над ними и их свойствами проводятся одни и теже манипуляции. И приходится для каждой писать код. А так хотелось бы сделать это процедурой или функцией.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.03.2009, 14:52
Ответы с готовыми решениями:

Как получить имя переменной?
Для отладки кода появилась необходимость получать имена переменных. Это я могу сделать но только если переменная находится в глобальной...

Как получить доступ к переменной?
Дано натуральное число n. Выяснить, сколько положительных элементов содержит матрица A размерности n*n, если: а) a=sin(i+j/2) б)...

Как получить доступ к переменной?
не могу получить значение переменной username

20
 Аватар для BasicMan
19318 / 2625 / 84
Регистрация: 17.02.2009
Сообщений: 30,364
27.03.2009, 15:31
Visual Basic
1
2
3
sub/function XXX (varXXX as [Type1]) as [Type2]
   [сделай что-нибудь с] varXXX
end sub/function
это что ли нужно?

а в коде пишешь
Visual Basic
1
varYYY=XXX(varAAA)
или
Visual Basic
1
call XXX(varAAA)
1
0 / 0 / 0
Регистрация: 27.03.2009
Сообщений: 26
27.03.2009, 15:50  [ТС]
Цитата Сообщение от Влад69 Посмотреть сообщение
Visual Basic
1
sub/function XXX (varXXX as [Type1]) as [Type2]
это что ли нужно?
не совсем понял, [Type1] и [Type2] это что? Это тип переменных?
Если я все так делаю, редактор убирает квадратные скобки а при попытке кампиляции выдает:
Compile error:
User-difined type not defined
0
 Аватар для BasicMan
19318 / 2625 / 84
Регистрация: 17.02.2009
Сообщений: 30,364
27.03.2009, 16:11
1. или sub, или function
2. вместо Type1,Type2 конкретные типы переменных, например Boolean, Byte, Currency, Integer...

Добавлено через 1 минуту 53 секунды
и исчо кампиляция пишедзя с трима п
правилна будит компиляция

Добавлено через 1 минуту 19 секунд
Цитата Сообщение от dennila2 Посмотреть сообщение
менять свойства такой переменной
это что, позвольте уточнить

Добавлено через 45 секунд
точнее, как Вы "меняете свойства" переменной, и какие у переменной "свойства" есть
1
0 / 0 / 0
Регистрация: 27.03.2009
Сообщений: 26
27.03.2009, 16:17  [ТС]
за "КОМПИЛЯЦИЮ" спасибо! =))
я понял твою идею, но "sub/function XXX (varXXX as [Type1]) as [Type2]" передает в функцию значения переменных, а не их имена.
Я, видимо, не очень корректно поставил задачу. Говоря о ПЕРЕМЕННЫХ я имел в виду ОБЪЕКТЫ. Типа ПОЛЕ, НАДПИСЬ, КНОПКА...
0
 Аватар для BasicMan
19318 / 2625 / 84
Регистрация: 17.02.2009
Сообщений: 30,364
27.03.2009, 16:25
Это в модуле написать (ты хоть знаешь где модули в аксе находятся?)
Visual Basic
1
2
Public MeControl As Control 'тип "Элемент управления"
Public MeForm As Form 'тип "форма"
Это в проце, которая обрабатывает событие текущего Элемента управления
Visual Basic
1
2
Set MeControl = Me.ActiveControl
Set MeForm = Me
.........
.........
.........
1
0 / 0 / 0
Регистрация: 27.03.2009
Сообщений: 26
27.03.2009, 17:33  [ТС]
Цитата Сообщение от Влад69 Посмотреть сообщение
Это в модуле написать (ты хоть знаешь где модули в аксе находятся?)
чисто случайно нашел =))

[VB]Public MeControl As Control 'тип "Элемент управления"
.........[/QUOTE]
Спасибо, частично помогло!
а как теперь переменной MeControl присвоить ВЫЧИСЛЯЕМОЕ значение? =)))
0
 Аватар для BasicMan
19318 / 2625 / 84
Регистрация: 17.02.2009
Сообщений: 30,364
27.03.2009, 19:11
Visual Basic
1
meControl.value='1234345'
, т.е. работать как с обычными элементами управления: все свойства сохраняются.
аналогично можно передавать и в процедуру
Visual Basic
1
sub/function XXX (varXXX as Control) as [Type2]
1
0 / 0 / 0
Регистрация: 27.03.2009
Сообщений: 26
27.03.2009, 19:25  [ТС]
написав "а как теперь переменной MeControl присвоить ВЫЧИСЛЯЕМОЕ значение? =)))" я имел в виду немного не то.
set MeContro = [11]
debug.print MeContro.name ==>>> 11
как присвоить новое ВЫЧИСЛЯЕМОЕ значение для MeContro.name?
0
 Аватар для BasicMan
19318 / 2625 / 84
Регистрация: 17.02.2009
Сообщений: 30,364
27.03.2009, 19:30
Цитата Сообщение от dennila2 Посмотреть сообщение
set MeContro = [11]
Visual Basic
1
set MeContro = [12]
только и всего, по-моему так (из мультика какого-то)
MeContro = переменная , и ей все равно что в ней хранится.
0
0 / 0 / 0
Регистрация: 27.03.2009
Сообщений: 26
27.03.2009, 19:39  [ТС]
хе хе =))
set MeContro = [line11]
Name = MeControl.name ' "line11"
NewName = left(Name, 4)&12 ' "line12"

как теперь сделать set MeContro.name = "line12"?
0
 Аватар для BasicMan
19318 / 2625 / 84
Регистрация: 17.02.2009
Сообщений: 30,364
27.03.2009, 19:44
Цитата Сообщение от dennila2 Посмотреть сообщение
set MeContro.name = "line12"?
эт шо за хрень?
К чему у тебя NewName привязано?????????
в смысле: к какому контролу?
0
0 / 0 / 0
Регистрация: 27.03.2009
Сообщений: 26
27.03.2009, 19:50  [ТС]
если у тебя есть ася может там продолжим? Если есть - напиши мне в пм плз
0
118 / 118 / 10
Регистрация: 12.05.2010
Сообщений: 1,207
28.03.2009, 00:13
Dim i As Integer
For i=1 to 5
Controls("Надпись" & i).Caption=" № " & i
Next i

Эквиваленно

Надпись1.Caption=" № 1"
Надпись2.Caption=" № 2"
...
Надпись5.Caption=" № 5"
1
 Аватар для BasicMan
19318 / 2625 / 84
Регистрация: 17.02.2009
Сообщений: 30,364
30.03.2009, 11:21
dennila2, я тут хелп на досуге почитал, про контролы. Тебе нужна следующая структура
Visual Basic
1
set MeContro=Ме("имя контрола"),
где Ме - активная форма с элементом (если нужна любая другая форма, то использовать Forms("formname"))
"имя контрола" в строковом формате, т.е. с ним можно делать любые строковые операции.
вообще иногда полезно мануалы перечитывать.
1
0 / 0 / 0
Регистрация: 27.03.2009
Сообщений: 26
02.04.2009, 15:01  [ТС]
For Each ctl In Controls - Я обращаюсь ко всем КОНТРОЛЗАМ, а что мне надо написать вместо "Controls" что бы обращаться только к кнопкам?

и второй вопрос:
Controls(ctlName) - я обращаюсь к КОНТРОЛЗУ с именем "ctlName", а что мне написать вместо "Controls" что бы обращаться непосредственной к кнопке с таким-же именем?
0
 Аватар для BasicMan
19318 / 2625 / 84
Регистрация: 17.02.2009
Сообщений: 30,364
02.04.2009, 18:56
Buttons
0
0 / 0 / 0
Регистрация: 27.03.2009
Сообщений: 26
02.04.2009, 23:47  [ТС]
Цитата Сообщение от Бурундук Посмотреть сообщение
Buttons
это ответ для какого из двух подвопросов?
0
 Аватар для BasicMan
19318 / 2625 / 84
Регистрация: 17.02.2009
Сообщений: 30,364
03.04.2009, 11:00
Для обоих. Однако, для акса 2007 говорят это уже не походит )))
0
0 / 0 / 0
Регистрация: 27.03.2009
Сообщений: 26
03.04.2009, 11:26  [ТС]
Вопрос:
Цитата Сообщение от dennila2 Посмотреть сообщение
For Each ctl In Controls - Я обращаюсь ко всем КОНТРОЛЗАМ, а что мне надо написать вместо "Controls" что бы обращаться только к кнопкам?

и второй вопрос:
Controls(ctlName) - я обращаюсь к КОНТРОЛЗУ с именем "ctlName", а что мне написать вместо "Controls" что бы обращаться непосредственной к кнопке с таким-же именем?
остается открытым.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
03.04.2009, 11:26
Помогаю со студенческими работами здесь

Как получить доступ к переменной?
Делаю игру(гонки),начал писать скрипт для спидометра Speedemeter(C#),почти закончил,но понял,что не могу получить доступ к переменной...

Использовать значение строковой переменной как имя новой переменной
Есть некий объект (ob = ) и строка (st ="name"). Так вот нужно, чтобы name стало именем объекта ob. То есть >>>name ...

Как присвоить имя переменной равное аргументу другой переменной?
В общем вопрос такой: Допустим есть переменная string i= "qwer", хочу создать другую переменную имя у которой будет приравниваться...

Как получить имя переменной из массива JavaScript
Здравствуйте, вопрос дилетантский, но ни как не могу найти ответ. Допустим есть массив с данными, который я сортирую. Вопрос: как...

Как получить доступ к переменной класса?
есть класс формы с публичными перменными public ref class Form1 : public System::Windows::Forms::Form { public: String...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru