Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут
закрыты.
Читайте
требования к создаваемым темам.
-
Kip
-
- Начинающий

-
-
- Сообщения: 4
- Зарегистрирован: 27.02.2005 (Вс) 15:08
Kip » 27.02.2005 (Вс) 15:20

Господа помогите начинающему.
Суть вопроса. Нужно из одного textboxа, слово в русской кодировке перевести в соседний textbox, но уже в виде двух или трёх значных кодов разделённых табуляцией или запятой.
-
HotKitten
-
- Дятил

-

-
- Сообщения: 400
- Зарегистрирован: 24.01.2005 (Пн) 21:48
- Откуда: из дома
-
HotKitten » 27.02.2005 (Вс) 15:24
в смысле зашифровать???
-
Kip
-
- Начинающий

-
-
- Сообщения: 4
- Зарегистрирован: 27.02.2005 (Вс) 15:08
Kip » 27.02.2005 (Вс) 15:49

Каждой букве и цифре присвоить определённый код и после набора слова или предложения произвести перевод(в общем похоже на шифрование).
-
A.A.Z.
-
- Член-корреспондент академии VBStreets

-
-
- Сообщения: 3035
- Зарегистрирован: 30.06.2003 (Пн) 13:38
-
A.A.Z. » 27.02.2005 (Вс) 16:04
Ну...
- Код: Выделить всё
Function Crypt&(ByVal Letter$)
Crypt = Asc(Letter)
End Function
Function Decrypt$(ByVal Char&)
Decrypt = Chr(Char)
End Function
Использование (на форме 2 кнопки и 2 текстовых поля):
- Код: Выделить всё
Option Explicit
Function Crypt&(ByVal Letter$)
Crypt = Asc(Letter)
End Function
Function Decrypt$(ByVal Char&)
Decrypt = Chr(Char)
End Function
Sub Command1_Click()
Dim I&
Text2.Text = ""
For I = 1 To Len(Text1.Text)
Text2.Text = Text2.Text & CStr(Crypt(Mid(Text1.Text, I, 1))) & ";"
Next
Text2.Text = Left(Text2.Text, Len(Text2.Text) - 1)
End Sub
Private Sub Command2_Click()
Dim Arr$(), I&
Text2.Text = ""
Arr = Split(Text1.Text, ";")
For I = 0 To UBound(Arr)
Text2.Text = Text2.Text & Chr(CLng(Arr(I)))
Next
End Sub
Private Sub Form_Load()
Command1.Caption = "Зашифровать"
Command2.Caption = "Расшифровать"
Text2.Text = ""
Text2.Locked = True
MsgBox "В первом поле - то, что надо зашифровать или расшифровать, во втором - результат", vbInformation
End Sub
-
Kip
-
- Начинающий

-
-
- Сообщения: 4
- Зарегистрирован: 27.02.2005 (Вс) 15:08
Kip » 27.02.2005 (Вс) 16:54

Огромное спасибо за пример, но нужно обращение к собственной кодировке.
Хотя может я чего не понимаю, так как совсем-совсем начинающий.
-
Amed
-
- Алфизик

-
-
- Сообщения: 5346
- Зарегистрирован: 09.03.2003 (Вс) 9:26
-
Amed » 27.02.2005 (Вс) 17:07
Тогда функции Crypt и Decrypt надо заполнить кодом с собственной кодировкой:
- Код: Выделить всё
Private code1()
Private code2()
Private Function crypt(letter As String) As String
Dim i As Integer
For i = 0 To UBound(code1)
If code1(i) = letter Then
crypt = code2(i)
End If
Next i
End Function
(Это только пример создания своей кодировки)
Private Sub Form_Load()
code1 = Array("a", "b", "c")
code2 = Array("1", "2", "3")
MsgBox crypt("b")
End Sub
-
Kip
-
- Начинающий

-
-
- Сообщения: 4
- Зарегистрирован: 27.02.2005 (Вс) 15:08
Kip » 27.02.2005 (Вс) 17:28

Огромное спасибо!!!
Это то, что нужно.
-
GSerg
-
- Шаман

-
-
- Сообщения: 14286
- Зарегистрирован: 14.12.2002 (Сб) 5:25
- Откуда: Магадан
GSerg » 27.02.2005 (Вс) 17:40
Crypt - это всё-таки склеп
Лучше уж Encrypt

Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас
Вернуться в Visual Basic 1–6
Кто сейчас на конференции
Сейчас этот форум просматривают: PetalBot, SemrushBot, Yandex-бот и гости: 29