【Qt】控件7

ops/2024/11/28 17:43:10/

1.QTextEdit的简单使用

使用简单的QTextEdit,获取到的内容显示到标签上
在这里插入图片描述
使用textChanged信号
在槽函数中需要获取QTextEdit的内容,对应操作是:

 QString  curor=ui->textEdit->toPlainText();

然后显示到标签上,对应操作是:

 ui->label->setText(curor);

槽函数实现:

void Widget::on_textEdit_textChanged()
{QString  curor=ui->textEdit->toPlainText();ui->label->setText(curor);}

2.关于QTextEdit的一些信号

1.textchanged

QTextEdit输入的内容发生变化就会触发这个槽函数
当触发这个槽函数时,我们将内容打印出来

void Widget::on_textEdit_textChanged()
{qDebug()<<"textchanged:"<<ui->textEdit->toPlainText();}

在这里插入图片描述

2.selectionChanged()

当光标选中的区域发生变化时,就会触发这个槽函数

void Widget::on_textEdit_selectionChanged()
{QTextCursor cursor=ui->textEdit->textCursor();//获取QTextedit的一些属性信息结构体qDebug()<<"selectionChanged:"<<cursor.selectedText();//获取光标选中的内容
}

3.cursorPostionChanged()

当光标位置发生变化时,就会触发这个槽函数

void Widget::on_textEdit_cursorPositionChanged()
{QTextCursor cursor=ui->textEdit->textCursor();//获取QTextedit的一些属性信息结构体qDebug()<<"cursorpostionchnaged:"<<cursor.position();//刚开始的偏移量为0
}

4.redoAvailable()|undoAvailable()|copyAvailable()

按ctrl+y恢复时,会触发redoAvailable,对应参数为true
按ctrl+z撤销时,会触发undoAvailable,对应参数为true
“copyAvailable”信号用于指示文本编辑控件中是否有文本可供复制。当用户在控件中选择文本时,该信号会被触发,以通知开发者或用户界面中的其他组件复制操作现在可用

2.QComboBox

使用下拉框实现点餐小demo
在这里插入图片描述
通过代码设置内容

Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);ui->comboBox->addItem("双层脆鸡汉堡");ui->comboBox->addItem("鸡腿皇堡");ui->comboBox->addItem("蒜香黄油大虾果木鸡腿堡");ui->comboBox_2->addItem("雪碧");ui->comboBox_2->addItem("可乐");ui->comboBox_2->addItem("王老吉");ui->comboBox_3->addItem("王道鸡米花");ui->comboBox_3->addItem("洋葱圈");ui->comboBox_3->addItem("蔬菜沙拉");
}

在这里插入图片描述
也可以通过右击下拉框,编辑项目来添加

3.从文件中读取数据显示到下拉框

Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);std::ifstream file("D:/test/res.txt");//文件路径if(!file.is_open())//判断文件是否打开{qDebug()<<"文件无法打开";return ;}std::string line;while(std::getline(file,line))//按行读取{ui->comboBox->addItem(QString::fromStdString(line));//将每行读取的添加至下拉框}file.close();//关闭文件}

效果演示:

下拉框从文件导入

4.QSpinBox

QSpinBox简单使用
使用下拉框选择食物,使用微调框设置数量

Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);ui->comboBox->addItem("牛肉汉堡");ui->comboBox->addItem("鸡肉汉堡");ui->comboBox->addItem("大虾汉堡");ui->comboBox_2->addItem("薯条");ui->comboBox_2->addItem("鸡块");ui->comboBox_2->addItem("鸡翅");ui->comboBox_3->addItem("可乐");ui->comboBox_3->addItem("雪碧");ui->spinBox->setRange(1,100);//设置数量范围ui->spinBox_2->setRange(1,50);ui->spinBox_3->setRange(1,10);ui->spinBox->setValue(20);  //设置初始数量ui->spinBox_2->setValue(15);ui->spinBox_3->setValue(3);
}

按键打印信息:

void Widget::on_pushButton_clicked()
{qDebug()<<"当前下单的内容"<<ui->comboBox->currentText()<<":"<<ui->spinBox->text();qDebug()<<"当前下单的内容"<<ui->comboBox_2->currentText()<<":"<<ui->spinBox_2->text();qDebug()<<"当前下单的内容"<<ui->comboBox_3->currentText()<<":"<<ui->spinBox_3->text();
}

在这里插入图片描述


http://www.ppmy.cn/ops/137422.html

相关文章

vue3 reactive响应式实现源码

Vue 3 的 reactive 是基于 JavaScript 的 Proxy 实现的&#xff0c;因此它通过代理机制来拦截对象的操作&#xff0c;从而实现响应式数据的追踪。下面是 Vue 3 的 reactive 源码简化版。 Vue 3 reactive 源码简化版 首先&#xff0c;我们需要了解 reactive 是如何工作的&…

蓝桥杯每日真题 - 第23天

题目&#xff1a;&#xff08;直线&#xff09; 题目描述&#xff08;12届 C&C B组C题&#xff09; 解题思路&#xff1a; 题目理解: 在平面直角坐标系中&#xff0c;从给定的点集中确定唯一的直线。 两点确定一条直线&#xff0c;判断两条直线是否相同&#xff0c;可通过…

蓝牙循环搜索并连接. Android辅助功能以及锁的灵活运用

现在需要实现个工具, android设备要不断自动的去搜索附近蓝牙打印机,然后进行配对,连接打印数据. 根据测试发现有两个技术难点 第一个是一些设备链接打印机后,会弹出进行配对的对话框,有些设备还会让你输入配对密码进行配对,如果用人工去点击,就不是自动去搜索配对,并打印了…

Python爬虫:深入探索1688关键词接口获取之道

在数字化经济的浪潮中&#xff0c;数据的价值愈发凸显&#xff0c;尤其是在电商领域。对于电商平台而言&#xff0c;关键词不仅是搜索流量的入口&#xff0c;也是洞察市场趋势、优化营销策略的重要工具。1688作为中国领先的B2B电商平台&#xff0c;其关键词接口的获取对于商家来…

速盾:高防CDN是怎么提供DDoS保护的?

随着互联网攻击手段的日益多样化和复杂化&#xff0c;DDoS&#xff08;Distributed Denial of Service&#xff09;攻击成为了一个常见的威胁。高防CDN&#xff08;Content Delivery Network&#xff09;作为一种有效的安全解决方案&#xff0c;能够显著提升网站的性能和安全性…

Ajax局部刷新,异步请求

Ajax执行原理&#xff1a; 同步请求和异步请求&#xff1a; Ajax的语句&#xff1a; <script src"/js/jquery-1.12.4.min.js"></script><script>$(function () {$("button").click(function () {$.ajax({url:"/indexServlet"…

conda、pip同时安装包引起混乱问题剖析

一句话总结&#xff1a; 安装版本不一致时会有两个.dist-info文件夹&#xff08;举例&#xff1a;scapy-2.6.1.dist-info和scapy-2.4.3.dist-info&#xff09;&#xff0c;conda list和pip list依靠这两个文件夹进行包的识别&#xff08;疑似pip list识别老版本&#xff0c;co…

ADS9-V2EBZ 评估板

ADS9-V2EBZ 评估板 概览 优势和特点 Xilinx Kintex Ultrascale XCKU15P-2FFVE1517E FPGA。 1 个 FMC 连接器。 20 个 28 Gbps 收发器&#xff0c;由一 (1) 个 FMC 连接器提供支持 HMC DRAM 简单 USB 3.0 端口接口。 随附两张微型 SD 卡&#xff0c;“TRX”用于 ADRV9026 评估…