Qt学习经验之quit()、exit()、close()《转载》
- {
- QApplication* app;
- app->exit(0);
- }
- {
- QApplication* app;
- app->quit();
- }
- QPushButton *quitButton = new QPushButton( "Quit" );
- connect( quitButton, SIGNAL(clicked()), qApp, SLOT(quit()) );
- if (!(QMessageBox::information(this,tr("CT Control View"),tr("Do you really want to log out CT Control View?"),tr("Yes"),tr("No"))))
- {
- this->close();
- }

- void mainWindow::closeEvent( QCloseEvent * event )
- {
- switch( QMessageBox::information( this, tr("CT Control View"),
- tr("Do you really want to log out CT Control View?"),
- tr("Yes"), tr("No"),
- 0, 1 ) )
- {
- case 0:
- event->accept();
- break;
- case 1:
- default:
- event->ignore();
- break;
- }
- }


- int main( int argc, char ** argv )
- {
- QApplication a( argc, argv );
- ABMainWindow *mw = new ABMainWindow();
- mw->setCaption( "Qt Example - Addressbook" );
- a.setMainWidget( mw );
- mw->show();
- a.connect( &a, SIGNAL( lastWindowClosed() ), &a, SLOT( quit() ) );
- int result = a.exec();
- delete mw;
- return result;
- }

connect(ui.RECVpushButton,SIGNAL(clicked()),this,SLOT(test()));
connect(&tcpThread,SIGNAL(SignalRecv()),this,SLOT(receNetConnect()));
void MainWindow::receNetConnect()
{
tcpipLink.TCPIPRecvData();
//tcpipLink.TCPIPCheck();
data[0]=tcpipLink.recvbuf[0];
data[1]=tcpipLink.recvbuf[1];
data[2]=tcpipLink.recvbuf[2];
data[3]=tcpipLink.recvbuf[3];
data[4]=tcpipLink.recvbuf[4];
data[5]=tcpipLink.recvbuf[5];
data[6]=tcpipLink.recvbuf[6];
data[7]=tcpipLink.recvbuf[7];
data[8]=tcpipLink.recvbuf[8];
data[9]=tcpipLink.recvbuf[9];
data[10]=tcpipLink.recvbuf[10];
//第二种赋值 利用数组
//data[0]=tcpipLink.dddd[0];
//data[1]=tcpipLink.dddd[1];
//data[2]=tcpipLink.dddd[2];
//data[3]=tcpipLink.dddd[3];
//data[4]=tcpipLink.dddd[4];
//data[5]=tcpipLink.dddd[5];
s1 = QString::number(data[0],'f',6);
s2 = QString::number(data[1],'f',6);
s3 = QString::number(data[2],'f',6);
s4 = QString::number(data[3],'f',6);
s5 = QString::number(data[4],'f',6);
s6 = QString::number(data[5],'f',6);
s7 = QString::number(data[6],'f',6);
s8 = QString::number(data[7],'f',6);
s9 = QString::number(data[8],'f',6);
s10 = QString::number(data[9],'f',6);
s11 = QString::number(data[10],'f',6);
ui.lineEdit->setText(s1);
ui.lineEdit_2->setText(s2);
ui.lineEdit_3->setText(s3);
ui.lineEdit_4->setText(s4);
ui.lineEdit_5->setText(s5);
ui.lineEdit_6->setText(s6);
ui.lineEdit_joint1->setText(s7);
ui.lineEdit_joint2->setText(s8);
ui.lineEdit_joint3->setText(s9);
ui.lineEdit_joint4->setText(s10);
ui.lineEdit_joint5->setText(s11);
}
void MainWindow::test()
{
tcpThread.start();
}
void MainWindow::Stop()
{
printf("it's stop!\n");
tcpThread.terminate();
}
ThreadTCP
void ThreadTCP::run()
{
//emit SignalLink();
//emit SignalRecv();
while(1)
{
if(m_stopFlag==false)
{
break;
}
printf("OK!\n");
Sleep(400);
emit SignalRecv();
}
}
即可将该线程终止,并能继续接收数据!!!!!!!
Qt学习经验之quit()、exit()、close()《转载》的更多相关文章
- 【转载】分享一些Qt学习资源,欢迎下载
资源来源:http://bbs.csdn.net/topics/390358737 经过我一翻整理,把一些我收集到的Qt学习资源分享给大家,主要适合新手,老鸟可以直接忽略我.要说明一下,很多资源都是在 ...
- 转载: Qt 学习之路 2归档
Qt 学习之路 2归档 http://www.devbean.net/2012/08/qt-study-road-2-catelog/
- QT学习之菜单栏与工具栏
QT学习之菜单栏与工具栏 目录 简单菜单栏 多级菜单栏 上下菜单栏 工具栏 简单菜单栏 程序示例 from PyQt5.QtWidgets import QApplication, QMainWind ...
- QT学习之第一个程序
QT学习之第一个程序 目录 手动创建主窗口 居中显示 添加窗口图标 显示提示文本 Message Box的应用 手动连接信号与槽 手动创建主窗口 窗口类型 QMainWindow: 可以包含菜单栏.工 ...
- QT学习之windows下安装配置PyQt5
windows下安装配置PyQt5 目录 为什么要学习QT 命令行安装PyQt5以及PyQt5-tools 配置QtDesigner.PyUIC及PyRcc 为什么要学习QT python下与界面开发 ...
- Qt 学习之路 2(74):线程和 QObject
Home / Qt 学习之路 2 / Qt 学习之路 2(74):线程和 QObject Qt 学习之路 2(74):线程和 QObject 豆子 2013年12月3日 Qt 学习之路 2 2 ...
- Qt 学习之路 2(72):线程和事件循环
Qt 学习之路 2(72):线程和事件循环 <理解不清晰,不透彻> -- 有需求的话还需要进行专题学习 豆子 2013年11月24日 Qt 学习之路 2 34条评论 前面一章我 ...
- Qt 学习之路 2(19):事件的接受与忽略
Home / Qt 学习之路 2 / Qt 学习之路 2(19):事件的接受与忽略 Qt 学习之路 2(19):事件的接受与忽略 豆子 2012年9月29日 Qt 学习之路 2 140条评论 ...
- QT学习教程
原地址:http://www.devbean.NET/2012/08/qt-study-road-2-catelog/ 网上看到的不错的教程 本教程以qt5为主,部分地方会涉及qt4.据说非常适合qt ...
随机推荐
- BZOJ 2431: [HAOI2009]逆序对数列( dp )
dp(i,j)表示1~i的全部排列中逆序对数为j的个数. 从1~i-1的全部排列中加入i, 那么可以产生的逆序对数为0~i-1, 所以 dp(i,j) = Σ dp(i-1,k) (j-i+1 ≤ k ...
- Python 操作Redis
redis对比monoDB: redis和memcache 是key value非关系型数据库,mysql是关系型数据库,表的结构和保存的内容有严格的要求,关系型数据库无法保存临时数据或不标准的数据, ...
- String "+" 的补充说明---行粒度
String 中“+” 的操作的补充说明 在使用“+”的时候,会创建一个StringBuilder对象,然后invokevirtual append()操作 “+”操作创建StringBuilder的 ...
- Windows Phone 8初学者开发—第19部分:设置RecordAudio.xaml页面
原文 Windows Phone 8初学者开发—第19部分:设置RecordAudio.xaml页面 原文地址: http://channel9.msdn.com/Series/Windows-Ph ...
- BIOS和CMOS的联系与区别
BIOS为何物? BIOS就是(Basic Input/Output System,基本输入/输出系统的缩写)在电脑中起到了最基础的而又最重要的作用.是电脑中最基础的而又最重要的程序.把这一段程序放在 ...
- Installation and Configuration MySQL Cluster 7.2 on CentOS 5 (include MySQL 5.5)
Architecture Manager Node mysql-mag1 192.168.1.31 mysql-mag2 192.168.1.32 SQL Node mysql-sql1 ...
- CentOS安装postgresql 9.4
第一步:在CentOS6.5下安装Postgresql 1. 安装PostgreSQL源 # yum install http://yum.postgresql.org/9.4/redhat/rhel ...
- 分享非常有用的Java程序(关键代码)(七)---抓屏程序
原文:分享非常有用的Java程序(关键代码)(七)---抓屏程序 import java.awt.Dimension; import java.awt.Rectangle; import java.a ...
- Windows Phone 8初学者开发—第22部分:用演示图板创建卷盘的动画
原文 Windows Phone 8初学者开发—第22部分:用演示图板创建卷盘的动画 第22部分: 用演示图板创建卷盘的动画 原文地址:http://channel9.msdn.com/Series/ ...
- 基于visual Studio2013解决C语言竞赛题之1006填空
题目 解决代码及点评 /************************************************************************/ ...