我们乐此不疲地追赶日月星辰,却从不追赶时间,所以我们永远年轻。
按钮类
1.QPushButton常用按钮;
2.QTool 工具按钮,用于显示图片和文字(将图片添加资源文件后,在icon中设置,注意选已经添加到资源中的文件,否则不显示土坯那),通过toolButtonStyle修改风格(是否图片与文字并存等),按钮突起autoRaise(鼠标防止后按钮突起);
3.radioButton 单选按钮,(当出现多组不同类的单选选按钮,需要每个类选择一个选项时,使用GroupBox将不同类的分开)设置默认选项(ui->默认按钮选项名->setChecked(ture));
4.checkbox 多选按钮,状态值 2选中,1半选,0未选中
mainwindow.cpp文件
ui界面
QListWidget控件(列表容器)
QListWidgetItem *Item 一行内容
mainwindow.cpp文件
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QDebug>
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
ui->rb2->setChecked(1);//将女设置为默认选项
connect(ui->rb1,&QRadioButton::clicked,[=]()
{
qDebug()<<"性别男";
});//连接单选按钮男(点击)与打印调试信息已婚
ui->rb4->setChecked(1);//将未婚设置为默认选项
connect(ui->rb3,&QRadioButton::clicked,[=]()
{
qDebug()<<"已婚";
});//连接单选按钮已婚(点击)与打印调试信息已婚
connect(ui->checkBox_5,&QCheckBox::stateChanged,[=](int state){
qDebug()<<state;
});//连接交通便利多选按钮状态改变信号与打印状态,因为槽函数需要接收按钮状态,所以在()定义一个int类型的变量
QListWidgetItem *item1 = new QListWidgetItem("云想衣裳花想容");//为ListWideget添加选项
QListWidgetItem *item2 = new QListWidgetItem("春风拂槛露华浓");
QListWidgetItem *item3 = new QListWidgetItem("若非群玉山头见");
QListWidgetItem *item4 = new QListWidgetItem("会向瑶台月下逢");
ui->listWidget->addItem(item1);//添加到listWidget容器中
ui->listWidget->addItem(item2);
ui->listWidget->addItem(item3);
ui->listWidget->addItem(item4);
//QStringList QList<QString>list容器中放置字符串
//QStringList list;//list<<"云想衣裳花想容"<<"春风拂槛露华浓";//多行显示
item1->setTextAlignment(Qt::AlignHCenter);//设置水平居中
item2->setTextAlignment(Qt::AlignHCenter);
item3->setTextAlignment(Qt::AlignHCenter);
item4->setTextAlignment(Qt::AlignHCenter);
}
MainWindow::~MainWindow()
{
delete ui;
}
ui界面
3.QTreeWidget 树控件
widget.cpp
#include "widget.h"
#include "ui_widget.h"
Widget::Widget(QWidget *parent)
: QWidget(parent)
, ui(new Ui::Widget)
{
ui->setupUi(this);
ui->treeWidget->setHeaderLabels(QStringList()<<"英雄"<<"应用介绍");//设置水平头,匿名对象QStringList()
QTreeWidgetItem *item1 = new QTreeWidgetItem(QStringList()<<"对抗");
QTreeWidgetItem *item2 = new QTreeWidgetItem(QStringList()<<"打野");
QTreeWidgetItem *item3 = new QTreeWidgetItem(QStringList()<<"法师");
ui->treeWidget->addTopLevelItem(item1);//加载顶层节点
ui->treeWidget->addTopLevelItem(item2);
ui->treeWidget->addTopLevelItem(item3);
QTreeWidgetItem *item11 = new QTreeWidgetItem(QStringList()<<"马超"<<"丢枪,收枪");
QTreeWidgetItem *item21 = new QTreeWidgetItem(QStringList()<<"赵云"<<"扎地板");
QTreeWidgetItem *item31 = new QTreeWidgetItem(QStringList()<<"王昭君"<<"冻住空气");
item1->addChild(item11);//追加子节点
item2->addChild(item21);
item3->addChild(item31);
}
Widget::~Widget()
{
delete ui;
}
ui界面
QTableWidget
widget.cpp
#include "widget.h"
#include "ui_widget.h"
Widget::Widget(QWidget *parent)
: QWidget(parent)
, ui(new Ui::Widget)
{
ui->setupUi(this);
ui->tableWidget->setColumnCount(3);//设置列数
ui->tableWidget->setHorizontalHeaderLabels(QStringList()<<"姓名"<<"性别"<<"年龄");//设置水平表头
ui->tableWidget->setRowCount(5);//设置行数
QStringList namelist ;
QStringList sexlist;
namelist<<"王一一"<<"李二二"<<"张三三"<<"赵四四"<<"孙六六";
sexlist<<"女"<<"男"<<"男"<<"男"<<"女";
for(int i=0;i<5;i++)
{
int col=0;
ui->tableWidget->setItem(i,col++,new QTableWidgetItem(namelist[i]));//namelist[i]访问越界直接挂掉
ui->tableWidget->setItem(i,col++,new QTableWidgetItem(sexlist.at(i)));//sexlist.at(i)访问越界报错
ui->tableWidget->setItem(i,col++,new QTableWidgetItem(QString::number(i+18)));
}//设置正文
}
Widget::~Widget()
{
delete ui;
}
ui界面
其他控件
在ui编辑中加入了stackedWidget栈控件、在ststackedWidget三个页中分别加入scrollArea按钮、ToolBox、TabWidget。
在ui编辑中加入comboBox下拉框,加入按钮btn。
在ui编辑中加入两个QLable,分别命名为IM、L_movie。
#include "widget.h"
#include "ui_widget.h"
#include <QMovie>
Widget::Widget(QWidget *parent)
: QWidget(parent)
, ui(new Ui::Widget)
{
ui->setupUi(this);
//栈控件的使用
connect(ui->btn_Scroll,&QPushButton::clicked,[=](){
ui->stackedWidget->setCurrentIndex(0);//将按键btn_Scroll的点击信号与scrollArea按钮所在的stackedWidget页面相连
});
connect(ui->btn_tool,&QPushButton::clicked,[=](){
ui->stackedWidget->setCurrentIndex(2);//将按键btn_tool的点击信号与ToolBox按钮所在的stackedWidget页面相连
});
connect(ui->btn_Tab,&QPushButton::clicked,[=](){
ui->stackedWidget->setCurrentIndex(1);//将按键btn_Tab的点击信号与TabWidget按钮所在的stackedWidget页面相连
});
//下拉框
ui->comboBox->addItem("奥陶纪");
ui->comboBox->addItem("三叠纪");
ui->comboBox->addItem("白垩纪");
connect(ui->btn,&QPushButton::clicked,[=](){
ui->comboBox->setCurrentIndex(2);//也可用"白垩纪"
});//点击btn按钮,选中“白垩纪”
//利用QLable显示图片
ui->IM->setPixmap(QPixmap(":/1.jpg"));//标签QLabel IM显示图片1.jpg
//利用QLabel播放动图
QMovie *movie =new QMovie(":/2.gif");
ui->L_movie->setMovie(movie);//L_movie是标签名
movie->start();//播放动态2.gif
}
Widget::~Widget()
{
delete ui;
}