Буксировка экранных объектов
Создайте проект, содержащий 2 списка ListBox, компонент Edit и две кнопки. Реализовать следующие функции при переносе выделенных слов:
• ListBox1 → форма: слова в ListBox1 дублируются;
• ListBox2 → форма: слова в ListBox2 удаляются;
• ListBox1 ↔ ListBox2: простой перенос слов;
• ListBox1 → Edit1, ListBox2 → Edit1: обмен слов;
• Edit1 → ListBox1, Edit1 → ListBox2: левой клавишей мыши – перенос, а правой – копирование слов;
• ListBox1 (ListBox2) → Button1: чтение всего списка из файла;
• ListBox1 (ListBox2) → Button2: сохранение всего списка в файле.
При множественном выборе переносить все выбранные строки.
Обработку начала буксировки из Edit1 выполнить вручную, т.е. установить Edit1.DragMode=dmManual и в обработчик Edit1.OnMouseDown записать нечто вроде (это не всё):
if (Button=mbLeft) and (Edit1.Text<>'') then Edit1.BeginDrag(False);
|