Всё, разобрался...
Если в КДЕ (3.5) запускать из конкуера то не отображается нифига.
А если из шелла то всё работает.
Вот эта проблема сто процентов связана с тем, что путь к файлу с картинкой относительный (конкуера не меняет тек. директорию другими словами не делает "cd" ) т.е. в выражении
необходимо использовать абсолютный путь. Для этого можно использовать метод applicationDirPath() класса QApplication (если картинка находится в той же директории, что и исполняемый файл ) т.е
Код: Выделить всё
#include<qapplication.h>
#include<qwidget.h>
#include<qpixmap.h>
int main(int argc,char* argv[]){
QApplication app(argc,argv);
QWidget wgt;
QString l_file= app.applicationDirPath()+"/bricks.jpg";
wgt.setBackgroundPixmap(QPixmap(l_file));
wgt.resize(50,50);
app.setMainWidget(&wgt);
wgt.show();
return app.exec();
}
Если все-таки не работает то тогда нужно смотреть, как собран QT - включена ли поддержка jpg и т.д.
метод setBackgroundPixmap - актуален для 3-го для 4-го лучше делать так
Код: Выделить всё
...
QPalette palette;
QPixmap pixmap(l_file)
palette.setBrush(wgt.backgroundRole(), QBrush(pixmap));
wgt.setPalette(palette);
...