2

Qt4 アプリケーションを起動すると、Windows 7 および Windows XP のタスクバーにアイコンとして表示されません。どうすれば出現させることができますか?

アプリを最小化すると、左下にウィンドウのない小さなタイトル バーが表示されます。

ところで、コンソール ウィンドウがアプリと一緒にタグ付けされないようにするために、CMakeLists.txt で次のことを行っています。

if(WIN32)
  add_executable( codequery WIN32 ${CODEQUERY_SRCS} ${CODEQUERY_MOC_SRCS} ${CODEQUERY_RC_SRCS} ${CODEQUERY_UI_HDRS} ${QM} )
else()
  add_executable( codequery ${CODEQUERY_SRCS} ${CODEQUERY_MOC_SRCS} ${CODEQUERY_RC_SRCS} ${CODEQUERY_UI_HDRS} ${QM} )
endif()

これが私の主な機能です:

#include "mainwindow.h"

int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QMainWindow *wndw = new QMainWindow;
mainwindow mw(wndw, &app);

mw.show();
return app.exec();
}

mainwindow の宣言の一部を次に示します。

namespace Ui {
     class MainWindow;
 }

class mainwindow : public QMainWindow
{
  Q_OBJECT

public:
Ui::MainWindow *ui;
mainwindow(QMainWindow *parent = NULL, QApplication *app = NULL);
virtual ~mainwindow();

そして、ここにそのコンストラクタの一部があります:

#include "mainwindow.h"
#include "ui_mainWindow.h"

mainwindow::mainwindow(QMainWindow *parent, QApplication *app)
:QMainWindow(parent)
,m_app(app)
,ui(new Ui::MainWindow)
 {
     ui->setupUi(this);
 }

GUI 部分は Qt Designer を使用して設計され、ui_mainWindow.h として生成されます。

setupUi 関数の一部:

void setupUi(QMainWindow *MainWindow)
{
    if (MainWindow->objectName().isEmpty())
        MainWindow->setObjectName(QString::fromUtf8("MainWindow"));
    MainWindow->resize(629, 600);
    QIcon icon;
    icon.addFile(QString::fromUtf8(":/mainwindow/images/logo.png"), QSize(), QIcon::Normal, QIcon::Off);
    MainWindow->setWindowIcon(icon);
4

1 に答える 1