Kullanmaya çalıştığınız görüntü nerede bulunuyor?
Uygulamanızın bir resource mu?
Kaynaklarınızın bir bölümünü kullanmak isterseniz, projenizde bir kaynak dosyanız (*.qrc
) olmalıdır. Eğer QMainWindow
yapıcısı Bu kodu yazabilirim Sonra
<RCC>
<qresource prefix="/images">
<file alias="sunset.jpg">sunset.jpg</file>
</qresource>
</RCC>
: Bu dosya böyle bir şey içermelidir Eğer Qt resource system kullanmak istemiyorsanız
setStyleSheet("background-image: url(:/images/sunset.jpg);");
, sadece can Eğer göreli bir yol kullanıyorsanız
setStyleSheet("background-image: url(res/images/sunset.jpg);");
Ancak dikkatli olun: diskinizdeki resminizin yolunu koymak Qt hangi might, geçerli konumundan başlayacak Özellikle Qt Creator ile geliştiriyorsanız, değiştirin. Eğer hata ayıklama modunda uygulamanızı çalıştırdığınızda Qt Creator ile
, mevcut yol debug/
içindedir. Uygulamanızı sürüm modunda çalıştırdığınızda, geçerli yol release/
(ayarları değiştirmedikçe) şeklindedir.
bilgi için teşekkürler :). Ancak, ayrı bir QSS dosyası istememin nedeni, kullanıcıların kendi QSS dosyalarını yükleyerek uygulamayı özelleştirebilmelerini istiyorum. Böylece, komut isteminde çalıştırıldığında, QSS dosyasındaki tüm stilleri kodlara dokunmadan kolayca uygulayabilirsiniz ... – Owen
Bu, görüntünün diskte bir yerde olduğu anlamına gelir. Ama yolu ile başlayan: '' Qt'ye görüntüyü bir kaynaktır. Stil sayfanızda mutlak görüntü yolunu koymayı denediniz mi? –
Aşağıdaki gibi bir şey içeren uygulama klasöründe bulunan 'stylesheet.qss' adlı bir dosya oluşturmaya çalıştım: QMainWindow {\t background-image: url (sunset.jpg); } '. Uygulamayı "-stylesheet = stylesheet.qss" argümanı ile çalıştırıyorum ve uygulamamın arka planı gün batımı resmi. Bunun senin için neden çalışmadığını anlamıyorum. –