Практическое руководство. Вызов процедуры, которая не возвращает значение
Обновлен: Ноябрь 2007
Процедура Sub не возвращает значения в вызывающий код. Ее вызов осуществляется явным образом в отдельном операторе. Такую процедуру нельзя вызвать, просто указав ее имя в выражении.
Вызывающий оператор при необходимости может включать ключевое слово Call. Это рекомендуется для большей понятности кода.
Вызов процедуры Sub
Используйте оператор Call, за оператором Call укажите имя процедуры Sub.
Запишите имя процедуры с заключенным в скобки списком аргументов. Если не указано никаких аргументов, скобки можно опустить. Тем не менее использование круглых скобок облегчает чтение кода.
Поместите аргументы в списке аргументов в круглых скобках, разделяя их запятыми. Убедитесь что аргументы указаны в том же порядке, в каком в процедуре Sub определены соответствующие параметры.
В следующем примере вызывается функция Visual BasicAppActivate для активации окна приложения. AppActivate принимает заголовок окна в качестве единственного аргумента. Процедура не возвращает значения в вызывающий код. Если программа "Блокнот" не запущена, в примере будет создано исключение ArgumentException. При выполнении процедуры Shell предполагается, что указанные пути соответствуют фактическим путям к приложениям.
Dim notepadID As Integer ' Activate a running Notepad process. AppActivate("Untitled - Notepad") ' AppActivate can also use the return value of the Shell function. ' Shell runs a new instance of Notepad. notepadID = Shell("C:\WINNT\NOTEPAD.EXE", AppWinStyle.NormalFocus) ' Activate the new instance of Notepad. AppActivate(notepadID)
См. также
Задачи
Практическое руководство. Создание процедуры
Практическое руководство. Вызов процедуры, возвращающей значение
Практическое руководство. Вызов обработчика событий в Visual Basic
Основные понятия
Параметры и аргументы процедуры