QT 读取csv文件-QT根据显示器大小设置窗口大小-QT绑定信号与槽

QT 读取csv文件-QT根据显示器大小设置窗口大小-QT绑定信号与槽,第1张

QT 读取csv文件

废话不多说先上代码,

需要引入的头文件:

函数是自己写的一个小项目截取的一段,基本上思路就是这个.读取csv格式的和读取txt文件类似.

#include 
#include 
#include 

void InputData::ReadInputData(QString strPath)
{
    QVector _studentData;
	QFile file(strPath);    //打开文件
	if (!file.open(QIODevice::ReadOnly | QIODevice::Text))
	{
        //d警告窗
		QMessageBox::warning(NULL, "warning", "open file fail!", QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes);
	}
	// 文本流模式读取文件
	QTextStream in(&file);
	while (!in.atEnd())
	{
        //读取csv文件的一行
		QString strline = in.readLine();
		if (strline.isEmpty())
		{
			continue;
		}
        //文件 用逗号隔开并保存到文件中 QStringList这个其实就是list Qstring
		QStringList _lst = strline.split(",");
		_studentData.append(_lst);
	}
}
QT根据显示器大小设置窗口大小
	QRect screenRect = QGuiApplication::primaryScreen()->geometry();
	windowWidth = screenRect.width();
	windowHeight = screenRect.height();
	this->setGeometry(0, 0, windowWidth, windowHeight);

需要的头文件

#include 
this->setGeometry(0, 0, windowWidth, windowHeight);这个函数就是设置显示大小的,四个参数是设置对角线坐标的.
QT绑定信号与槽
	connect(this, &MainWindow::InputDataFunc, pInputData.get(), &InputData::ImplementInputData);
	connect(pInputData.get(), &InputData::UpdateCombox, this, &MainWindow::UpdataComBox);
	connect(ui->nameComBox, &QComboBox::currentIndexChanged, this, &MainWindow::on_comboBox_currentIndexChanged);

信号与槽绑定的格式:

connect(实例类的指针,&类名::信号函数,实例类的指针,&类名::信号函数);

一般信号与槽函数绑定最好是软件初始化的时候就绑定.

以一个绑定为例:

connect(this, &MainWindow::InputDataFunc, pInputData.get(), &InputData::ImplementInputData);

this是connect在MainWindow类中定义的所以使用this指针,pInputData.get()这个是因为我使用的是C++11的智能指针

std::shared_ptr pInputData = std::make_shared();

所以pInputData.get()去原始指针.

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/607825.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-14
下一篇 2022-04-14

发表评论

登录后才能评论

评论列表(0条)

保存