0

我正在尝试在每个循环中打开一个 Windows 窗体。每当它调用该方法来显示没有图片框显示的表单时,它是一个完全空白的表单。对此有任何修复吗?我需要它在这个循环中调用 formshow 方法,但是我已经在其他地方尝试过并且表单显示完美,但是我不能在我放置它的地方完全使用它来调试有问题的地方。感谢您的帮助!我正在使用 C#

public override bool OnNewFrame()
{
    for(uint i=0;;i++)
    {
        if (straightcalled == false)
        {
            if (checkform("Form4") == false)
            {
                straightcalled = true;
                showform();
            }
        }       
    }

    return (++newframes < 50000);
}

Form4 newform = new Form4();

private void showform()
{
    newform.Show();
    newform.WindowState = FormWindowState.Normal;
    newform.ShowInTaskbar = false;
    newform.TopMost = true;   
}
4

1 回答 1

0

我相信您的主要问题是 OnNewFrame 方法中没有退出条件的循环。这个循环只是消耗 CPU,似乎没有完成任何有价值的事情。

由于我不确定您的目标是什么,因此我将尝试解决您的问题。我没有使用英特尔的感知计算 SDK,所以这是一个猜测,但希望能帮助您指出正确的方向,即使它不能解决问题。如果您需要重用对话框或需要它是无模式的,那么这不会解决问题。同样,不确定您的目标,但希望这会有所帮助。

public override bool OnNewFrame()
{
    if (straightcalled == false)
    {
        if (checkform("Form4") == false)
        {
            straightcalled = true;
            showform();
        }
    }       

    return (++newframes < 50000);
}

private void showform()
{
    using (Form4 newForm = new Form4())
    {
        newform.ShowInTaskbar = false;
        newform.ShowDialog();
    }   
}
于 2013-07-16T03:55:17.840 回答