t3

    技术2024-12-01  17

    The Q_OBJECT macro at the beginning of the class definition is necessary for all classes that define signals or slots只有加入了Q_OBJECT,你才能使用QT中的signal和slot机制

     

    一个典型的qrc文件

     

      1 <RCC>  2     <qresource prefix="/" >  3         <file>images/brushedmetal.png</file>  4         <file>images/qtlogo-16.png</file>  5         <file>images/branch-closed.png</file>  6         <file>images/branch-open.png</file>  7         <file>images/qphonebutton.png</file>  8         <file>images/update.png</file>  9         <file>images/config.png</file> 10         <file>images/query.png</file> 11         <file>images/live.png</file> 12         <file>images/system.png</file> 13         <file alias="upIcon">images/up.png</file> 14         <file alias="downIcon">images/down.png</file> 15         <file alias="rightIcon">images/right.png</file> 16         <file alias="leftIcon">images/left.png</file> 17     <file>translations/catalog_ch.qm</file> 18     </qresource> 19 </RCC>

     

    而我在代码中使用为liveButton->setIcon(QIcon(":/images/live.png"));

    应该在pro文件里加入 RESOURCES += catalog.qrc 嵌入资源的好处是把这些图片也编辑为代码了,可以创建真正独立的可执行文件

     

     

    代码中按钮的文字没有显示,怀疑是不能显示中文的原因,于是把代码

    button = new QPushButton(tr("Seat"));

    改为button = new QPushButton("Seat");

    可以显示正常了

     

    最新回复(0)