beginQT
17th January 2012, 16:02
Hello,
I am trying to use generated UI class object in my own helper class to control the functionality of the UI data(buttons) depending on the data.Here is the code:
Main.cpp
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
//QT Created Class
PSX_HMI w;
w.show();
//Helper class which uses UI object
CPsxHMI_stateMechine stateMachine(w.getUI_Object(), w.getCANIO_DataObject());
return a.exec();
}
//CPsxHMI_stateMechine.cpp
CPsxHMI_stateMechine::CPsxHMI_stateMechine(Ui::PSX _HMIClass *f_UI_Data, cPsxHMI_CANIODataBase *f_CAN_Data)
:objPsx_HMI_ui(f_UI_Data),objCanIO_Data(f_CAN_Data )
{
//objPsx_HMI_ui = f_UI_Data;
//objCanIO_Data = f_CAN_Data;
objPSX_SM_Th = this;
this->start(QThread::HighPriority);
}
void CPsxHMI_stateMechine::run()
{
while(this->isRunning())
{
std::cout<<"State Mechine Thread Started"<<std::endl;
/* if((SystemActivation_Sys_PSC & objCanIO_Data->g_currentActiveFunc_sint32) || (SystemActivation_Sys_PP_PSC_cPSC & objCanIO_Data->g_currentActiveFunc_sint32))
objPsx_HMI_ui->PSC->setStyleSheet("image: url(:/debug/PICS/PSC_active.png)");
else
objPsx_HMI_ui->PSC->setStyleSheet("image: url(:/debug/PICS/PSC_notactive.png)");
if(SystemActivation_Sys_POC & objCanIO_Data->g_currentActiveFunc_sint32)
objPsx_HMI_ui->PSC->setStyleSheet("image: url(:/debug/PICS/POC_a.png)");
else
objPsx_HMI_ui->PSC->setStyleSheet("image: url(:/debug/PICS/POC_na.png)");
if(SystemActivation_Sys_SDW & objCanIO_Data->g_currentActiveFunc_sint32)
objPsx_HMI_ui->PSC->setStyleSheet("image: url(:/debug/PICS/SDW_a.png)");
else
objPsx_HMI_ui->PSC->setStyleSheet("image: url(:/debug/PICS/SDW_na.png)");
if(SystemActivation_Sys_SVA & objCanIO_Data->g_currentActiveFunc_sint32)
objPsx_HMI_ui->PSC->setStyleSheet("image: url(:/debug/PICS/SVA_a.png)");
else
objPsx_HMI_ui->PSC->setStyleSheet("image: url(:/debug/PICS/SVA_na.png)");*/
QThread::msleep(10);
}
}
When I am using objPsx_HMI_ui object which is UI class object I could not run my application, Some problem with runtime libraries. It opens and immediately resets.
Could any one help me in this regard?
Thanks in Advance!
I am trying to use generated UI class object in my own helper class to control the functionality of the UI data(buttons) depending on the data.Here is the code:
Main.cpp
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
//QT Created Class
PSX_HMI w;
w.show();
//Helper class which uses UI object
CPsxHMI_stateMechine stateMachine(w.getUI_Object(), w.getCANIO_DataObject());
return a.exec();
}
//CPsxHMI_stateMechine.cpp
CPsxHMI_stateMechine::CPsxHMI_stateMechine(Ui::PSX _HMIClass *f_UI_Data, cPsxHMI_CANIODataBase *f_CAN_Data)
:objPsx_HMI_ui(f_UI_Data),objCanIO_Data(f_CAN_Data )
{
//objPsx_HMI_ui = f_UI_Data;
//objCanIO_Data = f_CAN_Data;
objPSX_SM_Th = this;
this->start(QThread::HighPriority);
}
void CPsxHMI_stateMechine::run()
{
while(this->isRunning())
{
std::cout<<"State Mechine Thread Started"<<std::endl;
/* if((SystemActivation_Sys_PSC & objCanIO_Data->g_currentActiveFunc_sint32) || (SystemActivation_Sys_PP_PSC_cPSC & objCanIO_Data->g_currentActiveFunc_sint32))
objPsx_HMI_ui->PSC->setStyleSheet("image: url(:/debug/PICS/PSC_active.png)");
else
objPsx_HMI_ui->PSC->setStyleSheet("image: url(:/debug/PICS/PSC_notactive.png)");
if(SystemActivation_Sys_POC & objCanIO_Data->g_currentActiveFunc_sint32)
objPsx_HMI_ui->PSC->setStyleSheet("image: url(:/debug/PICS/POC_a.png)");
else
objPsx_HMI_ui->PSC->setStyleSheet("image: url(:/debug/PICS/POC_na.png)");
if(SystemActivation_Sys_SDW & objCanIO_Data->g_currentActiveFunc_sint32)
objPsx_HMI_ui->PSC->setStyleSheet("image: url(:/debug/PICS/SDW_a.png)");
else
objPsx_HMI_ui->PSC->setStyleSheet("image: url(:/debug/PICS/SDW_na.png)");
if(SystemActivation_Sys_SVA & objCanIO_Data->g_currentActiveFunc_sint32)
objPsx_HMI_ui->PSC->setStyleSheet("image: url(:/debug/PICS/SVA_a.png)");
else
objPsx_HMI_ui->PSC->setStyleSheet("image: url(:/debug/PICS/SVA_na.png)");*/
QThread::msleep(10);
}
}
When I am using objPsx_HMI_ui object which is UI class object I could not run my application, Some problem with runtime libraries. It opens and immediately resets.
Could any one help me in this regard?
Thanks in Advance!