您可以使用Qt的信号和槽机制来实现这个功能。首先,将一个QToolButton和一个QLineEdit放置在您的窗口中。然后,连接QToolButton的clicked信号到一个槽函数。
在该槽函数中,使用QFileDialog::getOpenFileName()方法打开文件选择对话框,选择CSV文件并获取文件名。最后,将获取的文件名设置到QLineEdit中。
以下是一个简单的示例代码:
#include <QtWidgets>
class MyWidget : public QWidget {
Q_OBJECT
public:
explicit MyWidget(QWidget *parent = nullptr) : QWidget(parent) {
QHBoxLayout *layout = new QHBoxLayout(this);
toolButton = new QToolButton(this);
toolButton->setText("Select File");
layout->addWidget(toolButton);
lineEdit = new QLineEdit(this);
layout->addWidget(lineEdit);
connect(toolButton, &QToolButton::clicked, this, &MyWidget::selectFile);
}
private slots:
void selectFile() {
QString fileName = QFileDialog::getOpenFileName(this, "Select CSV File", "", "CSV Files (*.csv)");
if (!fileName.isEmpty()) {
lineEdit->setText(fileName);
}
}
private:
QToolButton *toolButton;
QLineEdit *lineEdit;
};
int main(int argc, char *argv[]) {
QApplication app(argc, argv);
MyWidget widget;
widget.show();
return app.exec();
}
#include "main.moc"
这个例子创建了一个带有工具按钮和文本输入框的窗口。点击工具按钮会打开文件选择对话框,并将选定的CSV文件名显示在文本输入框中。您可以根据需要进行进一步的定制和修改。
内容由零声教学AI助手提供,问题来源于学员提问