【QT】控件的用法介绍

QLabel(很重要)

QPixmap在Qt中代表的就是一张图片

QPicture不是图片

如果图片不能完整显示,那就是没有布局

c 复制代码
   //添加静态图片
       如果构造的时候没有指定,可以在外面用load()指定图片路径
  ui->label->setPixmap(QPixmap(":/picture/86.jpg"));
//使得图片完整显示  
ui->label->setScaledContents(true);

添加动态图片

c 复制代码
 //添加动态图片
       QMovie *movie = new QMovie(":/picture/mario.gif");
       ui->label->setMovie(movie);
       movie->start();//启动播放

只能播放gif的图片

不能播放mp4

必须是指针,因为在看的时候movie,对象变量已经被析构了,就看不到了,而指针则需要手动去释放(这里是Qt的内存回收机制来释放)。

单选框

Group Box

一定要对放进去的控件布局,否则看不到

多选框

加入槽函数

c 复制代码
#include "widget.h"
#include "ui_widget.h"
#include <QMessageBox>
#include <QCheckBox>
Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{  
       ui->setupUi(this);
       this->setWindowTitle("网易");
       //this->setWindowIcon(QIcon(":/picture/86.jpg"));
       this->setFixedSize(500,500);
              //单选按钮
       connect(ui->radioButton,&QRadioButton::released,this,[=](){

           QMessageBox::information(this,"radiobutton","haha+++");
       });
//多选按钮
       connect(ui->checkBox,&QCheckBox::stateChanged,this,[=](int state){

           QMessageBox::information(this,"checkBox",QString::number(state));
       });                                             //打印state的值

}

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

listWidget

c 复制代码
  ui->listWidget->addItem("你好,世界");
   QListWidgetItem *Item = new  QListWidgetItem(QIcon(":/picture/86.jpg"),"king");
   ui->listWidget->addItem(Item);
   //ui->listWidget->addItem(new QListWidgetItem(QIcon(":/picture/86.jpg"),"king"));

Table Widget

c 复制代码
        //1.指定行数
        ui->tableWidget->setRowCount(100);
        //2.指定列数
        ui->tableWidget->setColumnCount(3);
        
    
        QStringList list;
        list<<"姓名"<<"性别"<<"年龄";
        ui->tableWidget->setHorizontalHeaderLabels(list);
        QTableWidgetItem *Item1 = new QTableWidgetItem(QIcon(":/picture/86.jpg"),"king");
        ui->tableWidget->setItem(0,0,Item1);

滚轮

可以显示更多内容

ToolBox

StackedWidget

c 复制代码
    connect(ui->pushButton_10,&QPushButton::pressed,this,[=](){

        ui->stackedWidget->setCurrentIndex(0);
    });
    connect(ui->pushButton_11,&QPushButton::pressed,this,[=](){

        ui->stackedWidget->setCurrentIndex(1);
    });
    connect(ui->pushButton_8,&QPushButton::pressed,this,[=](){

        ui->stackedWidget->setCurrentIndex(2);
    });

Combo Box

相关推荐
py小王子3 小时前
dy评论数据爬取实战:基于DrissionPage的自动化采集方案
大数据·开发语言·python·毕业设计
小陶的学习笔记3 小时前
python~基础
开发语言·python·学习
lsx2024063 小时前
JavaScript 条件语句
开发语言
玄同7653 小时前
Python 自动发送邮件实战:用 QQ/163 邮箱发送大模型生成的内容
开发语言·人工智能·python·深度学习·机器学习·邮件·邮箱
索荣荣3 小时前
Maven配置文件(pom.xml)终极指南
java·开发语言
钟智强3 小时前
React2Shell:CVE-2025-66478 Next.js 远程执行漏洞深度分析与代码剖析
开发语言·javascript·ecmascript
数研小生3 小时前
Python自然语言处理:NLTK与Gensim库
开发语言·python·自然语言处理
第七序章3 小时前
【Linux学习笔记】初识Linux —— 理解gcc编译器
linux·运维·服务器·开发语言·人工智能·笔记·学习
消失的旧时光-19433 小时前
C++ 拷贝构造、拷贝赋值、移动构造、移动赋值 —— 四大对象语义完全梳理
开发语言·c++
送秋三十五3 小时前
一次大文件处理性能优化实录————Java 优化过程
java·开发语言·性能优化