Задание
Разработать два
приложения, которые позволяют освоить
технологию Drag-and-Drop:
Расположить
на форме несколько компонент Shape,
придать им форму всевозможных
геометрических фигур. При перемещении
фигуры в некоторую область на форме
должны производиться вычисления ее
площади и периметра, а также проявляться
имя перемещенного компонента (Name),
свойство Shape, имя класса
объекта, имя его родительского класса.
Расположить
на форме два компонента Memo
(Memo1 и Memo2)
и две кнопки (Button1,Button2).
Организовать передачу информации между
Memo1 Memo2
тремя разными способами: через буфер
обмена, копированием информации между
Memo-компонентами, с
использованием Drog-and_Drop.
Проверить будет ли работать передача
информации, если компоненты расположены
на двух разных формах одного и того же
приложения.
Для
знакомства с технологией Drag-and-Doc:
Проделайте
упражнения рассмотренные ранее в этой
главе над формой с панелью Panel1 и двумя
картинками Image1 Image2.
Создайте
новое приложение с двумя формами. На
первую форму поместите кнопки Button1
и Button2. Пусть по щелчку
на Button2 открывается вторая
форма:
void
__fastcall TForm1::Button2Click(TObject *Sender)
{
Form2->Show();
}
Кнопкe Button1 сделайте
перемещаемым клиентом, а вторую форму
контейнером. Протестируйте приложение
и последите за поведением кнопки. На
рисунке представлено подобное приложени
в момент, когда кнопка стала плавающим
окном.
В обработчик
события кнопки был при этом помещен
следующий код:
void
__fastcall TForm1::Button1Enter(TObject *Sender)
{
Form1->Canvas->Brush->Color=RGB(random(255),random(255),random(255));
Form1->Canvas->Ellipse(30,30,150,120);
}