我正在研究颤振并尝试将鼠标滚动控件添加到画布编辑器(就像一个简单的图像编辑器)
当前代码使用 GestureDetector 进行平移和图像移动。但是在加载大尺寸图像时,UX 是相当困难的。所以试图添加鼠标滚动。我已经尝试过 Listview 和 SingleChildScrollView 但它不能使用物理或滚动方向工作。我已经看过使用 Listener 的示例。仍然无法实现它们(我只是一个中级程序员)。请指导我~!我没有编写原始代码,我正在尝试使用学习和制作自己的作品。
这是当前代码。
@override
Widget build(BuildContext context) {
//FocusScope.of(context).requestFocus(_focusNode);
var paintInfo = PaintManager.instance.currentPaintInfo;
paintInfo.canvasRect.setOuterSize(
(MediaQuery.of(context).size.width - 350) * 0.5 - 2,
MediaQuery.of(context).size.height - 50 - 2);
paintInfo.preBuild();
return GestureDetector(
onPanDown: onPanDown,
onPanUpdate: onPanUpdate,
onPanEnd: onPanEnd,
child: Container(
width: paintInfo.canvasRect.outerWidth,
height: paintInfo.canvasRect.outerHeight,
color: Color.fromRGBO(20, 20, 20, 1),
margin: EdgeInsets.all(1),
child: Stack(
children: [
Positioned(
left: paintInfo.canvasRect.offsetX,
top: paintInfo.canvasRect.offsetY,
width: paintInfo.canvasRect.displayWidth,
height: paintInfo.canvasRect.displayHeight,
child: CustomPaint(
painter: CanvasRenderer(
points: points,
isEditor: widget.isEditor,
isNoScale: false),
),
),
],
),
),
);