第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何在運(yùn)行時(shí)在代碼塊結(jié)束之前更改按鈕的背景顏色

如何在運(yùn)行時(shí)在代碼塊結(jié)束之前更改按鈕的背景顏色

C#
縹緲止盈 2022-10-23 16:26:37
在窗口之間切換時(shí)必須使用Window Handle才能訪(fǎng)問(wèn)窗口。var selecttxt1 = Ad_Search_Direct_Link_Text.GetAttribute("value");        string getimpression = selecttxt1.Replace("C.ashx", "I.ashx");        driver.OpenInNewTab(getimpression);        driver.ClickElement(Click_Impression);        var aa = driver.Url;         Uri uri = new Uri(aa);`enter code here`         string newTabHandle = driver.WindowHandles.Last();        var newTab = driver.SwitchTo().Window(newTabHandle);        string finallandedurltext = newTab.GetComponents(UriComponents.Scheme | UriComponents.Host, UriFormat.UriEscaped);        driver.Close();希望這有幫助。
查看完整描述

3 回答

?
慕尼黑8549860

TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超11個(gè)贊

這不起作用的原因是因?yàn)?Thread.Sleep() 正在阻止線(xiàn)程完成。


僅當(dāng)應(yīng)用程序不執(zhí)行任何操作時(shí),即在您的方法完成后,才會(huì)重繪窗口。如果您刪除更改它的行,DarkGreen您將看到它在五秒鐘后改變顏色。


您應(yīng)該使用計(jì)時(shí)器來(lái)解決您的問(wèn)題。


如果您愿意,您可以強(qiáng)制它提前刷新界面,而無(wú)需通過(guò)調(diào)用Application.DoEvents();將反映您所做的更改(例如顏色更改)離開(kāi)該方法。


    button1.BackColor = Color.Lime;

    Application.DoEvents()

    Thread.Sleep(5000);

    button1.BackColor = Color.DarkGreen;

請(qǐng)注意,在具有用戶(hù)界面的程序中放置線(xiàn)程睡眠是一個(gè)壞主意,但出于說(shuō)明目的,它將向您展示如何使其改變顏色。


查看完整回答
反對(duì) 回復(fù) 2022-10-23
?
翻過(guò)高山走不出你

TA貢獻(xiàn)1875條經(jīng)驗(yàn) 獲得超3個(gè)贊

您的問(wèn)題是因?yàn)?UI 線(xiàn)程被阻止。您需要在單獨(dú)的線(xiàn)程中運(yùn)行此邏輯。試試這個(gè)代碼:


private async void button1_Click(object sender, EventArgs e)

{

    button1.BackColor = Color.LimeGreen;

    await Task.Run(() =>

    {

        System.Threading.Thread.Sleep(5000);

        button1.BackColor = Color.DarkGreen;

    });

}

這會(huì)將您的按鈕變?yōu)長(zhǎng)imeGreen,然后等待 5 秒鐘再將其變?yōu)镈arkGreen。這是有效的,因?yàn)槲覀冊(cè)谝粋€(gè)新線(xiàn)程中旋轉(zhuǎn)它,因此不會(huì)鎖定 UI。


查看完整回答
反對(duì) 回復(fù) 2022-10-23
?
郎朗坤

TA貢獻(xiàn)1921條經(jīng)驗(yàn) 獲得超9個(gè)贊

我不推薦使用 Thread.Sleep() 因?yàn)樗鼤?huì)凍結(jié)你的界面。您還需要刷新按鈕以顯示更改。您可以使用 async 和 wait 方法來(lái)延遲按鈕顏色更改 在 button1_click 函數(shù)的 private 關(guān)鍵字之后添加 async 并創(chuàng)建 async Task 函數(shù)并使用 await awaiting() 刪除 Thread.Sleep() 函數(shù);


public partial class Form1 : Form

{

    public Form1()

{

    InitializeComponent();

}


private async void button1_Click(object sender, EventArgs e)

{

    button1.BackColor = Color.Lime;

    button1.Refresh();

    await awaiting();


    button1.BackColor = Color.DarkGreen;

}

private async Task awaiting() {

        await Task.Delay(5000);

    }

}


查看完整回答
反對(duì) 回復(fù) 2022-10-23
  • 3 回答
  • 0 關(guān)注
  • 140 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)