Для того, щоб створити замість форми діалогове вікно необхідно для властивості BorderStyle вибрати значення BsDialog. Після цього інтерфейс форми стає подібним до інтерфейсу діалогового вікна. Звичайно така форма має товсту межу діалогового вікна, яка не дозволяє змінити його розмір. Після створення форми діалогового вікна його можна вивести на екран в вигляді немодального вікна за допомогою двох простих методів відображення (show, showModal). Діалогове вікно прикладу RefList.
Procedure TForm1.AddItems1Click(Sender:TObject);
Var NewItem:TListItem;
Begin FormItem.Caption:=’New Item’; FormItem.Clear;
If FormItem.ShowModal=mrOk then
Begin NewItem:=ListView1.Items.Add;
NewItem.Caption:=FormItem.EditReference.Text;
NewItem.ImageIndex:=FormItem.ComboType.ItemIndex;
NewItem.SubItems.Add(FormItem.EditAuthor.Text);
NewItem.SubItems.Add(FormItem.EditCountry.Text);end;end;
Крім встановлення відповідного заголовка для форми, ця процедура ініціалізує діалогове вікно, оскільки вводиться нове значення. При натиску на кнопку ОК програма добавляє новий елемент до списку і встановлює всі його значення. Для очищення вікон редагування діалога програма пикликає метод Clear, який стирає текст кожного елемента вікна редагування:
Procedure TFormItem.Clear;
Var i:integer;
Begin for i:=0 to ControlCount-1 do
If control[i] is TEdit then TEdit(controls[i]).Text:=’’; end;