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

Вниз

Drag Drop   Найти похожие ветки 

 
IgoX   (2002-06-19 21:51) [0]

Привет каждому.
Есть ListView если я беру и тяну одну запись то она тянеться со всеми столбцами. Как сделать чтобы тянулся листик- как будто я тяну больше одной записи.
Спасибо


 
MBo   (2002-06-20 06:53) [1]

Некоторые идеи
http://delphi.mastak.ru/articles/dragndrop/index.html


 
IgoX   (2002-06-20 20:16) [2]

Спасибо
прочитал но то что мне нужно не нашел.
Как можно навесить свою картинку при DragDrop?


 
MBo   (2002-06-20 20:17) [3]

DragImageList


 
MBo   (2002-06-21 08:33) [4]

LV1 - ListView c 2 колонками

type
TLVDragObject = class(TDragControlObject)
private
FDragImages: TDragImageList;
protected
function GetDragImages: TDragImageList; override;
function GetDragCursor(Accepted: Boolean; X, Y: Integer): TCursor; override;
public
Str: String;
destructor Destroy; override;
end;

TForm1 = class(TForm)
LV1: TListView;
Memo1: TMemo;
procedure Memo1DragOver(Sender, Source: TObject; X, Y: Integer;
State: TDragState; var Accept: Boolean);
procedure FormCreate(Sender: TObject);
procedure LV1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure LV1StartDrag(Sender: TObject; var DragObject: TDragObject);
procedure Memo1DragDrop(Sender, Source: TObject; X, Y: Integer);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
ADragObject: TLVDragObject;

implementation

{$R *.DFM}

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

destructor TLVDragObject.Destroy;
begin
FDragImages.Free;
inherited;
end;

function TLVDragObject.GetDragCursor(Accepted: Boolean; X,
Y: Integer): TCursor;
begin
if Accepted then Result := crNone
else Result := crNo
end;

function TLVDragObject.GetDragImages: TDragImageList;
var
B: TBitmap;
s:string;
i: Integer;
begin
if not Assigned(FDragImages) then
FDragImages := TDragImageList.Create(nil);
Result := FDragImages;
Result.Clear;
s:=ADragObject.Str;
B := TBitmap.Create;
try
B.Height :=B.Canvas.TextHeight(s);
B.Width := B.Canvas.TextWidth(s);
B.Canvas.Brush.Color := clLime;
B.Canvas.FillRect(B.Canvas.ClipRect);
B.Canvas.TextOut(0, 0,s);
Result.Width := B.Width;
Result.Height := B.Height;
i:= Result.AddMasked(B, clLime);
Result.SetDragImage(i, 0, 0);
finally
B.Free;
end
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
Memo1.ControlStyle := Memo1.ControlStyle + [csDisplayDragImage];
end;

procedure TForm1.LV1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
LV1.BeginDrag(False);
//если устроит dmAutomatic, то этот обработчик не нужен
end;

procedure TForm1.LV1StartDrag(Sender: TObject;
var DragObject: TDragObject);
begin
ADragObject := TLVDragObject.Create(LV1);
ADragObject.Str := LV1.Selected.Caption+" "+LV1.Selected.SubItems[0];
DragObject := ADragObject;
end;

procedure TForm1.Memo1DragDrop(Sender, Source: TObject; X, Y: Integer);
begin
Memo1.Lines.Text:=ADragObject.Str;
end;


 
IgoX   (2002-06-21 21:27) [5]

Спасибо



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

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

Наверх




Память: 0.45 MB
Время: 0.004 c
1-9911
Александр
2002-06-22 17:40
2002.07.04
ShellTreeView1 и FileListBox


1-9847
Rykky
2002-06-20 18:07
2002.07.04
Как на Image’е программно начертить прямоугольник размером 10х12?


1-9814
Дельфятник
2002-06-21 16:41
2002.07.04
Почему TFrame не дружит с TBitBtn?


3-9736
Alex-kosmonavt
2002-06-11 10:06
2002.07.04
Как записать картинки в Blob поля базы данных?


3-9741
McSimm
2002-06-12 12:54
2002.07.04
Кто поможет разгадать тайну кнопки





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский