<QtResource> Proxy Page

Macros

void Q_CLEANUP_RESOURCE(name)
void Q_INIT_RESOURCE(name)

Macro Documentation

void Q_CLEANUP_RESOURCE(name)

Unloads the resources specified by the .qrc file with the base name name.

Normally, Qt resources are unloaded automatically when the application terminates, but if the resources are located in a plugin that is being unloaded, call Q_CLEANUP_RESOURCE() to force removal of your resources.

Note: This macro cannot be used in a namespace. Please see the Q_INIT_RESOURCE documentation for a workaround.

Example:

 Q_CLEANUP_RESOURCE(myapp);

See also Q_INIT_RESOURCE() and The Qt Resource System.

void Q_INIT_RESOURCE(name)

Initializes the resources specified by the .qrc file with the specified base name. Normally, when resources are built as part of the application, the resources are loaded automatically at startup. The Q_INIT_RESOURCE() macro is necessary on some platforms for resources stored in a static library.

For example, if your application's resources are listed in a file called myapp.qrc, you can ensure that the resources are initialized at startup by adding this line to your main() function:

 Q_INIT_RESOURCE(myapp);

If the file name contains characters that cannot be part of a valid C++ function name (such as '-'), they have to be replaced by the underscore character ('_').

Note: This macro cannot be used in a namespace. It should be called from main(). If that is not possible, the following workaround can be used to init the resource myapp from the function MyNamespace::myFunction:

 inline void initMyResource() { Q_INIT_RESOURCE(myapp); }

 namespace MyNamespace
 {
     ...

     void myFunction()
     {
         initMyResource();
     }
 }

See also Q_CLEANUP_RESOURCE() and The Qt Resource System.