Hola.
Una opción es,
.h
Código PHP:
...
class TForm1 : public TForm
{
__published: // IDE-managed Components
TListBox *ListBox1;
void __fastcall FormCreate(TObject *Sender);
void __fastcall FormDestroy(TObject *Sender);
private: // User declarations
TWndMethod _oldwndProc;
void __fastcall newWndProc(TMessage& Message);
void __fastcall vertScroll(TObject *Sender);
public: // User declarations
__fastcall TForm1(TComponent* Owner);
};
...
.cpp:
Código PHP:
...
void __fastcall TForm1::FormCreate(TObject *Sender)
{
_oldwndProc = ListBox1->WindowProc;
ListBox1->WindowProc = newWndProc;
ListBox1->ItemIndex = 0;
}
void __fastcall TForm1::newWndProc(TMessage& Message)
{
if(Message.Msg == WM_VSCROLL)
vertScroll(ListBox1);
_oldwndProc(Message);
}
void __fastcall TForm1::vertScroll(TObject *Sender)
{
ListBox1->Selected[GetScrollPos(ListBox1->Handle, SB_VERT)] = true;
}
...
void __fastcall TForm1::FormDestroy(TObject *Sender)
{
ListBox1->WindowProc = _oldwndProc;
}
Salida:
Saludos