本科学历的我从事Qt开发工程-分享处理常见的几个Qt编程问题

本文分享了16个Qt编程中遇到的问题及其解决方法,包括窗体关闭判断、文件对话框、创建Action、主菜单、工具栏、配置文件保存、警告对话框、通用对话框中文化、无终端输出、静态链接、源代码使用中文、数据库连接问题、创建DLL、启动外部程序、打印报表和系统托盘区图标显示等。通过代码演示和技巧分享,帮助Qt开发者解决问题。
摘要由CSDN通过智能技术生成

前言:Qt是一个1991年由Qt Company开发的跨平台 C++ 图形用户界面应用程序开发框架。它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器。Qt是面向对象的框架,使用特殊的代码生成扩展(称为元对象编译器(MetaObject Compiler, moc))以及一些宏,Qt很容易扩展,并且允许真正地组件编程。

1、如果在窗体关闭前自行判断是否可关闭

答: 重新实现这个窗体的closeEvent()函数,加入判断操作。
代码演示:

void MainWindow::closeEvent(QCloseEvent *event)
{
   
    if (maybeSave())
    {
   
        writeSettings();
        event->accept();
    }
    else
    {
   
        event->ignore();
    }
}

2、如何用打开和保存文件对话

答:使用QFileDialog
代码演示:

 QString fileName = QFileDialog::getOpenFileName(this);
        if (!fileName.isEmpty())
        {
   
              loadFile(fileName);
        }

3、如果创建Actions(可在菜单和工具栏里使用这些Action)

代码演示:

 newAct = new QAction(QIcon(":/images/new.png"), tr("&New"), this);
    newAct->setShortcut(tr("Ctrl+N"));
    newAct->setStatusTip(tr("Create a new file"));
    connect(newAct, SIGNAL(triggered()), this, SLOT(newFile()));
 
    openAct = new QAction(QIcon(":/images/open.png"), tr("&Open"), this);
    openAct->setShortcut(tr("Ctrl+O"));
    openAct->setStatusTip(tr("Open an existing file"));
    connect(openAct, SIGNAL(triggered()), this, SLOT(open()));
 
    saveAct = new QAction(QIcon(":/images/save.png"), tr("&Save"), this);
    saveAct->setShortcut(tr("Ctrl+S"));
    saveAct->setStatusTip(tr("Save the document to disk"));
    connect(saveAct, SIGNAL(triggered()), this, SLOT(save()));
 
    saveAsAct =
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值