2

无论如何要强制将TSpeedButton重新绘制成平面?

使用触摸屏显示器时,鼠标不会移出按钮,因此凸起的边框会留在屏幕上,即使您单击其他按钮也是如此。

4

2 回答 2

3

看起来这不是我可以在没有触摸屏的情况下重现的东西,但是如果我理解正确,当有人触摸按钮时它会变热(如果 Down 为真,则上升或突出显示),但是当他们触摸时另一个按钮它不会触发鼠标退出,因此它会保持热状态。那是对的吗?

有几种方法可以解决这个问题。可能最简单的方法是在每个单击事件上调用一个将鼠标从按钮上移开的方法。

Mouse.CursorPos := Point(0,0);

如果这还不够,那么您可以禁用被点击的按钮,将鼠标移开,刷新它,然后重新启用它。 禁用的按钮不能是热的。 您可能需要一个计时器,在它被禁用一秒钟并且鼠标移开按钮后启用该按钮,但我敢打赌,只需移动鼠标就足够了。

此外,当鼠标光标留在我刚刚触摸的按钮上时,我一直认为这是奶酪,所以这会让你的触摸系统看起来更优雅。

于 2009-06-05T03:27:05.870 回答
2

您是否尝试将 Flat 属性设置为 True?

于 2009-06-04T21:23:04.373 回答