首页 > 其他分享 >Qt基础操作槽函数

Qt基础操作槽函数

时间:2024-09-20 19:54:58浏览次数:11  
标签:ok Qt 对话框 标准 QString cpp 操作 输入 函数

在 "dialog.cpp" 文件的构造函数中添加如下代码:

```cpp

inputBtn = new QPushButton;

inputBtn->setText(tr("标准输入对话框实例"));

添加布局管理:

mainLayout->addWidget(inputBtn, 3, 0);

最后添加事件关联:

// 创建控件的对象

// 布局设计

connect(inputBtn, SIGNAL(clicked()), this, SLOT(showinputDlg()));

// 事件关联

```

其中,槽函数showinputDlg的实现代码如下:

```cpp

void Dialog::showinputDlg()

{

    inputDlg = new InputDlg(this);

    inputDlg->show();

}

```

标准字符串输入对话框通过QInputDialog类的静态函数getText()完成,getText()函数形式如下:

```cpp

QString getText(

    QWidget* parent,

    const QString& title,

    const QString& label,

    QLineEdit::EchoMode mode = QLineEdit::Normal,

    const QString& text = QString(),

    bool* ok = nullptr,

    Qt::WindowFlags flags = Qt::WindowFlags()

);

```

其中,参数说明如下:

- parent:标准输入对话框的父窗口

- title:标准输入对话框的标题名

- label:标准输入对话框的标签提示

- mode:指定标准输入对话框中QLineEdit控件的输入模式

- text:标准字符串输入对话框弹出时QLineEdit控件中默认出现的文字

- ok:指示标准输入对话框的哪个按钮被触发,若为true,则表示用户单击了"OK"(确定)按钮;若为false,则表示用户单击了"Cancle"(取消)按钮。

- flags:指明标准输入对话框的窗体标识

接着上述的程序,完成"inputdlg.cpp"文件中的槽函数ChangeName的实现。具体代码如下:

```cpp

void InputDlg::ChangeName()

{

    bool ok;

    QString text = QInputDialog::getText(this, tr("标准字符串输入对话框"),

                                         tr("请输入姓名:"), QLineEdit::Normal, nameLabel2->text(), &ok);

    if (ok && !text.isEmpty())

        nameLabel2->setText(text);

在"inputdlg.cpp"文件的开始部分添加头文件:

#include <QInputDialog>

标准条目选择对话框是通过QInputDialog类的静态函数getItem()来完成的,getItem()函数形式如下:

```cpp

QString getItem(

    QWidget* parent,

    const QString& title,

    const QString& label,

    const QStringList& items,

    int current = 0,

    bool editable = true,

    bool* ok = nullptr,

    Qt::WindowFlags flags = Qt::WindowFlags()

);

其中,参数说明如下:

- parent:标准输入对话框的父窗口

- title:标准输入对话框的标题名

- label:标准输入对话框的标签提示

- items:指定标准输入对话框中QComboBox控件显示的可选条目为一个QStringList对象。

- current:标准条目选择对话框弹出时QComboBox控件中默认显示的条目序号。

- editable:指定QComboBox控件中显示的文字是否可编辑

- ok:指示标准输入对话框的哪个按钮被触发,若ok为true,则表示用户单击了"OK"(确定)按钮;若ok为false,则表示用户单击了"Cancle"(取消)按钮。

- flags:指明标准输入对话框的窗体标识

同上,接着上述的程序,完成"inputdlg.cpp"文件中的槽函数ChangeSex()的实现。具体代码如下:

```cpp

void InputDlg::ChangeSex()

{

    QStringList sexItems;

    sexItems << tr("男") << tr("女");

    bool ok;

    QString sexItem = QInputDialog::getItem(this, tr("标准条目选择对话框"),

                                             tr("请选择性别:"), sexItems, 0, false, &ok);

    if (ok && !sexItem.isEmpty())

        sexLabel2->setText(sexItem);

}

```

再次运行程序,单击"修改性别"按钮后出现对话框,可以在该对话框内选择性别,如图4.5所示。

标准整型输入对话框是通过QInputDialog类的静态函数getInt()来完成的,getInt()函数形式如下:

```cpp

int getInt(

    QWidget* parent,

    const QString& title,

    const QString& label,

    int value = 0,

    int minValue = -2147483647,

    int maxValue = 2147483647,

    int step = 1,

    bool* ok = nullptr,

    Qt::WindowFlags flags = Qt::WindowFlags()

);

```

其中,参数说明如下:

- parent:标准输入对话框的父窗口

- title:标准输入对话框的标题名

- label:标准输入对话框的标签提示

- value:标准整型输入对话框弹出时QSpinBox控件中默认显示的值

- minValue:标准整型输入对话框中QSpinBox控件允许输入的最小值

- maxValue:标准整型输入对话框中QSpinBox控件允许输入的最大值

- step:标准整型输入对话框中QSpinBox控件的步长

- ok:指示标准输入对话框的哪个按钮被触发,若ok为true,则表示用户单击了"OK"(确定)按钮;若ok为false,则表示用户单击了"Cancle"(取消)按钮。

- flags:指明标准输入对话框的窗体标识

接着上述的程序,完成"inputdlg.cpp"文件中的槽函数ChangeAge()的实现。具体代码如下:

void InputDlg::ChangeAge()

{

    bool ok;

    int age = QInputDialog::getInt(this, tr("标准整型输入对话框"),

                                   tr("请输入年龄:"), ageLabel2->text().toInt(), 0, 100, 1, &ok);

    if (ok)

        ageLabel2->setText(QString::number(age));

}

```

再次运行程序,单击"修改年龄"按钮后出现对话框,可以在该对话框内输入年龄,如图4.5所示。

标签:ok,Qt,对话框,标准,QString,cpp,操作,输入,函数
From: https://blog.csdn.net/lsh11111/article/details/142369648

相关文章

  • python函数三:拆包和交换变量值、引用、匿名函数
    文章目录1.拆包和交换变量值1.1拆包1.2交换变量值2.引用2.1了解引用2.1把引用当作参数传递3.匿名函数3.1lambda语法3.2lambda的应用3.3使用使用函数形式来求解某天是该年的第几天?1.拆包和交换变量值1.1拆包拆包:把组合形成的元组形式的数据,拆分出单个......
  • 操作系统相关
    操作系统1.操作系统主要功能进程管理功能:创建、调度、终止进程,管理进程的执行。目的:确保多个进程能够有效地共享处理器资源,并进行合理的调度和管理。内存管理功能:分配和管理系统内存,包括虚拟内存和物理内存。目的:提供程序执行所需的内存空间,并保护进程之间的内存隔......
  • python基本操作
    98+100001001400000100print(a&b)真真都取其他不取000000000print(a|b)都取假假不取0000110113print(a^b)都取真真假假不取0000110113print(~a)-10a=138+4+100001101b=64+200000110p......
  • python函数
    函数函数是组织好的,可重复使用,用来实现单一,或相关联功能的代码段def函数名()1无参数defhs1():print(1)hs1()#12有单个参数defhs1(a):print(a+1)hs1(2)#33有多个参数defhs1(a,b):print(a+b)hs1(2,3)#54默认参数defhs1(a,b=18):print(a+b)hs1(2)#20......
  • 【Python-GUI图形化界面-PyQt5模块(2)】——QApplication核心模块
     本文旨在带大家学习Python中的一种GUI图形化界面模块——PyQt5模块,将为大家详细了解PyQt5模块中函数的参数和使用:一、PyQt5简介PyQt是Qt框架的Python语言实现,由RiverbankComputing开发,是最强大的GUI库之一。官方网站:www.riverbankcomputing.com、 本文比较倾向于教会......
  • 【涨停破底收回战法】又称假跌破回笼战法,技术要点和操作策略
    如上图,一个涨停板之后,行情没能继续强势上攻,新高不高,随即开始出现调整,7日内止跌转涨信号出现,后市行情开启一波新的上涨行情。战法要求有一个涨停板出现,不能有多个涨停涨停板后随即调整逐步下行调整7日内出现跌破涨停板收十字星止跌线形态止跌K线后次日价格收回涨停板......
  • Excel--DATEDIF函数的用法及参数含义
    DATEDIF函数的用法为:DATEDIF(start_date,end_date,unit),start_date表示的是起始时间,end_date表示的是结束时间。unit表示的是返回的时间代码,是天、月、年等。如下:Datedif函数的参数含义unit参数返回值的意义"y"两个时间段之间的整年数"m"两个时间段之间的整月数"d"两个时......
  • Qt拖拽事件详解,拖放数据传递
    1.QT拖拽事件分为两类。(1)电脑上的文件拖入程序,在程序上放下文件Drop;例如将视频拖入程序进行播放,将图片突入程序进行展示;(2)程序中界面内部拖放,例如将组织树中的监控点拖入播放窗口进行播放;将一个表格中的人员拖入另外一个表格等;将QTreeview中的item拖动位置,移到不同的组织下;或者将......
  • Android 他人开源库自定义imageview实现图片圆角,操作简单
    Android他人开源库自定义imageview实现图片圆角,操作简单效果图:1.导入依赖dependencies{implementation'io.github.FlyJingFish:ShapeImageView:1.5.6'}2.ShapeImageView示例<com.flyjingfish.shapeimageviewlib.ShapeImageViewandroid:id="@+id/i......
  • 轻松部署!龙蜥操作系统安装Zabbix7.0详细教程​
    龙蜥操作系统(AnolisOS)作为龙蜥社区发行的开源Linux发行版,以其稳定、高性能、安全、可靠和100%兼容CentOS8软件生态的特点,成为众多企业和开发者的首选操作系统。它不仅支持多计算架构,如X86、ARM、RISC-V等,还针对云端场景进行了优化,为云上典型场景带来显著的性能提升和故障率降低。......