C#-按下按钮继续程序流

本文关键字:程序 继续 按钮 C#- | 更新日期: 2023-09-27 18:26:15

我在c#winforms中有一个小对话框游戏,需要暂停程序流,直到用户按下按钮
目前,这是生成标签的代码:

Label displayText;
public void createDisplayText ( string message, bool continueOnButton = true )
{
    displayText = new Label()
        {
            Location = new Point(300, 30),
            Font = new Font("Consolas", 11F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))),
            ForeColor = Color.White,
            BackColor = Color.Black,
            Size = new Size(img.Width - 70, img.Height - 50),
            Text = message
        };
    if ( continueOnButton )
        textKeyPress = true;
    Controls.Add(displayText);
}
public void hideDisplayText ()
{
    if ( displayText != null )
        displayText.Dispose();
}

在Form_KeyDown方法中,我输入了以下内容:

if (textKeyPress)
    {
        if (e.KeyCode == Keys.Space)
           hideDisplayBox();
    }

问题:
如何在程序代码中输入此信息,以便程序等待文本被隐藏并,然后继续
呼叫(如果可能的话)不应该比更复杂

createDisplayText ( "Some sort of message" );

我怎样才能做到这一点?

C#-按下按钮继续程序流

对UI和程序流使用不同的线程。当需要你想要的东西时,让程序流线程进入睡眠状态,然后在消息隐藏后使用UI调用唤醒它,或者只给它一个计时器。