Подмена символов |
Liade | Дата: Вторник, 03.02.2009, 18:35 | Сообщение # 1 |
Ранг 1
Группа: Проверенные
Сообщений: 16
Награды: 0
Репутация: 0
Статус: Offline
| Привет всем! Мне нужна помощь в форме должны быть два поля TEdit, и один Button. Вводишь в первый TEdit текст, нажимаешь на Button и во втором окне выводится тот же текст, но с замененными символами (то есть "а" заменяется на "е", "н" на "г" и т.д.) Помогите пожалуйста новичку, я уже совсем отчаялся p.s. при поиске в гугл, мною была найдена вот эта статья, но я мало чего в ней понял((
|
|
| |
|
Admin | Дата: Вторник, 03.02.2009, 19:09 | Сообщение # 2 |
Ранг 10
Группа: Пользователи
Сообщений: 1268
Награды: 16
Репутация: 2
Статус: Offline
| Чтобы обратиться к одному символу строки делаем так: s[1]:='A' символ под номером 1 будет изменен на A; Также можно и брать из строки в другую s1[1]:=s2[3]; Пробегаеш в цикле и все.
Не оказываю помощь через личные сообщения и ICQ
|
|
| |
|
Liade | Дата: Вторник, 03.02.2009, 19:48 | Сообщение # 3 |
Ранг 1
Группа: Проверенные
Сообщений: 16
Награды: 0
Репутация: 0
Статус: Offline
| Спасибо, что быстро ответил! дело в том, что я совсем новичек, скачал delphi 7 пару дней назад, еще почти совсем ничего там не понимаю, не мог бы ты объяснить мне по пунктам пожалуйста?
|
|
| |
|
Ekz | Дата: Вторник, 03.02.2009, 19:50 | Сообщение # 4 |
Ранг 10
Группа: Пользователи
Сообщений: 164
Награды: 2
Репутация: 1
Статус: Offline
| Code for i:=1 to length(edit1.text) do case edit1.text[i] do 'a': edit1.text[i]:='e'; 'н': edit1.text[i]:='г' ; и так далее Писал прямо здесь, так что синтаксис сам поправишь, если что.
|
|
| |
|
Ekz | Дата: Вторник, 03.02.2009, 19:53 | Сообщение # 5 |
Ранг 10
Группа: Пользователи
Сообщений: 164
Награды: 2
Репутация: 1
Статус: Offline
| Quote (Liade) объяснить мне по пунктам пожалуйста? Счас будет тебе инструкция))
|
|
| |
|
Admin | Дата: Вторник, 03.02.2009, 19:58 | Сообщение # 6 |
Ранг 10
Группа: Пользователи
Сообщений: 1268
Награды: 16
Репутация: 2
Статус: Offline
| Ekz, ошибку сделал, хотя не страшно. end забыл у case Это я не для тебя, а для Liade. Чтобы не мучился искать ошибку. Кстати Liade, знаеш паскаль? синтаксис, основы? Можеш почитать учебник на сайте у меня, доступно все писал, должно быть легко
Не оказываю помощь через личные сообщения и ICQ
|
|
| |
|
Ekz | Дата: Вторник, 03.02.2009, 20:08 | Сообщение # 7 |
Ранг 10
Группа: Пользователи
Сообщений: 164
Награды: 2
Репутация: 1
Статус: Offline
| ВОт. клискаем по кнопке два раза, чтбы появилась процедура Code procedure TForm1.Button1Click(Sender: TObject); и в ней пишем код. Вот что должно получится Code
procedure TForm1.Button1Click(Sender: TObject); var i:integer; s:string; begin s:=edit1.Text; //записываем содержимое Edit'а в переменную For i:=1 to length(Edit1.text) do //цикл от 1 до длины Edit'а begin case s[i] of //В завасимости от того, какая буква будет в i'йном элементе строки s делаем 'а': s[i]:='е'; //Если "а" то меняем на "е" 'н': s[i]:='г'; //Если "н" то меняем на "г" end; end; edit2.Text:=s; // Полученную строку записываем в Edit2 end;
end.
|
|
| |
|
Ekz | Дата: Вторник, 03.02.2009, 20:09 | Сообщение # 8 |
Ранг 10
Группа: Пользователи
Сообщений: 164
Награды: 2
Репутация: 1
Статус: Offline
| А вот готовая программа, реализующая этот пример
|
|
| |
|
Liade | Дата: Вторник, 03.02.2009, 20:13 | Сообщение # 9 |
Ранг 1
Группа: Проверенные
Сообщений: 16
Награды: 0
Репутация: 0
Статус: Offline
| почти совсем ничего незнаю:(, так же как что делать сQuote (Liade) for i:=1 to length(edit1.text) do case edit1.text[i] do 'a': edit1.text[i]:='e'; 'н': edit1.text[i]:='г' ; и так далее
|
|
| |
|
Ekz | Дата: Вторник, 03.02.2009, 20:15 | Сообщение # 10 |
Ранг 10
Группа: Пользователи
Сообщений: 164
Награды: 2
Репутация: 1
Статус: Offline
| ты выше смотри, я уже все и код полный и саму прогу выложил
|
|
| |
|
Liade | Дата: Вторник, 03.02.2009, 20:24 | Сообщение # 11 |
Ранг 1
Группа: Проверенные
Сообщений: 16
Награды: 0
Репутация: 0
Статус: Offline
| Спасибо! все работает! столкнулся со следующей проблемой: нужна многострочность, то есть чтобы при нажатии на enter переходило на следущую строчку
|
|
| |
|
Ekz | Дата: Вторник, 03.02.2009, 20:33 | Сообщение # 12 |
Ранг 10
Группа: Пользователи
Сообщений: 164
Награды: 2
Репутация: 1
Статус: Offline
| Вместо TEdit используй TMemo
|
|
| |
|
Liade | Дата: Вторник, 03.02.2009, 20:43 | Сообщение # 13 |
Ранг 1
Группа: Проверенные
Сообщений: 16
Награды: 0
Репутация: 0
Статус: Offline
| А чтобы в окошке TMemo не было текста при запуске программы (или чтобы он исчезал при выборе окошка)?
Сообщение отредактировал Liade - Вторник, 03.02.2009, 20:45 |
|
| |
|
Admin | Дата: Вторник, 03.02.2009, 20:57 | Сообщение # 14 |
Ранг 10
Группа: Пользователи
Сообщений: 1268
Награды: 16
Репутация: 2
Статус: Offline
| свойство Lines помойму.
Не оказываю помощь через личные сообщения и ICQ
|
|
| |
|
Liade | Дата: Вторник, 03.02.2009, 21:02 | Сообщение # 15 |
Ранг 1
Группа: Проверенные
Сообщений: 16
Награды: 0
Репутация: 0
Статус: Offline
| все!! спасибо всем большое!!!
|
|
| |
|