利用QT界面设计一个提取编辑框中数字和字母

利用QT界面设计一个提取编辑框中数字和字母利用QT界面设计一个提取编辑框中数字和字母,要求:(1)一个EditText可以输入数字和字母的混合字符;(2)两个按钮,一个是... 利用QT界面设计一个提取编辑框中数字和字母利用QT界面设计一个提取编辑框中数字和字母,要求:
(1)一个EditText可以输入数字和字母的混合字符;
(2)两个按钮,一个是“提取数字”、一个是“提取字母”;
(3)一个标签显示提取结果,提取数字的结果用蓝底、红字显示,提取字母的结果用红底、蓝字显示,同时设置字体放大,加粗显示;
加上关闭窗口的按钮控件。
展开
 我来答
沧海雄风2009
2018-01-10 · TA获得超过1.1万个赞
知道大有可为答主
回答量:8525
采纳率:79%
帮助的人:2802万
展开全部
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QDebug>

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    connect(ui->closeexe,SIGNAL(clicked()),this,SLOT(close()));
    connect(ui->getnum,SIGNAL(clicked()),this,SLOT(slot_getnum_clicked()));
    connect(ui->getchar,SIGNAL(clicked()),this,SLOT(slot_getchar_clicked()));
}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::slot_getnum_clicked()
{
    qDebug("click get num ");
    getContent(0);
}

void MainWindow::slot_getchar_clicked()
{
    qDebug("click get char ");
    getContent(1);
}

void MainWindow::getContent(int type)
{
    qDebug("in to sub function ");
    int a= 0,b=0;
    type?(a=0,b=255):(a=255,b=0);
    QString style;
    style.sprintf("color: rgb(%d, 0, %d);background-color: rgb(%d, 0, %d);font: 16pt \"宋体\";",
                                    a,b,b,a);
    ui->label->setStyleSheet(style);
    QString str = ui->textEdit->toPlainText();
    QString tmp;
    tmp.clear();
    for (int i=0;i<str.length();i++)
    {
        if ( type?(str.at(i) <'0' || str.at(i)>'9'):(str.at(i) >='0' && str.at(i)<='9') )
        {
            tmp.append(str.at(i));
            qDebug()<<tmp;
        }
    }
    ui->label->setText(tmp);
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式