- •Оглавление
- •20.1. Практическая работа 83
- •Глава I. Знакомство со средой Delphi
- •1.1. Общие сведения
- •Глава II. Создание приложений в среде Delphi
- •2.1. Характеристика проекта
- •2.2. Файл проекта
- •2.3. Файл формы
- •2.4. Файл модуля
- •2.5. Файл ресурсов
- •2.6. Практическая работа
- •Глава III. Использование компонентов
- •3.1. Понятие компонента
- •3.2. Страница Standard.
- •3.3. Страница Additional.
- •3.4. Страница Win32.
- •3.5. Страница System.
- •3.6. Страница Data Access.
- •3.7. Страница Data Controls.
- •3.8. Страница qReport.
- •3.9. Страница Dialogs.
- •3.10. Основные свойства объектов.
- •Глава IV. Работа с кнопками
- •4.1. Стандартная кнопка Button.
- •4.2. Кнопка с рисунком BitBtn.
- •4.3. Кнопка быстрого доступа SpeedButton.
- •4.4. Практическая работа
- •4.5. Самостоятельная работа
- •Глава V. Поля редактирования
- •5.1. Edit-однострочный редактор
- •5.2. Memo-многострочный редактор
- •5.3. Практическая работа
- •5.4. Самостоятельная работа
- •5.5. MaskEdit - специальный редактор
- •5.6. Практическая работа
- •6.3. Структура программы.
- •6 .4. Типы данных
- •6.4.1. Простые типы данных
- •6.4.2. Структурные типы данных
- •6.4.3. Функции и процедуры работы со строками
- •6.4.4. Функции преобразования строк в другие типы.
- •6.5. Операторы языка
- •6.6. Практическая работа.
- •6.8. Самостоятельная работа
- •6.9. Самостоятельная работа
- •6.10. Самостоятельная работа
- •6.11. Обработка исключительных ситуаций
- •Глава VII. Классы в Object Pascal.
- •7.1. Понятие класса
- •7.2. Поля класса
- •7.3. Методы класса
- •Глава VIII. Процедуры и функции, реализующие диалоги
- •8.1. Процедура ShowMessage.
- •8.2. Функция MessageDlg.
- •8.3. Функция MessageDlgPos.
- •8.4. Функция InputBox
- •9.2. Практическая работа
- •9.3. Самостоятельная работа
- •Глава X. Работа со списками
- •10.1. Простой список ListBox.
- •10.2. Комбинированный список ComboBox.
- •10.3. Общая характеристика списков
- •10.3.1. Свойства
- •10.3.2. Методы
- •10.4. Объект UpDown
- •10.5. Практическая работа
- •10.6. Самостоятельная работа
- •10.7. Самостоятельная работа
- •10.8. Самостоятельная работа
- •Глава XI. Объекты MainMenu и PopupMenu.
- •11.1. Основные свойства объектов
- •11.2. Игра «Крестики-нолики»
- •11.3. Самостоятельная работа
- •Глава XII. Использование переключателей.
- •12.1. Объект CheckBox
- •12.2. Объект RadioButton
- •12.3. Объект RadioGroup
- •12.4. Практическая работа
- •12.5. Самостоятельная работа
- •12.6. Самостоятельная работа
- •Глава XIII. Регуляторы величины
- •13.1. Объект ScrollBar
- •13.2. Практическая работа
- •13.3.Объект TrackBar
- •13.4. Самостоятельная работа
- •13.5. Самостоятельная работа
- •13.6. Компонент ProgressBar
- •Глава XIV. Объединение элементов управления
- •14.1. Объект Panel.
- •14.2. Область прокрутки ScrollBox
- •14.3. Фреймы Frame.
- •14.4. Практическая работа
- •14.5. Самостоятельная работа
- •Глава XV. Работа с таблицами
- •15.1. Объекты StringGrid и DrawGrid
- •15.2. Проект «Олимпиада»
- •15.3. Практическая работа
- •15.4. Самостоятельная работа
- •15.5. Самостоятельная работа
- •Глава XVI.Страница Dialogs
- •16.1. Стандартные диалоговые окна Windows
- •16.2. Общие свойства OpenDialog и SaveDialog:
- •16.3. Общие свойства OpenPicyureDialog и SavePictureDialog:
- •16.4. Практическая работа
- •16.5.Объект FontDialog
- •16.6. Объект ColorDialog
- •16.7. Практическая работа
- •16.8. Объекты FindDialog и ReplaceDialog
- •16.9. Проект «Примитивный редактор текста»
- •Глава XVII. Элементы с закладками
- •17.1. Однострочный блокнот TabControl.
- •17.2. Практическое задание
- •17.3. Самостоятельная работа
- •17.4. Многостраничный блокнот PageControl.
- •17.5. Практическая работа
- •Глава XVIII. Иерархические структуры
- •18.1. Объект TreeView
- •18.2. Практическая работа
- •18.3. Самостоятельная работа
- •18.4.Объект ListView
- •18.5. Практическое работа
- •Глава XIX. Работа с датами и временем
- •19.1. Объект DateTimePicker
- •19.2. Объект MonthCalendar
- •19.3. Объект Calendar.
- •19.4. Самостоятельная работа
- •19.5. Объект Timer
- •19.6. Практическая работа
- •19.7. Самостоятельная работа
- •Глава XX. Объект Animate
- •20.1. Практическая работа
- •20.2. Игра «угадай число»
- •Глава XXI. Панели инструментов
- •21.1. Объект ToolBar.
- •21.2. Объект ControlBar
- •21.3. Создание текстового редактора с использованием объекта RichEdit
- •Глава XXII. Графика в Delphi
- •22.1. Класс tCanvas
- •22.2. Класс tFont.
- •22.3. Класс tPen.
- •22.4. Класс tBrush
- •22.5. Класс tGraphic
- •22.6. Класс tPicture
- •22.7. PaintBox - окно для рисования
- •22.8. Практическая работа
- •22.9. Практическая работа
- •22.10. Самостоятельная работа
- •22.11. Объект Shape
- •22.12. Самостоятельная работа
- •22.13. Создание графического редактора
5.2. Memo-многострочный редактор
Компонент страницы Standard. предназначен для ввода и/или отображения длинного текста. Текст хранится в свойстве Lines и представляет собой пронумерованный набор строк (нумерация начинается с 0)
Повторяет свойства и методы Edit, а также имеет специфические
Свойство |
Значение |
CaretPos |
Содержит координаты мигающего текстового курсора относительно границ клиентской области компонента |
Lines |
Содержит строки введенного текста |
Lines[i:integer] |
Доступ к строке текста с номером i |
Lines.Count |
Количество строк в поле |
ScrollBars |
Определяет наличие полос прокрутки |
Методы |
Назначение |
LoadFromFile(filename:string) |
Загрузка в компонент текста из файла |
SaveToFile(filename:string) |
Сохранение текста в файле |
5.3. Практическая работа
Создадим приложение, в котором текст из строки ввода будет копироваться без изменений в метку и добавляться в многострочный редактор.
Двойным щелчком назначьте на кнопку «Ввод» событие OnClick
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
Label1.caption:=edit1.Text; //повторяем строку в метке
memo1.Lines.Add(edit1.text); //переносим в строку в редактор
edit1.Clear; //Очищаем строку ввода
edit1.SetFocus; //Передаем фокус ввода
end;
Назначьте событие OnActivate для формы, в котором опишите передачу фокуса ввода для компонента Edit, а также обработайте кнопку «Выход» и «Очистка»
5.4. Самостоятельная работа
Компьютер должен запросить имя пользователя. Если пользователь вводит знакомое имя, например, Вася, то компьютер приветствует его. В случае ввода любого другого слова, компьютер должен реагировать иначе, например, выводить запрос: "А где Вася?"
При запуске программы в окне присутствует надпись «Стучите!» и кнопка «Тук-тук», после щелчка по которой появляется надпись «Кто там?», поле для ввода имени и кнопка «Ok».
5.5. MaskEdit - специальный редактор
Компонент страницы Additional. Предназначен для ввода текста, соответствующего некоторому шаблону, задаваемому свойством EditMask. Если это свойство не задано, то действует как обычный редактор. Свойство EditText содержит текст до наложения на него маски шаблона (т.е. то, что ввел пользователь), а свойство Text – может содержать либо исходный текст, либо результат наложения на него шаблона.
Шаблон состоит из трех частей, отделенных друг от друга символом «;». Первая часть задает маску ввода, вторая – это символ «0» или «1», определяющий, записывается ли в Text результат наложения маски (1) или исходный текст (0), третья содержит символ, который в окне редактора будет стоять в полях, предназначенных для ввода символов. Маска состоит из описателей полей ввода (указывают, какой именно символ может ввести пользователь в данное поле), литералов (вставляются в текст, показываемый в окне редактора, но при вводе курсор перепрыгивает через них и не дает пользователю изменить их) и специальных символов (формируют дополнительные указания пользователю).
Описатели полей
Символ |
Поле… |
Символ |
Поле… |
L |
должно содержать букву |
c |
может содержать любой символ |
l |
может содержать букву |
0 |
должно содержать цифру |
A |
должно содержать букву или цифру |
9 |
может содержать цифру |
a |
может содержать букву или цифру |
# |
может содержать цифру , «+», «-» |
C |
Должно содержать любой символ |
|
|
Специальные символы
Символ |
Значение |
\ |
Следующий символ литерал |
: |
На это место вставляется символ- разделитель для часов, минут, секунд |
/ |
На это место вставляется символ-разделитель для даты |
; |
Разделитель частей шаблона |
! |
Подавляет все ведущие пробелы |
> |
Все следующие за ним поля преобразуют буквы к заглавным |
< |
Все следующие за ним поля преобразуют буквы к строчным |
<> |
Отменяет преобразование букв |
