簡體   English   中英

一個代碼怎么可能只運行 1 次?

[英]How is it possible to run a code only 1 time?

我希望此代碼中的 MessageBox 僅運行 1 次。 我希望它只顯示一次。 我該怎么做?



    if(textBox1.Text != "")
    
    {
     listBox1.Items.Add(textBox1.Text);
        
        textBox1.Clear();
    }
    
    else
    {
      DialogResult click = MessageBox.Show("Info Screen", "TextBox is Empty. Do you want to add a 
  blank space?", MessageBoxButtons.OKCancel);
    
    if(click==DialogResult.OK)
    
    {
    
    listBox1.Items.Add(textBox1.Text);
    
    }
    
    }

制作一個 boolean 並使用 if 語句並在該 if 語句中使 boolean 為 false 並顯示您的消息框

bool boolMessage = true;

if(boolMessage == true)
{
MessageBox.Show("One time");
boolMessage = false;
}

創建一個類型為 boolean 的全局變量,如果已顯示消息,則保存標記。 然后在你的代碼中添加

全局:bool isFirstTime = true;

在你的代碼中:

if (isFirstTime) {
      DialogResult click = MessageBox.Show("Info Screen", "TextBox is Empty. Do you want to add a 
  blank space?", MessageBoxButtons.OKCancel);

      isFirstTime = false;
}

我認為在您的案例中添加 boolean 標志只是代碼污染。 你可以用另一種方式解決這個問題。 => 您希望什么時候顯示 MessageBox? 當文本框內容等於""並且您希望它只運行一次時。 為什么不在顯示消息框之前檢查列表框中是否已經有一個"" 像這樣:

else
{
   if(listbox1.Items.IndexOf("") > -1)
      return;

   // continue with displaying the messagebox
}

嘗試使用 boolean 並使用 if 來確保代碼僅在 Boolean 為真時運行,然后在 if 中將 Boolean 設置為假。

您也可以嘗試使用 function 並調用一次。

我不確定我是否回答了你的問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM