Qt 笔记记录

定时发送一次信号:

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);

  1. 返回上一步后数据丢失
    实现向导对话框时,经常需要返回上一步。如果需要保留当前页的信息,必须将option设置为QWizard::IndependentPages
    void QWizard::setOption ( WizardOption option, bool on = true )
  2. 页面初始化
    要在页面显示前进行初始化操作,只需重载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();

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值