Вниз
Скачать: CL | DM;

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

← →
Oleg__   (2002-12-06 11:16) [0]

Как в компоненте TListBox сделать так, чтобы можно было "взять" мышкой какую-либо строку и перенести на другую позицию (drag&drop)?


← →
Skier ©   (2002-12-06 11:19) [1]

>Oleg__
см. DragMode, OnDragOver, OnDragDrop


← →
MBo ©   (2002-12-06 11:22) [2]

если не получится, см. Статьи


← →
Oleg__   (2002-12-06 11:27) [3]

Спасибо, мужики, пороюсь обязательно. Вот время бы найти :)


← →
Oleg__   (2002-12-06 11:50) [4]

Все, разобрался :)))


int BegDrag, // начальная позиция
p; // позиция в ходе перемещения

//-------------------------------------------------------
void __fastcall TForm1::ListBox1DragOver(TObject *Sender, TObject *Source,
int X, int Y, TDragState State, bool &Accept)
{
Accept = Source->ClassNameIs("TListBox");
TListBox * lbx = dynamic_cast<TListBox*>(Sender);
p = lbx->ItemAtPos(Point(X,Y), true);
lbx->ItemIndex = p;
}
//-------------------------------------------------------

void __fastcall TForm1::ListBox1DragDrop(TObject *Sender, TObject *Source,
int X, int Y)
{
if (Sender->ClassNameIs("TListBox"))
{
TListBox * lbx = dynamic_cast<TListBox*>(Sender);
String s = lbx->Items->Strings[BegDrag];

lbx->Items->Delete(BegDrag);
lbx->Items->Insert(p, s);
}
}
//-------------------------------------------------------

void __fastcall TForm1::ListBox1StartDrag(TObject *Sender,
TDragObject *&DragObject)
{
TListBox * lbx = dynamic_cast<TListBox*>(Sender);
BegDrag = lbx->ItemIndex;
}
//-------------------------------------------------------



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.01 c
14-51918
iNew
2002-11-25 04:30
2002.12.16
Замыльте пожалуйста кто-нибудь или дайте ссылку на файлик


3-51579
Jackal22
2002-11-27 11:21
2002.12.16
Проблемы с изменением таблицы


6-51881
Incognito
2002-10-20 00:34
2002.12.16
Имя соединения (провайдера)


14-51926
Anatoly Podgoretsky
2002-11-23 14:34
2002.12.16
Именинники 23 ноября


1-51677
AlexT1000
2002-12-05 16:55
2002.12.16
Неработают гарячие клавиши TActions в DLL. Как побороть?




   Наверх