[ notebookFun @ 15.04.2011. 18:49 ] @
Imam na formi jednu sliku background.jpg koja se nalazi u folderu pored kompajliranog EXE-a.

Code:

QPalette palette;
    palette.setBrush(this->backgroundRole(), QBrush(QImage("background.jpg")));
    this->setPalette(palette);
    ui->setupUi(this);



Kada prebacim program sa slikom na drugi racunar, program radi ali slike na formi nema!
[ vs2000 @ 19.04.2011. 19:44 ] @
Nemoj praviti programe koji rade samo na tvom računaru čak iako ga praviš samo za sebe:

Code:

        QString strPutanjaDoDirektorijumaGdeJeMojProgram = QCoreApplication::applicationDirPath();   //Vraća putanju gde se nalazi naš program
        strPutanjaDoDirektorijumaGdeJeMojProgram += "/MojeSlike";
        
        QDir direktorijum;

        if(direktorijum.exists(strPutanjaDoDirektorijumaGdeJeMojProgram))
        {
            setCurrent(strPutanjaDoDirektorijumaGdeJeMojProgram);
        }
        else
        {
              if(direktorijum.mkpath(strPutanjaDoDirektorijumaGdeJeMojProgram))
              {
                 qDebug("Direktorijum gde se nalaze slike kreiran.");
             }
            else
            {
                qDebug(QString::fromUtf8("Kreiranje direktorijuma nije uspelo. *ebem li ga zašto... Verovatno nemaš prava pisanja u taj direktorijum..."));
            }
         }



[Ovu poruku je menjao vs2000 dana 19.04.2011. u 20:55 GMT+1]
[ notebookFun @ 21.04.2011. 10:13 ] @
Pa i ovaj moj program treba da radi na svim racunarima, a ovaj tvoj source code nema nikakve veze sa ovim sto sam ja htjeo!
Uspjeo sam da rijesim problem tako sto sam pronasa DLL koji sluzi za prikaz slike, u mom slucaju "qjpegd4.dll". Njega je potrebno staviti u folder "imageformats" pored EXE fajla. Ovo se radi samo u slucaju da na toj masini nema instaliran QT.


[ vs2000 @ 21.04.2011. 20:52 ] @
Hteo sam da ti dam par korisnih ideja kako raditi sa direktorijima, putanjama, kako se kreiraju, i koriste. Ako iole znaš nešto o programiranju iz kôda možeš videti kako da učitaš nešto sa neke određene lokaciju u odnosu na to gde se nalazi izvršna datoteka tvog programa.

Što se tiče kako qt radi, moraju postojati qt biblioteke na računaru gde se pokreće pogram. Za windows ako se dobro sećam, tri od njih su osnovne QtGui4.dll, QtCore4.dll i QtSvg4.dll. Mogu biti u direktorijumu gde se nalazi izvršna datoteka, ili u /windows/system32 direktorijumu. Dodatne biblioteke koje program zahteva isto tako moraju biti dostupne na nekoj od ovih putanja. U najvećem broju slučajeva ove tri su dovoljne. Na linux-u o tome nema potrebe da se brine, pošto je qt već preinstaliran u 99% slučajeva.
[ Eurora3D Team @ 09.05.2011. 19:19 ] @
Treba da se vodi racuna i dali su dllovi debug ili release u zavisnosti od toga kako je program iskompajliran. Debug verzije su sa slovom d na kraju.