3
我有一個QPushButton我的主窗口:如何使QPushButton的尺寸與背景圖像相同?
practiceButton_ = new QPushButton(this);
practiceButton_->setText(_("Practice"));
practiceButton_->setObjectName("practiceButton");
然後我一些樣式與之相關聯:
qApp->setStyleSheet("QPushButton#practiceButton { background-image: url('myfile.png'); padding:0; margin:0; border:none; }");
背景圖像顯示出來,它看起來像然而在成功應用該樣式,按鈕比背景圖像小。我怎樣才能調整大小以適應其背景圖像?
如果不能自動完成,是否可以訪問某處應用到按鈕的樣式,並根據它調整按鈕的大小?我只想避免硬編碼值,如果我能避免它。
當然,這是不是很有效 - 加載一個PNG只是爲了獲得它的大小 - 但其餘的是爲讀者留下的練習。 – Scott
如果用戶將圖像名稱更改爲CSS中的其他內容,該怎麼辦? –
嗯,我一直在嘗試一點點成功。我認爲問題在於背景圖像和圖標之間存在差異。您的解決方案可能是最好的,但它確實需要用戶輸入重複信息。另一種解決方案可能是重新考慮在這種情況下使用樣式表,並使用QConfig類型的解決方案(您可以同時使用:style爲樣式,config爲圖標集)。其他解決方案可能是嘗試獲取按鈕的背景圖像並獲得其大小(一個破解將解析qApp-> styleSheet()並執行上面顯示的操作)。 – Scott