Логин: Пароль:    Регистрация Всеми возможностями сайта можно пользоваться
только после авторизации.
   Забыли пароль?

Поиск
L



Статистика
u
Пользователи онлайн: нет
Гостей онлайн: 2
Всего онлайн: 2
Зарегистрировано юзеров: 6619
Комментариев на сайте: 650
Новый юзер: Dysonetn



Последние комментарии
c
dealrattKi прокомментировал "Урок 3 - Конструкция IF...THEN...ELSE":
Это действительно радует меня. --- Бесподобное сообщение скачать fifa, скачать фифа а также [url=http://15fifa.ru/novosti-fifa-15]fifa 15 последние новости[/url] скачать фифа
intatryadebra прокомментировал "Урок 53 - Потоки в Delphi, (часть 1/3)":
Revival RO is best free ro populair ragnarok online private server founded in 2017 2018. Revival pvp big free Ragnarok server is an online exciting free MMORPG called ragnarok online, it a fun server for MMORPG gamers in ASIA. This is a top 10 ragnarok online private server thats high on the list and top ranking with massive players online. We have many players from Asia like Malaysia, Indonesia, Philippines, Thailand, Singapore, China, Hong Kong All these players are here to play free private ragnarok online server and battle players all around the world. They want to collect the best items and gear to be strongest in War of Emperium, War of Emperium are guild wars in this free RO Server. You can play this game on android phone or tablet or pc client. Enjoy And have fun. ragnarok online server http://bit.ly/2tKyawS

Урок 25 - Подробное изучение RichEdit'a

  В этом уроке изучим компонент RichEdit на вкладке Win32.

   Кинем на форму компонент RichEdit и ToolBar, свойство Align у RichEdit установим на alClient и наш компонент растянется на всю форму. Определимся что будет уметь делать наш редактор: Загружать, сохранять, выравнивание (По левому краю, по центру, по правому краю), стилизация текста.

   Итак начнем с самого простого, загрузка и сохранение, вытаскиваем 2 компонента OpenDialog и SaveDialog с вкладки Dialogs, и кликаем на ToolBar правой кнопкой, в появившемся меню выбираем New Button, также создадим еще одну кнопочку.

Результат
Вот что должно получится


  И в первой и во второй создаем событие OnClick и пишем код:
procedure TForm1.ToolButton1Click(Sender: TObject);
begin
  if OpenDialog1.Execute then  //Вызываем диалог открытия
    RichEdit1.Lines.LoadFromFile(OpenDialog1.FileName); //Открываем файл
end;
procedure TForm1.ToolButton2Click(Sender: TObject);
begin
  if SaveDialog1.Execute then //Вызываем диалог сохранения
    RichEdit1.Lines.SaveToFile(SaveDialog1.FileName); //Сохраняем файл
end;
   Загрузку и сохранение мы реализовали, теперь стилизацию текста, для этого сделаем разделитель в ToolBar'е, кликаем на него правой кнопкой и в меню выбираем New Separator и описанным выше способом создаем 3 кнопки и в их обработчиках событий OnClick пишем код:
procedure TForm1.ToolButton4Click(Sender: TObject);
begin
  RichEdit1.SelAttributes.Style:=[fsBold];  //Жирный
end;

procedure TForm1.ToolButton5Click(Sender: TObject);
begin
  RichEdit1.SelAttributes.Style:=[fsItalic]; //Курсив
end;

procedure TForm1.ToolButton6Click(Sender: TObject);
begin
  RichEdit1.SelAttributes.Style:=[fsUnderline]; //Подчеркнутый
end;


Результат


   Теперь выравнивание, также создаем разделитель и 3 кнопки. В событиях OnClick следующий код:
procedure TForm1.ToolButton7Click(Sender: TObject);
begin
  RichEdit1.Paragraph.Alignment:=taLeftJustify;//По левому краю
end;

procedure TForm1.ToolButton8Click(Sender: TObject);
begin
  RichEdit1.Paragraph.Alignment:=taCenter;// По центру
end;

procedure TForm1.ToolButton9Click(Sender: TObject);
begin
  RichEdit1.Paragraph.Alignment:=taRightJustify;// По правому краю
end;


Результат


   Цвет шрифта, вытаскиваем диалог выбора цвета ColorDialog и делаем кнопку с разделителем. В событии OnClick код:
procedure TForm1.ToolButton12Click(Sender: TObject);
begin
  if ColorDialog1.Execute then //Открываем диалог выбора цвета
    RichEdit1.SelAttributes.Color:= ColorDialog1.Color; //Применяем цвет выделенному фрагменту
end;


Результат


   Работает! Теперь научимся изменять размер выделенного текста, опять делаем разделить и вставляем Edit с компонентом UpDown. Свойство Associate установить на Edit1. В обработчике события Edit1 OnChange напишем код:
procedure TForm1.Edit1Change(Sender: TObject);
begin
  RichEdit1.SelAttributes.Size:=StrToInt(Edit1.Text);  // Изменяем размер
end;


Результат


   Можно изменять внешний вид шрифта, вытащим FontDialog и создадим еще одну кнопочку в её событии OnClick напишем:
procedure TForm1.ToolButton15Click(Sender: TObject);
begin
   if FontDialog1.Execute then
    RichEdit1.Font:= FontDialog1.Font;
end;


Результат


   Теперь у нас есть простой редактор текста, но чего-то не хватает. Не хватает стандартных функций вырезки, вставки, копирования и т.д. Урок получился довольно большим и поэтому мы схитрим, не будем писать код а воспользуемся стандартными функциями, открою вам небольшой секрет, все что мы сейчас сделали можно было не писать, а воспользоваться всё теми же функциями.

   Все что нам надо сделать это вытащить ActionList и PopupMenu на вкладке Standart. Кликаем два раза на ActionList и дальше как на картинке.

Результат


   Затем выбираем действие в появившемся меню TEditCut, также добавляем: TEditCopy, TEditPaste, TEditSelectAll, TEditUndo. В конечном итоге у вас должно получится вот это:

Результат


   Теперь в PopupMenu создаём 5 пунктов с любым именем, в свежесозданом пункте в свойстве Action выберем наше действие и Caption задастся сам и так для всех пяти штук, по желанию их можно перевести на русский язык. К конце нужно установить свойство PopupMenu RichEdit'а на PopupMenu1 и все готово можно пользоваться правой кнопкой.

Результат


   Картинки я оставляю на вашу совесть. Экспериментируете!

Удачи!
Встретимся в следующем уроке!


Источник: www.thedelphi.ru
Автор: Савельев Александр
Опубликовано: 13 Апреля 2013
Просмотров: 32437

Урок 24 - Изучаем компонент PaintBox Урок 26 - Создаем игру Ping-pong - часть(1/3)

Зарегистрируйтесь или авторизуйтесь, чтобы добавлять комментарии.