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();
}