背景
我的节目是直播视频winform应用程序。我的表单上有三个PictureBox
。这些图片框会根据其父表单大小自动调整大小。我的程序中的一个线程使用安全Invoke
方法从30 fps相机更新带有三个2048x2048图像的图片框。
问题:
当表格足够小时,所有三个图片框都显示正常,尽管有问题的图片框比其他图片框慢一点。但是如果表单变大,只有一个图片框没有更新,而另外两个图片框更新得很好。仅供参考,这些照片同时被推入像素盒。这可能听起来很愚蠢但是有问题的图片框看起来有缺陷
问题:
我想了解为什么会出现这种症状 - 相同尺寸的图片框同时获得相同大小的图片,但其中只有一个未更新。这个显卡有问题吗?有什么方法可以解决这个问题吗?
答案 0 :(得分:0)
尝试使用c#开源ispy软件http://www.ispyconnect.com/
答案 1 :(得分:0)
<强>更新强>
我认为这是表单刷新的问题,我创建了一个线程来定期刷新我的表单。我认为解决了非更新问题。
private void MyForm_Load(object sender, EventArgs e)
{
Thread thread = new Thread(() =>
{
while (!m_bFormClose)
{
this.SafeInvoke(Refresh);
Thread.Sleep(500);
}
});
thread.Start();
}
我想我可以用计时器做到这一点,但我觉得线程更安全。如果您有更好的方法,请发表评论或回答。