赞
踩
3个按钮,一个按钮点击后就退出,
一个按钮点击后就播报退出按钮的名字,并无法再点击
一个按钮点击后就恢复播报按钮的功能
QT += core gui texttospeech greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings # depend on your compiler). Please consult the documentation of the # deprecated API in order to know how to port your code away from it. DEFINES += QT_DEPRECATED_WARNINGS # You can also make your code fail to compile if it uses deprecated APIs. # In order to do so, uncomment the following line. # You can also select to disable deprecated APIs only up to a certain version of Qt. #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0 SOURCES += \ main.cpp \ homework.cpp HEADERS += \ homework.h # Default rules for deployment. qnx: target.path = /tmp/$${TARGET}/bin else: unix:!android: target.path = /opt/$${TARGET}/bin !isEmpty(target.path): INSTALLS += target
#include <QPushButton> #include "QDebug" #include <QtTextToSpeech> class HomeWork : public QWidget { Q_OBJECT signals: public slots: void showMes(); void open(); public: HomeWork(QWidget *parent = nullptr); ~HomeWork(); QPushButton* btn1; QPushButton* btn2; QPushButton* btn3; //定义播报者 QTextToSpeech speech; }; #endif // HOMEWORK_H
#include "homework.h" void HomeWork::showMes() { speech.say(btn3->text()); btn2->setEnabled(false); } void HomeWork::open() { speech.say(btn1->text()); btn2->setEnabled(true); } HomeWork::HomeWork(QWidget *parent) : QWidget(parent) { this->resize(1100,600);//重新设置主控件大小 this->setMaximumSize(1600,1000);//设置最大尺寸 this->setMinimumSize(500,400);//设置最小尺寸 //this->setFixedSize(1100,600);//设置固定尺寸 //设置窗口标题 this->setWindowTitle("作业"); //获取标题 QString title=this->windowTitle(); qDebug()<<"title:"<<title; //设置背景颜色 this->setBackgroundRole(QPalette::Dark); this->setAutoFillBackground(true); this->move(50,50); //移动位置 //输出坐标点 qDebug()<<"x:"<<this->x()<<" y:"<<this->y(); qDebug()<<this->pos(); //输出宽度和高度 qDebug()<<"width:"<<width()<<" height:"<<height(); //3个按钮 btn1=new QPushButton(this); btn2=new QPushButton(); btn2->setParent(this); btn3=new QPushButton(this); //btn1 btn1->setText("恢复播报"); btn1->resize(75,30); btn1->move(0,height()/2); connect(btn1,&QPushButton::clicked,this,&HomeWork::open); //btn2 btn2->resize(75,30); btn2->setText("播报"); btn2->move(width()/2,height()/2); connect(btn2,&QPushButton::clicked,this,&HomeWork::showMes); //btn3 btn3->setText("退出"); btn3->resize(75,30); btn3->move(width()-75,height()/2); connect(btn3,&QPushButton::clicked,[&](){ this->close(); }); } HomeWork::~HomeWork() { }
#include "homework.h"
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
HomeWork w;
w.show();
return a.exec();
}
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。