一.Qt学习:
文章目录
Ⅰ.控件
1.Tool Button
2.Radio Button
- 默认选中
ui->asrman->setChecked(true);
3.Check Button
- 输出状态码(默认两种:0或2,可以选择第三种:1—半选择状态)
connect(ui->checkBox_4,&QCheckBox::stateChanged,[=](int state){
qDebug()<< state;
});
4.List Widget
-
输入一行,可以居中
QListWidgetItem * item1 = new QListWidgetItem("欲穷千里目"); ui->listWidget->addItem(item1); item1->setTextAlignment(Qt::AlignHCenter);
-
输入n行
QStringList list; list<<"独在异乡为异客"<<"每逢佳节倍思亲"<<"遥知兄弟登高处"<<"遍插茱萸少一人"; ui->listWidget->addItems(list);
5.Tree Widget
ui->treeWidget->setHeaderLabels(QStringList()<<"英雄"<<"简介");
QTreeWidgetItem * liItem = new QTreeWidgetItem(QStringList()<<"力量");
QTreeWidgetItem * siItem = new QTreeWidgetItem(QStringList()<<"智力");
QTreeWidgetItem * diItem = new QTreeWidgetItem(QStringList()<<"速度");
ui->treeWidget->addTopLevelItem(liItem);
ui->treeWidget->addTopLevelItem(siItem);
ui->treeWidget->addTopLevelItem(diItem);
QStringList as;
as<<"ask积分卡上飞机喀什两节课"<<"风纪扣哈里斯较快拉升";
QTreeWidgetItem * io = new QTreeWidgetItem(as);
liItem->addChild(io);
6.Table Widget
ui->tableWidget->setColumnCount(3);
ui->tableWidget->setRowCount(5);
ui->tableWidget->setHorizontalHeaderLabels(QStringList()<<"姓名"<<"性别"<<"年龄");
QStringList nameList;
QList<QString> sexList;
nameList<<"亚瑟"<<"貂蝉"<<"赵云"<<"吕布"<<"花木兰";
sexList<<"男"<<"女"<<"男"<<"男"<<"女";
for(int i = 0; i < 5; i++)
{
int col = 0;
ui->tableWidget->setItem(i,col++,new QTableWidgetItem(nameList[i]));
ui->tableWidget->setItem(i,col++,new QTableWidgetItem(sexList[i]));
ui->tableWidget->setItem(i,col++,new QTableWidgetItem(QString::number(i+18)));
}
7.其他控件
1.Scroll Area
2.Tool Area
3.Tab Widget
4.Stacked Widget
- 按钮和页的连接
connect(ui->btn1,&QPushButton::clicked,[=](){
ui->stackedWidget->setCurrentIndex(0);
});
connect(ui->btn2 ,&QPushButton::clicked,[=](){
ui->stackedWidget->setCurrentIndex(1);
});
connect(ui->btn3,&QPushButton::clicked,[=](){
ui->stackedWidget->setCurrentIndex(2);c
});
5.Combo Box
-
按钮和显示列表项的连接
-
可以对应索引
ui->comboBox->addItem("速度"); ui->comboBox->addItem("数电"); ui->comboBox->addItem("法案"); connect(ui->pushButton_17,&QPushButton::clicked,[=](){ ui->comboBox->setCurrentIndex(0); // ui->comboBox->setCurrentText("速度"); });
-
可以对应内容
ui->comboBox->addItem("速度"); ui->comboBox->addItem("数电"); ui->comboBox->addItem("法案"); connect(ui->pushButton_17,&QPushButton::clicked,[=](){ // ui->comboBox->setCurrentIndex(0); ui->comboBox->setCurrentText("速度"); });
-
8.自定义控件封装
1.封装过程
1.创建控件的封装文件
2.编辑封装内容
3.提升
4.连接两个控件
void(QSpinBox:: * spSignals)(int) = &QSpinBox::valueChanged;
connect(ui->spinBox,spSignals,ui->horizontalSlider,&QSlider::setValue);
connect(ui->horizontalSlider,&QSlider::valueChanged,ui->spinBox,&QSpinBox::setValue);