我在调整 TPaintBox 大小并在其上绘图时遇到问题:
在我的表单(名为 FMain)上,我删除了一个 TPaintBox(名为 DisplayImage),我试图在调整表单大小时调整它的大小。
为此,我为 FMain 编写了一个 OnResize() 方法(我确认它被正确调用),在该方法中我尝试调整 DisplayImage 的大小:
procedure TFMain.FormResize(Sender: TObject);
begin
DisplayImage.Width := FMain.ClientWidth;
DisplayImage.Height := FMain.ClientHeight;
DisplayImage.Canvas.Brush.Color := clGreen;
DisplayImage.Canvas.Brush.Style := bsSolid;
DisplayImage.Canvas.Rectangle(0, 0, DisplayImage.Width, DisplayImage.Height);
end;
恕我直言,最后一个代码应该在整个图像上绘制一个完整的绿色矩形,使其有效地始终为绿色。相反,我得到一个灰色图像(就像 Delphi 的标准 bg-color 一样),并且在调整大小期间每隔一段时间,绿色图像就会闪烁。
我错过了什么,调整大小后是否需要更新一些隐藏组件?
先感谢您,
暴风雪