【发布时间】:2012-12-02 02:32:42
【问题描述】:
背景:
我的程序是实时视频 winform 应用程序。我的表格上有三个PictureBox。这些图片框会根据其父窗体大小自动调整大小。我的程序中的一个线程使用安全的Invoke 方法使用来自 30 fps 相机的三个 2048x2048 图像更新这些图片框。
问题:
当表单足够小时,所有三个图片框都可以正常显示,尽管有问题的图片框比其他图片框慢一点。但是如果表格变大,只有一个图片框没有更新,而其他两个更新得很好。仅供参考,这些照片同时被推入像素盒。这可能听起来很傻,但有问题的图片框看起来有缺陷
问题:
我想了解为什么会出现这种症状 - 相同大小的图片框同时获得相同大小的图像,但只有一个没有更新。这是显卡问题吗?有没有办法解决这个问题?
【问题讨论】:
-
我会尝试交换框名称 - 问题是遵循名称(/变量)还是遵循创建顺序?可能会给你一个线索去哪里看。
-
你能粘贴代码吗?我猜你正在使用表单大小调整事件?
-
@CarlosLande 不,我没有使用表单调整大小。我只是使用 TableLayoutPanel 和 Anchor 来调整图片框的大小作为表单调整大小。
-
这听起来很愚蠢,但您可以尝试使用其他图片资源来确保问题不在图片本身吗?
-
尝试使用简单的 control.Refresh() 如果这不起作用,我会尝试更新其他线程中的控件