1
void MyClass::onButtonClicked(){
QPushButton *button = static_cast<QPushButton*>(sender());
button->setDisabled(true);
performSomeHeavyFunctionFor5or10seconds();
}
我希望我的按鈕在該功能之前進行了視覺更新(現在它已更新)。我應該在這裏使用單獨的線程?第二個問題是我的程序在執行函數時凍結。Qt。在執行重功能之前更新元素的外觀
感謝#2。它有一個有趣的功能)該按鈕被禁用(灰色文本),但它仍然推(邊界)!我會考慮一下,但在我看來,單獨的線程就是解決方案。 – Eddie 2012-02-02 11:54:15
如果它仍然被推動,請在調用processEvents()之前嘗試按鈕 - >更新()或重繪或類似的東西() – 2012-02-02 13:02:18
由於它沒有獲取名爲「鼠標按鈕釋放」的用戶輸入事件,因此它仍然被推入;)。在這種情況下,setDisabled將在按鈕 – 2012-02-02 13:44:58