Преглед на файлове

0413 删除信号槽传widget,修改为handle中addTab

caizm преди 2 години
родител
ревизия
5474da2bc1

+ 29 - 29
CAE_Solution/src/main.cpp

@@ -41,42 +41,42 @@ int main(int argc, char *argv[])
     //QWidget *w_=new QWidget;
     w.show();
 //初始化状态机
-//    stateMachine* recvstate= new stateMachine("recvClient");
-//    QThread *thread_recvsate = new QThread();
-//    QThread *thread_sendstate = new QThread();
-//    //QThread *thread_handlePool = new QThread();
-//    stateMachine* sendstate= new stateMachine("sendClient") ;
-//    handlePool *handle = new handlePool();
+    stateMachine* recvstate= new stateMachine("recvClient");
+    QThread *thread_recvsate = new QThread();
+    QThread *thread_sendstate = new QThread();
+    //QThread *thread_handlePool = new QThread();
+    stateMachine* sendstate= new stateMachine("sendClient") ;
+    handlePool *handle = new handlePool(&w);
 
-//    recvstate->moveToThread(thread_recvsate);
-//    thread_recvsate->start();
-//    sendstate->moveToThread(thread_sendstate);
-//    thread_sendstate->start();
-//    //handle->moveToThread(thread_handlePool);
-//    //thread_handlePool->start();
+    recvstate->moveToThread(thread_recvsate);
+    thread_recvsate->start();
+    sendstate->moveToThread(thread_sendstate);
+    thread_sendstate->start();
+    //handle->moveToThread(thread_handlePool);
+    //thread_handlePool->start();
 
-//    QObject::connect(handle,SIGNAL(sendImg_handlePoolToSendstate(std::string)),sendstate,SLOT(getImg_handlePoolToSendstate(std::string)));
-//    QObject::connect(recvstate,SIGNAL(sendmsg_recvstateTohandlePool(std::string)),handle,SLOT(getmsg_recvstateTohandlePool(std::string)));
-//    QObject::connect(handle,SIGNAL(sendWidget_handlePoolToWidget(QWidget*)),&w,SLOT(getWidget_handlePoolToWidget(QWidget*)));
-    QVTKRenderer* render_ = new QVTKRenderer();
-    render_->init();
+    QObject::connect(handle,SIGNAL(sendImg_handlePoolToSendstate(std::string)),sendstate,SLOT(getImg_handlePoolToSendstate(std::string)));
+    QObject::connect(recvstate,SIGNAL(sendmsg_recvstateTohandlePool(std::string)),handle,SLOT(getmsg_recvstateTohandlePool(std::string)));
+    //QObject::connect(handle,SIGNAL(sendWidget_handlePoolToWidget(QWidget*)),&w,SLOT(getWidget_handlePoolToWidget(QWidget*)));
+//    QVTKRenderer* render_ = new QVTKRenderer();
+//    render_->init();
 
-    QString m_filePath="F:\\czm\\adicode\\CAE_Solution\\CAE_Solution\\tf.ugrid";
-    //if(m_filePath.isEmpty())return;
-    MeshManager *meshmanager = MeshManager::getInstance();
+//    QString m_filePath="F:\\czm\\adicode\\CAE_Solution\\CAE_Solution\\tf.ugrid";
+//    //if(m_filePath.isEmpty())return;
+//    MeshManager *meshmanager = MeshManager::getInstance();
 
-    bool f = meshmanager->LoadData(m_filePath);
-    cout<<"f:"<<f<<endl;
-    if(f){
-        if(render_){
-            meshmanager->DisplayMesh(render_);
-            render_->ZoomToExtents();
-        }
-    }
+//    bool f = meshmanager->LoadData(m_filePath);
+//    cout<<"f:"<<f<<endl;
+//    if(f){
+//        if(render_){
+//            meshmanager->DisplayMesh(render_);
+//            render_->ZoomToExtents();
+//        }
+//    }
     //w.addTab(render_->GetWidget(),"test");
     //render_->Update();
     //render_->GetWidget()->show();
 
-     w.addTab(render_->GetWidget(),"test");
+     //w.addTab(render_->GetWidget(),"test");
     return a.exec();
 }

+ 12 - 4
CAE_Solution/src/threadPool_and_statemachine/dealWith/handlepool.cpp

@@ -17,6 +17,11 @@ handlePool::handlePool(QObject *parent) : QObject(parent)
 {
 }
 
+handlePool::handlePool(QTabWidget *w)
+{
+    this->w=w;
+}
+
 /*
  * @brief:the destructor
  * @param:
@@ -43,13 +48,15 @@ void handlePool::getmsg_recvstateTohandlePool(std::string recvmsg)
 
     if(map_render.contains(json_object->proId)){
         render_ = map_render.value(json_object->proId);
+
     }else{
         render_ = new QVTKRenderer();
         map_render.insert(json_object->proId,render_);
+        w->addTab(render_->GetWidget(),"test");
     }
-
     operateRender(json_object->action,render_);
 
+
     std::string img_ = render_->img.toStdString();
     std::string json_ = json_object->ToJson(img_);
     emit sendImg_handlePoolToSendstate(json_);//信号
@@ -66,16 +73,17 @@ void handlePool::operateRender(QString action,QVTKRenderer* render_)
 {
     if(action == "init"){
         render_->init();
-        emit sendWidget_handlePoolToWidget(render_->GetWidget());
+        //emit sendWidget_handlePoolToWidget(render_->GetWidget());
+
         render_->CaptureWindowImages();
     }else if(action == "loaddata"){
-        QString m_filePath="/cephfs/hcfd/solverdown/31f117acb7e74232a3267b091391eab2/hcfd/data_in/hcfd.ugrid";
+        QString m_filePath="F:\\czm\\adicode\\CAE_Solution\\CAE_Solution\\tf.ugrid";
         if(m_filePath.isEmpty())return;
         MeshManager *meshmanager = MeshManager::getInstance();
         bool f = meshmanager->LoadData(m_filePath);
         if(f){
             if(render_){
-                meshmanager->DisplayMesh(render_);
+                meshmanager->DisplayMesh( );
                 render_->ZoomToExtents();
             }
         }

+ 3 - 2
CAE_Solution/src/threadPool_and_statemachine/dealWith/handlepool.h

@@ -3,7 +3,7 @@
 
 #include <QObject>
 #include <QVector>
-
+#include <QTabWidget>
 #include "../../VTK/QVTKRenderer/qvtkrenderer.h"
 #include "../../VTK/Manager/meshmanager.h"
 #include "vtkjsonobject.h"
@@ -14,6 +14,7 @@ class handlePool : public QObject
     Q_OBJECT
 public:
     explicit handlePool(QObject *parent = nullptr);
+    handlePool(QTabWidget* w);
     ~handlePool();
 
     void operateRender(QString,QVTKRenderer*);
@@ -21,7 +22,7 @@ public:
 
 public:
     QMap<QString,QVTKRenderer*> map_render;
-
+    QTabWidget* w;
 
 signals:
     void sendImg_handlePoolToSendstate(std::string);

+ 5 - 5
CAE_Solution/src/widget.cpp

@@ -9,8 +9,8 @@ Widget::~Widget(){
 
 }
 
-void Widget::getWidget_handlePoolToWidget(QTabWidget *widget)
-{
-    num++;
-    //this->addTab(widget,"test"+QString::number(num));
-}
+//void Widget::getWidget_handlePoolToWidget(QTabWidget *widget)
+//{
+//    num++;
+//    this->addTab(widget,"test"+QString::number(num));
+//}

+ 2 - 2
CAE_Solution/src/widget.h

@@ -12,8 +12,8 @@ public:
     ~Widget();
 
     int num;
-public slots:
-    void getWidget_handlePoolToWidget(QTabWidget*);
+//public slots:
+//    void getWidget_handlePoolToWidget(QTabWidget*);
 };
 
 #endif // WIDGET_H