Delphi. Учимся на примерах | страница 20
Прежде всего объявите глобальную переменную xr_num типа string :
>var
> Form1: TForm1;
> xr_num: string;
Теперь займемся командами меню. Обработчик события OnClick для пункта Файл→Открыть:
>procedure TForm1.N1Click(Sender: TObject);
>begin
> //начинаем обзор с текущей папки
> OpenDialog1.InitialDir:= GetCurrentDir;
> if not OpenDialog1.Execute then ShowMessage('File not selected!')
> else //загружаем выбранный файл в Memo
> Memo1.Lines.LoadFromFile(OpenDialog1.FileName);
>end;
Здесь мы открываем стандартное диалоговое окно обзора и просим пользователя выбрать текстовый или любой другой файл. После того как пользователь выбрал файл, загружаем его в нашу программу.
Обработчик события OnClick для пункта Файл→Сохранить:
>procedure TForm1.N2Click(Sender: TObject);
>begin
> SaveDialog1.InitialDir:= GetCurrentDir;
> if not SaveDialog1.Execute then ShowMessage('File not saved!')
> else //сохраняем в файл
> Memo1.Lines.SaveToFile(SaveDialog1.FileName);
>end;
Открываем диалоговое окно сохранения файла. После того как пользователь выбрал место сохранения файла, извлекаем текст из Memo и сохраняем его в выбранной папке.
Обработчик события OnClick для пункта Файл→Выход:
>procedure TForm1.N4Click(Sender: TObject);
>begin
> Close;//закрыть программу
>end;
Обработчик события OnClick для пункта Правка→Число XOR:
>procedure TForm1.XoR1Click(Sender: TObject);
>begin
> if not InputQuery('XOR', 'Введите число xor:', xr_num)
> then Exit;
>end;
Здесь мы отображает окно для выбора числа xor. Указанное пользователем число будет занесено в переменную xr_num.
Обработчик события OnClick для пункта Правка→Зашифровать/Расшифровать:
>procedure TForm1.N5Click (Sender: TObject);
>var
> xr: string; //зашифрованный текст
> i: integer; //счетчик цикла begin
> for i:=1 to Length(Memo1.Text) do
> begin //перебираем каждый символ в тексте
> //выполняем указанное пользователем смещение
> xr:= xr + Chr(Ord(Memo1.Text[i]) xor StrToInt(xr_num));
> end;
> //заменяем оригинальный текст на зашифрованный
> Memo1.Text := xr;
>end;
По этой команде меню выполняется шифрование текста, который сейчас находится в поле Memo. В цикле перебираются все символы, и каждый из них шифруется отдельно.
Обработчик события OnClick для пункта Правка→Очистить:
>procedure TForm1.N8Click(Sender: TObject);
>begin
> Memo1.lines.Clear; //очистка Memo
>end;
Очищаем поле Memo от содержащегося в нем текста.
Обработчик события OnClick для пункта Формат→Перенос по словам:
>procedure TForm1.N9Click(Sender: TObject);
>begin