Visual Basic 6. Руководство разработчика



         

Использование элемента управления - часть 3


Sub Main()

     MsgBox "28908 в шестнадцатеричном виде     = " & IntToHex(28908)

End Sub

Function IntToHex(Decimal)

IntToHext(Decimal)

End Function

Подпрограмма Main() вызывает функцию IntToHex() для преобразования деся­тичного числа в шестнадцатеричное и вывода результата в окно сообщений.

Писать свою функцию для преобразования десятичного значения в шестнадца­теричное не нужно: это сделано для демонстрации методов элемента управления Script. Но можно разработать собственные подпрограммы для преобразования температуры, если этот пример еще не вызывает у вас аллергии. Поместите третью командную кнопку на форму и введите следующий код в ее обработчик события Click.

Private Sub Command3_Click()

script = "Sub Main()" S vbCrLf & _

"MsgBox ""28908 в шестнадцатеричном виде = ""& _

IntToHex(28908)" & vbCrLf & _

"End Sub" & vbCrLf _

"Function IntToHex(Decimal)" & vbCrLf & _

" IntToHex=Hex(Decimal)" & vbCrLf & _

"End Function" & vbCrLf

ScriptControll.AddCode script

ScriptControll.Run "Main"

End Sub

Запустите проект, нажмите третью кнопку, и в окне сообщения появится значение 70ЕС. Оператор ScriptControll.AddCode добавляет сегмент кода к элементу управления (он хранится во внутреннем формате, который программист знать не обязан). Затем метод Run вызывает подпрограмму Main() по имени. Синтаксис метода Run следующий.

ScriptControll.Run procedure_name, param_array()

Его аргументы: procedure_пате — имя вызываемой процедуры, param_array — массив, содержащий параметры, передаваемые процедуре. Второй аргумент необязателен.

Можно вызвать функцию IntToHex() непосредственно из метода Run. Закомментируйте строку, вызывающую метод Run в последнем примере, и введите следующий оператор.

ScriptControll.ExecuteStatement "MsgBox IntToHex(3432)"

В окне сообщения появится Значение D68 (шестнадцатеричный эквивалент целого 3432).




Содержание  Назад  Вперед