本篇分为两个部分,第一部分为是label控件,作为初学者的时候,很多函数不会用,想要显示什么,直接在label上输入。后来一点点会了,知道可以用函数控制,甚至直接用代码生成。
第二部分,就讲解一下lineEdit控件,可以将Edit控件看出一个类别,一个类别内有相似控制函数,只有会一个,其他你就能举一反三了。
让我们一起通过本片博文学习一下,label控件-lineEdit控件这两种控件吧。
环境还是需要注意一致的,否则最后的样例代码可能跑不起来。
环境这要注意点:
在Qt中,QLabel和QLineEdit是两个常用的控件,用于显示文本和接收用户输入。下面是对这两个控件的简单介绍:
QLabel 是一个显示文本或图像的控件。它通常用于显示静态文本标签、图像或作为其他控件的标题。QLabel 的主要特点包括:
QLineEdit 是一个单行文本输入控件,允许用户输入和编辑一行文本。它常用于表单输入、搜索框等场景。QLineEdit 的主要特点包括:
值得说明的是,Edit 结尾的相关输入栏都有相似的性质,所以在用法上,大家有相似地方,也就是开始说的,你会了一个,就能举一反三了。
以下位三种控件,显示内容的三种实现方式。
在xxx.ui而界面内,直接输入你想要显示内容,就可以了,如下图所示。
如下为效果。
如下是通过ui->label,这种代码控制方式调取。
#include "mainwindow.h" #include "ui_mainwindow.h" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) , ui(new Ui::MainWindow) { ui->setupUi(this); ui->label->setText("代码方式调用"); } MainWindow::~MainWindow() { delete ui; }
如下是在截图。
第三种方式,通过代码直接控制,不需要再ui里拉取,直接用纯代码编写。
QLabel *label1 = new QLabel("123!", this); label1->setAlignment(Qt::AlignCenter);
如下为截图
以下位三种控件,显示内容的三种实现方式。
如下图所示,这里主要是调取默认没有内容时,显示的内容。
如下为代码控制的方式,直接用ui->点出对应控件的名字,然后找到占位符文本的函数。
ui->lineEdit->setPlaceholderText("代码方式调用");
最后我们尝试以下,直接新建一个控件,尝试以下。
QLineEdit *lineEdit1 = new QLineEdit(this); lineEdit1->setPlaceholderText("456~");
可以看到上述主要是三种实现方式,即:UI文件vs代码控制控件vs完全代码控制。
实际上这三种没有绝对意义上的好坏之分,可以适用不同场景。
第一种:对于不需要改变显示文本内容的,可以使用这种,一次成型,不需要变来变去。
第二种:需要知道对应的控件名字,但是可以随着软件运作中,改变提示,当有不同显示需求,或者中途需要改变时,可以使用。
第三种,同第二种一样,但是实际使用时需要注意控件重叠等。
都是从新建工程开始,这块就不反复赘述了。
这里写的比较全了:【QT 整体窗口拖动大小,内部控件无法跟随改变的原因>>>>>解决:布局相关,布局设置】
如下图,两个控件,使用鼠标直接拖拽,然后再对应框里填写内容。
如下图,直接再代码里使用ui调取。
第使用代码,直接新建一个,不需要再ui里拉取。
代码如下:
#include "mainwindow.h" #include "ui_mainwindow.h" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) , ui(new Ui::MainWindow) { ui->setupUi(this); ui->label->setText("代码方式调用"); QLabel *label1 = new QLabel("123!", this); label1->setAlignment(Qt::AlignCenter); ui->lineEdit->setPlaceholderText("代码方式调用"); QLineEdit *lineEdit1 = new QLineEdit(this); lineEdit1->setPlaceholderText("456~"); } MainWindow::~MainWindow() { delete ui; }
最后效果如下,可以发现完全代码创建的被挡住了,因为没有设置位置,实际使用注意调整。
代码链接如下:
https://download.csdn.net/download/qq_22146161/89599223
暂无
对应不同情况,多种选择。