用QT做上位机界面,在QT头文件定义类
class MainWindow : public QMainWindow
{ QOBJECT
piblic :
explicit MainWindow(QWidget parent =0);
~MainWindow();
int initPort();
static DWORD stdcall ThreadPDoTest( DWORD EventID, LPVOID pBuf, DWORD BufLen, LPVOID UserData);
private:
Ui:: Mainwindow *ui;
}
#end if
然后ThreadPDoTest函数是这样定义的:
DWORD __stdcall MainWindow threadDotest(DWORD EventID, LPVOID pBuf, DWORD Buflen, LPVOID UserData)//。主要功能是完成数据的计算并且显示到QT的控件上
{
....
c1=(float)(256*data[1]+data[0])-512)*1.5/1000;
ui->NUMERIC_C1->setText(temp.setNum(c1));
c2=...
....
}
编译报错 invalid use of member ' MainWindow :: *ui' instatic member function
我看网上说把ui 改成public可行,但是主线程函数中才行,不然就会崩溃。