我一直在寻找一个让鼠标滚轮与滚动条组件一起工作的选项,到目前为止我得到了这个
void __fastcall TForm1::ScrollBox1MouseWheelDown(TObject *Sender, TShiftState Shift,
TPoint &MousePos, bool &Handled)
{
Form1->ScrollBox1->VertScrollBar->Position++;
}
void __fastcall TForm1::ScrollBox1MouseWheelUp(TObject *Sender, TShiftState Shift,
TPoint &MousePos, bool &Handled)
{
Form1->ScrollBox1->VertScrollBar->Position--;
}
到目前为止它的确有效,但滚动速度非常慢。有没有办法让它滚动得更快,或者更好的方法是在c ++ builder中处理滚动?
答案 0 :(得分:1)
TScrollBox
XE2本身支持通过鼠标滚轮进行垂直滚动。您无需执行任何额外操作即可启用该行为。我刚试过它,它工作正常。
答案 1 :(得分:0)
我使用的是C ++ Builder XE2,它不支持本地滚动TScrollBox,所以我使用你的方法,但只是OnMouseWheel事件,如果WheelDelta低于0则向下滚动,如果高于0则向上滚动0
关于滚动速度,您不能只为位置变量添加/减去更高的常量吗?喜欢在:
Form1->ScrollBox1->VertScrollBar->Position += 3;