#include "mainwindow.h"
#include "ui_mainwindow.h"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
addItemFunction();
connect(ui->pBtn_add,&QPushButton::clicked,this,&MainWindow::addSingleItemSlot);
connect(ui->pBtn_remove,&QPushButton::clicked,this,&MainWindow::removeItemSlot);
connect(ui->pBtn_insert,&QPushButton::clicked,this,&MainWindow::insertItemSlot);
connect(ui->pBtn_clear,&QPushButton::clicked,this,&MainWindow::clearSlot);
connect(ui->pBtn_count,&QPushButton::clicked,this,&MainWindow::getCountSlot);
connect(ui->comboBox,SIGNAL(activated(int)),this,SLOT(currentItemSlot(int)));
}
MainWindow::~MainWindow()
{
delete ui;
}
/**
* @brief MainWindow::addItemFunction 添加条目
*/
void MainWindow::addItemFunction()
{
ui->comboBox->addItem("Item 1");
ui->comboBox->addItem(QStringLiteral("条目2"));
QStringList items;
items <<"Item 3"<< QStringLiteral("条目4");
ui->comboBox->addItems(items);
//ui->comboBox->addItem(QIcon("./icon/icom_item.png"),QStringLiteral("图标条目5"));
}
/**
* @brief MainWindow::addItemSlot手动添加条目
*/
void MainWindow::addSingleItemSlot()
{
QString m_text = ui->lineEdit_addItemtext->text();
ui->comboBox->addItem(m_text);
ui->textEdit_showInfo->setText(QStringLiteral("添加一个文本为")+m_text+QStringLiteral("条目"));
}
/**
* @brief MainWindow::removeItemSlot手动移除条目
*/
void MainWindow::removeItemSlot()
{
int index = ui->lineEdit_removeItemindex->text().toInt();
int itemCount = ui->comboBox->count();
if(index < -1 || index > (itemCount-1))
{
ui->textEdit_showInfo->setText(QStringLiteral("删除的条目索引超过目前索引值"));
return;
}
ui->comboBox->removeItem(index);
ui->textEdit_showInfo->setText(QString::fromLocal8Bit("删除索引为%1条目").arg(index));
return;
}
/**
* @brief MainWindow::insertItemSlot手动插入条目
*/
void MainWindow::insertItemSlot()
{
int index = ui->lineEdit_insertItemindex->text().toInt();
QString m_text = ui->lineEdit_insertItemtext->text();
int itemCount = ui->comboBox->count();
if(index < -1 || index > itemCount)
{
ui->textEdit_showInfo->setText(QStringLiteral("插入的条目索引超过目前索引值"));
return;
}
ui->comboBox->insertItem(index,m_text);
ui->textEdit_showInfo->setText(QString::fromLocal8Bit("在索引为%1").arg(index)
+QStringLiteral("后插入一个条目文本为")+m_text);
}
void MainWindow::clearSlot()
{
ui->comboBox->clear();
ui->textEdit_showInfo->setText(QString::fromLocal8Bit("清空所有条目"));
}
void MainWindow::getCountSlot()
{
int itemCount = ui->comboBox->count();
ui->textEdit_showInfo->setText(QString::fromLocal8Bit("当前条目数量为%1").arg(itemCount));
}
void MainWindow::currentItemSlot(int index)
{
QString m_text = ui->comboBox->itemText(index);
ui->textEdit_showInfo->setText(QString::fromLocal8Bit("当前条目文本为")+m_text);
}
QComboBox类详解
20 浏览量
2024-04-01
17:42:52
上传
评论 1
收藏 3KB RAR 举报
小猪猪妹妹
- 粉丝: 77
- 资源: 2
最新资源
- uniapp中tab切换,底部内容跟着移动,相反,底部移动,tab也跟着切换-组件
- 基于JS+TS实现跨平台3D相机控制器-附项目源码-优质项目分享.zip
- 跨相机-基于Rust实现的跨平台相机捕获-附项目源码-优质项目分享.zip
- odise 14离线安装包 大众斯柯达奥迪 5054 6153
- 网页设计期末作业-纯html加css+少量js-盗墓笔记旅游导航网站.rar
- 算法笔记模拟退火.rar
- MATLAB大数据仿真案例-蚁群算法(ACO)用于求解旅行商(TSP)问题.rar
- 基于yolov5的吸烟行为检测源码+模型.zip
- MySQL基础知识-个人笔记.rar
- Project8.ipynb
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈