Доброго всем времени суток.
Нужно создать оконное приложение, с возможностью вызова и запуска из него стороних приложений. В программе реализовано меню(«о программе,выход»)  и указатель на положения курсора ( нашёл в интернете). Нужно что бы был ещё один пункт меню «Приложения» по нажатию на который появлялось окошко 
02.h
#include <QtGui>// подключаем заголовочный файл в котором описаны все объекты, относящиеся к элементам графического интерфейса
     
     class MainWindow : public QMainWindow {// объявляем класс 
         Q_OBJECT//обязательный макрос
    
     public:
         MainWindow();
     
    protected:// виртуальные методы,вызываймые автоматически при изменении окна, закрытии окна
        virtual void resizeEvent(QResizeEvent *event);
        virtual void mouseMoveEvent(QMouseEvent *event);
        virtual void closeEvent(QCloseEvent *event);
        
    private slots:// описание слотов
      void about();
   
    private:// переменные-челены класса
       QAction *aboutAction;
       QAction *exitAction;
       QMenu *fileMenu;
       QLabel *sb1;
       QLabel *sb2;
       QLabel *sb3;
	   
        bool askOnClose();// служебная функция, вызываймая при закрытии окна
    };
Main.cpp
#include <QtGui>
#include "02.h"
     
    MainWindow::MainWindow() {
     
         QTextCodec *codec = QTextCodec::codecForName("CP1251");//определили кодек
         QTextCodec::setCodecForTr(codec);
     
         aboutAction = new QAction(tr("&О программе"), this);
        aboutAction->setStatusTip(tr("Сведения о программе"));// создали действие О программе. задали для него текст подскази и связали с функцией about реализованной ниже
        connect(aboutAction, SIGNAL(triggered()), this, SLOT(about()));
    
        exitAction = new QAction(tr("В&ыход"), this);
       exitAction->setStatusTip(tr("Выход из программы"));// создали действие выход задали для него текст подсказки и клавиатурное сокращение, связали его с функцие close, выполняющей закрытие окна
        exitAction->setShortcut(tr("Ctrl+Q"));
        connect(exitAction, SIGNAL(triggered()), this, SLOT(close()));
  // создаётся меню файл, состоящее из двух пунктов
        fileMenu = menuBar()->addMenu(tr("&Файл"));
        fileMenu->addAction(aboutAction);
        fileMenu->addSeparator();
        fileMenu->addAction(exitAction);
    
      sb1 = new QLabel(statusBar());
       sb2 = new QLabel(statusBar());
        sb3 = new QLabel(statusBar());
    statusBar()->setSizeGripEnabled(false);
     statusBar()->addWidget(sb1, 2);
      statusBar()->addWidget(sb2, 1);
       statusBar()->addWidget(sb3, 1);
    
       sb1->setText(tr("Положение курсора"));
    
        setMouseTracking(true);
    }
    
    
    void MainWindow::resizeEvent(QResizeEvent *event) {
       QSize sz = event->size();
       sb2->setText(
            QString( "(%1, %2)" ).arg( sz.width() ).arg( sz.height() ) );
    }
   
   void MainWindow::mouseMoveEvent(QMouseEvent *event) {
        QPoint pos = event->pos();
        sb3->setText(
            QString( "%1, %2" ).arg( pos.x() ).arg( pos.y() ) );
    }
    
   void MainWindow::about() {
        QMessageBox::about(
            this, tr("О программе"),
           tr("<h2>текст</h2>"
   "<p>текст"));
    }
    
    bool MainWindow::askOnClose() {
        int r = QMessageBox::question(
            this, tr("Подтвердите"),
            tr("Выйти из программы?"),
            QMessageBox::Yes | QMessageBox::No,
            QMessageBox::Yes,
            QMessageBox::Cancel | QMessageBox::Escape);
        return (r == QMessageBox::Yes);
    }
    
    void MainWindow::closeEvent(QCloseEvent *event) {
        if (askOnClose()) {
            event->accept();
        } else {
          event->ignore();
       }
		
	}
   
		
	int main(int argc, char *argv[]) {
       QApplication app(argc, argv);
	   MainWindow mainWin;
	
QBrush br(Qt::TexturePattern);
mainWin.setFixedSize(1300, 1400);
    br.setTextureImage(QImage("C:/wood.jpg"));// установка фона окна
    QPalette plt = mainWin.palette();
    plt.setBrush(QPalette::Background, br);
   mainWin.setPalette(plt); 
mainWin.setWindowTitle("MainWindow");// установка надписи заголовка окна
mainWin.show();	       
      
       return app.exec();
   }
Нашёл в учебника Шлее Qt 4.5 код
QStringList  lst;
QListWidget  lwg;
QListWidgetItem* pitem = 0;
lwg.setIconSize(QSize(48,48));
lst << "Word" <<"Google Chrome";
foreach(QString str, lst) {
	pitem = new QListWidgetItem(str, &lwg);
	pitem->setIcon(QPixmap(str + ".jpg"));
lwg.resize(125, 130);
lwg.show();
 в коде не ясно как и откуда будут появлятся иконки(
ну не в этом суть, нужно что бы когда появиться это окошко , пользователь мог выбрать нужный ему пункт, и  приложение которое должно быть «под пунктом» запустилось, 
нашёл код вроде для запуска приложений
QProcess prog ;
	prog.start("D:/…..exe");
Как собрать всё это воедино не знаю, помогите.