
- •341000, Мариуполь, пер. Республики,7 Утверждаю
- •С.В. Щербаков
- •Общие требования к выполнению и оформлению лабораторных работ
- •Лабораторная работа №1
- •Лабораторная работа № 2
- •2.1 Общие сведения
- •Лабораторная работа № 3
- •3.1 Общие сведения
- •Лабораторная работа № 4 тема: специализированные списки drivelistbox, filelistbox, valuelisteditor. Расширенные возможности
- •4.1 Общие сведения
- •Лабораторная работа № 5 тема: разработка элементов субд
- •Общие сведения
- •Основные команды языка sql
- •Задание
- •Требования к оформлению отчета
- •Контрольные вопросы
- •Лабораторная работа № 6
- •6.1 Общие сведения
- •6.3 Требования к оформлению отчета
- •Лабораторная работа № 7
- •7 Общие сведения
- •Создание дистрибутивов с помощью InstallShield Express
- •Лабораторная работа № 8
- •8.1 Общие сведения
- •Понятие компонента
- •Программирование компонента
- •Добавление родительских и новых свойств
- •Тестирование компонента
- •Инсталляция компонента
- •Задание
- •Перечень ссылок
Лабораторная работа № 4 тема: специализированные списки drivelistbox, filelistbox, valuelisteditor. Расширенные возможности
цель: ОРГАНИЗАЦИЯ РАБОТЫ С ФАЙЛОВОЙ СИСТЕМОЙ КОМПЬЮТЕРА. ИСПОЛЬЗОВАНИЕ СПЕЦИАЛИЗИРОВАННЫХ КОМПОНЕНТОВ ДЛЯ ДИНАМИЧЕСКОГО ВЫБОРА, ВВОДА И РЕДАКТИРОВАНИЯ ЗНАЧЕНИЙ
4.1 Общие сведения
4.1.1 Справка по используемым компонентам
TEdit, TmaskEdit – ввод и вывод однострочных символьных сообщений.
TMemo – отображение и редактирование многострочных текстовых документов.
Memo1->Lines->Strings[1] – пример обращения к строке типа AnsiString окна Memo.
ListBox – отображение строк в режиме выбора пользователя.
ListBox1-> Items[0] – указатель на первую строку в списке.
ListBox1-> Items->Strings[0] – первая строка в списке.
Пример работы со списком в формате имя = значение
for (int j=0; j<=ListBox1->Count; j++)
if (ListBox1->Items[j]->IndexOfName(“имя”)>-1)
{
…
}
IndexOfName- возвращает индекс строки, если ее имя совпадает с аргументом.
DirListBox, FileListBox – отображение и переключение текущих элементов логического диска, каталогов и файлов.
Пример обработки события OnChange для синхронизации работы компонентов
void_fastcall TForm1::DriveComboBox1Change (TObject *Sender)
{
DirectoryListbox1-> Drive=FileListBox->Drive=DriveComboBox->Drive;
FileListBox1->Directory=DirectoryListBox1->Directory;
}
TValueListEditor – редактируемый список значений. Возможность динамического обновления величин, выбираемых пользователем в списке. KeyName, Values – поля списка.
ValueList->ItemProps[i]->EditStyle=esSimple – простое редактирование элемента списка;
ValueList->ItemProps[i]->EditStyle=esPickList – выбор элемента из динамического списка;
ValueList->ItemProps[i]->PickList->Add (“текст”) – выбор элемента из статического списка;
void __fastcall TForm1::FormCreate(TObject *Sender)
{
ValueListEditor1->Strings->Add("Поле1=Значение1");
ValueListEditor1->Strings->Add("Поле2=Значение2");
ValueListEditor1->Strings->Add("Поле3=Значение3");
ValueListEditor1->Strings->Add("Поле4=Значение4");
ValueListEditor1->Strings->Add("Поле5=Значение5");
}
void __fastcall TForm1::FormCreate(TObject *Sender)
{
// Fill out the Value List Editor with a few strings
ValueListEditor1->Strings->Add("Поле1=Значение1");
ValueListEditor1->Strings->Add("Поле2=Значение2");
ValueListEditor1->Strings->Add("Поле3=Значение3");
TStringList *ListOfStates = new TStringList;
ListOfStates->Add("Значение1");
ListOfStates->Add("Значение2");
ListOfStates->Add("Значение3");
ValueListEditor1->ItemProps[1]->PickList = ListOfStates;
}
ValueList->ItemProps[i]->EditStyle=esEllipsis – выбор элемента кнопкой с многоточием:
Обработка щелчка на кнопке с многоточием:
void __fastcall TForm1::ValueListEditor1EditButtonClick(TObject *Sender)
{
String mas[]={“элемент1 ”, “элемент2”,… “элемент n”};
for (int i=0; i<n; i++)
ValueListEditor1->Values[“имя поля”]->Add(mas[random(n)]);
Memo1->Lines=Values;
}
void __fastcall TForm1::ValueListEditor1EditButtonClick(TObject *Sender)
{
if( OpenDialog1->Execute() )
ValueListEditor1->Values["Имя поля"] = OpenDialog1->FileName;
}
4.2 Задание
Создать приложение для формирования файла анкетных данных пользователя. Характер анкетных данных и наименования полей ввода выбрать самостоятельно. Сохранение данных в виде текстового файла должно быть выполнено в режиме диалога с использованием компонентов DriveListBox, FileListBox. Заполнение полей ввода организовать с использованием MaskEdit, ListBox, ValueListEditor и др. В приложении использовать меню, созданное на базе TActionManager.
4.3 Требования к оформлению отчета
Отчет должен содержать: титульный лит; тему и цель работы; собственно задание; постановку задачи; текст программы и результаты работы.