Синтаксис: StrReverse(Expression As String) Изменяет порядок следования символов в строке, на обратный. Т.е. если переменная содержит "ТИП”, функция возвратит "ПИТ”. Пример использования функции StrReverse: Option Explicit Dim strStroka As String Private Sub Form_Load() Text1.Text = "" Text2.Text = "" End Sub Private Sub Text1_Change() strStroka = Text1.Text Text2.Text = StrReverse(strStroka) End Sub А как же поступали раньше, да, интересно. А чего тут думать давайте напишем программу, без использования функции. Работа со строками может приносить интересные плоды, и я не совсем давно написал одну программу. Объясню, зачем нужны переменные, строка из поля будет попадать для обработки в первую переменную - strA, во вторую переменную, strB, после обработки будет помещен результат, после чего выведен во второе текстовое поле. Ну а третья переменная, I, понадобится для хранения значения счетчика, используемого в цикле. Что нам необходимо? Не будем терять время и приступим, вначале создадим новый проект и форму переименуем из Form1 в ReversThis. На форме расположим 2 TextBox (текстовых поля) и 2 CommandButton (кнопки). Переименуем соответственно txtFirst и txtSecond, cmdCls и cmdExit. Думаю, название элементов говорят сами за себя, в первое текстовое поле мы будем вводить текст, а во втором получать результат разворота. Чтобы получилась не сырая недоработка, а законченный проект – нажатие на одну кнопку будет очищать текстовые поля, а на вторую завершать приложение. Для выполнения поставленной задачи нам потребуется использовать цикл For …Next и 2 функции работы со строками: Len и Mid. Функция Len возвращает число символов содержащихся в строковой переменной, Len(strA). Например: Помести на форме TextBox, Label. Dim strA as String strA = Text1.text Label1.Caption = Len(strA) Чтобы программа отслеживала изменения, происходящие в текстовом поле, этот код должен происходить по событию Change. Private Sub Text1_Change() End Sub Для очищения текстового поля и метки по событию формы Load, приравняем: Text1 = "" и Label1 = "" Private Sub Form_Load() End Sub Но вернемся к нашей программе. Для чего же нужна будет нам функция Len? Мы вводим текст в поле и с помощью функции отслеживаем длину строки, чтобы использовать ее в цикле. Задумались? Это значение будет указывать нам максимальное значение в цикле. Т.е. цикл будет происходить от 1 до Len(strA). Ладно, дальше станет понятнее. Еще нам нужна функция Mid. Синтаксис: Mid("переменная”, "начальная_позиция”, "количество_символов”) Например: Private Sub Form_Load() Dim strA As String strA = "Пример Использования Функции" Label1 = Mid(strA, 8, 13) 'Результат "Использования" End Sub С помощью функции Mid мы будем обрабатывать переменную strB. Вот собственно итог нашей работы: Option Explicit Dim strA As String Dim strB As String Dim I As Integer Private Sub Form_Load() txtFirst.Text = "" txtSecond.Text = "" End Sub Private Sub txtFirst_Change() strB = "" strA = txtFirst.Text For I = 1 To Len(strA) strB = Mid(strA, I, 1) & strB Next I txtSecond.Text = strB End Sub Private Sub cmdCls_Click() txtSecond.Text = "" strB = "" txtFirst.Text = "" strA = "" End Sub Private Sub cmdExit_Click() Unload Me End Sub
|