Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.10.27;
Скачать: CL | DM;

Вниз

Как с помощью мыша менять местами строки в Listbox ?   Найти похожие ветки 

 
Lizard   (2003-10-15 14:33) [0]

Помогите заставить строки в listbox подчиняться командам мыши.
Я хотел бы, чтобы при нажатии левой кнопкой (на item[] в listbox) и удерживании ее переместить на другую позицию данную строку (drag & drop), но ничего не выходит.
Спасибо.


 
Игорь Шевченко ©   (2003-10-15 14:34) [1]

unit main;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;

type
TForm1 = class(TForm)
ListBox1: TListBox;
procedure ListBox1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure ListBox1DragDrop(Sender, Source: TObject; X, Y: Integer);
procedure ListBox1DragOver(Sender, Source: TObject; X, Y: Integer;
State: TDragState; var Accept: Boolean);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.ListBox1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if Button = mbLeft then
ListBox1.BeginDrag({not (Button = mbLeft)}false);
end;

procedure TForm1.ListBox1DragDrop(Sender, Source: TObject; X, Y: Integer);
begin
if Source = ListBox1 then
with ListBox1,ListBox1.Items do
Move(ItemIndex, ItemAtPos(Point(X, Y), True));
end;

procedure TForm1.ListBox1DragOver(Sender, Source: TObject; X, Y: Integer;
State: TDragState; var Accept: Boolean);
begin
Accept:=Source = ListBox1;
end;

end.



Страницы: 1 вся ветка

Текущий архив: 2003.10.27;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.028 c
1-89230
Modus
2003-10-15 10:34
2003.10.27
Начать новую страницу при печати


3-89147
IGOR_k
2003-10-07 12:41
2003.10.27
dbf create


1-89265
Марат
2003-10-14 13:52
2003.10.27
Модальность форм


1-89329
Ivolg
2003-10-16 15:50
2003.10.27
Числовые значения!!!!!!!!!!!!!!!!


6-89423
Son!K
2003-09-02 03:59
2003.10.27
Ловть пакеты