【发布时间】:2023-01-17 08:05:15
【问题描述】:
更改光标的最常见用途是通过MouseRegion 和setState。例子:
MouseRegion(cursor: _myCursor);
setState(() {
if(...) {
_myCursor = SystemMouseCursors.copy;
} else {
_myCursor = SystemMouseCursors.move;
}
});
有没有办法在不重建Widget的情况下进行此更改?例如,CustomPaint 接受一个 Listening,当它被触发时,只会通知新的重绘而不是重建。
也许如果可以将鼠标光标设置在RenderBox 内。我可以使用 Listening 和 markNeedsPaint 方法创建一个复制 CustomPaint 的行为。
有没有人已经在RenderBox 中配置了光标?
【问题讨论】:
-
RenderMouseRegion的cursor属性有一个公共设置器 - 试试吧 -
谢谢,@pskink。秘诀是实施
MouseTrackerAnnotation。