定时发送一次信号:
QTimer::singleShot(0,qApp,SLOT(quit()));
文件 //代表根目录
file://D:/X方向的应变图.jpg
Qt加载c++11特性
CONFIG += c++11
//事件
void MyLabel::mousePressEvent(QMouseEvent * event)
{
if(event->button() == Qt::LeftButton) {
// do something
} else {
QLabel::mousePressEvent(event);
}
}
Qt creator发布
Qt 命令控制台 windeployqt 工具
windeployqt
//测试时间效率
QTime t;
t.start();
//...
qDebug() << "花费时间" << t.elapsed();
结束应用:
//退出应用程序
void Dialog::exitApp()
{
QApplication::quit();
//exit(0);
}
qlineedit 正则
{
QRegExp retx("^[a-zA-Z]+[a-zA-Z0-9_]{32}$");
ui.taskNamelineEdit->setValidator(new QRegExpValidator(retx, this));
}
Qt向导类QWizard的使用
页面必填项在每个向导页注册field,如果在name后添加
*
,则只有当此field被填充时,【下一步】或【完成】按钮才会变为可用。注册后在QWizard中调用
QVariant QWizard::field ( const QString & name ) const
获取值。
this->registerField("Prospect*", lineEditProspect);
this->registerField("ProjectName*", lineEditProjectName);
this->registerField("Description", lineEditProjectDescription);
- 返回上一步后数据丢失
实现向导对话框时,经常需要返回上一步。如果需要保留当前页的信息,必须将option设置为QWizard::IndependentPages
。void QWizard::setOption ( WizardOption option, bool on = true )
- 页面初始化
要在页面显示前进行初始化操作,只需重载void QWizardPage::initializePage () [virtual]
即可。如果设置了QWizard::IndependentPages
选项,则该函数只在页面第一次显示时调用。
Qt右键菜单的使用
在QWiget中使用void setContextMenuPolicy(Qt::ContextMenuPolicy policy)
设置菜单的显示方式。点击右键就会有void customContextMenuRequested(const QPoint &pos)
信号,这时在对应的槽中添加QMenu即可,如下:
Qt°符号
QString::fromLatin1("\260C");
vs 软件编译后默认以管理员身份运行。
Configuation->Linker->Manifest File->UAC Execution Level-> requireAdministrator
Qt UI 无法识别某类型
namespace Ui { class SoloProjectInfoModel; };
浮点数模糊比较
qFuzzyCompare(double p1, double p2)
自定义信号槽
qRegisterMetaType<TaskItems *>("TaskItems*");
格式化输出调试信息
// 改变缺省消息处理程序的输出
qSetMessagePattern("Message:%{message} File:%{file} Line:%{line} Function:%{function} DateTime:%{time [yyyy-MM-dd hh:mm:ss ddd]}");
// 打印信息
qDebug("This is a debug message.");
qInfo("This is a info message.");
qWarning("This is a warning message.");
qCritical("This is a critical message.");
qFatal("This is a fatal message.");
防止系统休眠
SetThreadExecutionState(ES_CONTINUOUS | ES_SYSTEM_REQUIRED | ES_DISPLAY_REQUIRED);
QTabWidget 隐藏tab
ui->tabWidget->tabBar()->hide();