Копирование выделеных строк из Listbox1 в Listbox2Delphi , Компоненты и Классы , СпискиКопирование выделеных строк из Listbox1 в Listbox2
Автор: Black_phoenix { **** UBPFD *********** by delphibase.endimus.com **** >> копирование выделеных строк из listbox1 в listbox2 Зависимости: Windows, SysUtils, Classes, Controls, StdCtrls Автор: Black_phoenix, Black_phoenix@rambler.ru, Almaty Copyright: Дата: 30 апреля 2003 г. ***************************************************** } public function GetFirstSelection(List: TCustomListBox): Integer; procedure MoveSelected(List: TCustomListBox; Items: TStrings); procedure SetItem(List: TListBox; Index: Integer); implementation function tform1.GetFirstSelection(List: TCustomListBox): Integer; begin for Result := 0 to List.Items.Count - 1 do if List.Selected[Result] then Exit; Result := LB_ERR; end; procedure tform1.MoveSelected(List: TCustomListBox; Items: TStrings); var I: Integer; begin for I := List.Items.Count - 1 downto 0 do if List.Selected[I] then begin Items.AddObject(List.Items[I], List.Items.Objects[I]); // List.Items.Delete(I); // можно оставить если вы хотите чтобы в 1 списке строки удалились end; end; procedure tform1.SetItem(List: TListBox; Index: Integer); var MaxIndex: Integer; begin with List do begin SetFocus; MaxIndex := List.Items.Count - 1; if Index = LB_ERR then Index := 0 else if Index > MaxIndex then Index := MaxIndex; Selected[Index] := True; end; end; // Пример использования: procedure TForm1.Button1Click(Sender: TObject); var Index: Integer; begin Index := GetFirstSelection(listbox1); MoveSelected(listbox1, listbox2.Items); SetItem(listbox1, Index); end; Перевод на русский язык: Это фрагмент кода Delphi, демонстрирующий, как скопировать выбранные элементы из одного
Код сопровождается примером использования в обработчике события Вот некоторые предложения по улучшению кода:
Вот обновленная версия кода с этими предложениями:
Обновленный код должен быть более эффективным и легче поддерживаемым. Данная статья описывает программу на языке Delphi, которая позволяет копировать выделенные строки из Listbox1 в Listbox2. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |