gpt4 book ai didi

c++ - 在 Qt 中更改主窗口标题

转载 作者:行者123 更新时间:2023-11-27 22:55:46 25 4
gpt4 key购买 nike

我正在用 Qt C++ 制作一个文本编辑器,当我打开一个 txt 文件时,我想将标题更改为打开的文件的名称我知道 setWindowTitle("title go here") 。我只能显示路径。这是打开新文档的功能部分。

QString fileName = QFileDialog::getOpenFileName(
this,
"TextEditor - Open" ,
"C:\\",
" Text File(*.txt);;All files (*.*)");

QFile file1(fileName);
if((!fileName.isEmpty()))
{
currentFile = fileName;
file1.open(QIODevice::ReadOnly|QIODevice::Text);
QTextStream in(&file1);
QString str1 = in.readAll();
ui->plainTextEdit-> setPlainText(str1);
file1.close();
statusBar()-> showMessage(" File successfully loaded! ");
saveRecent(currentFile);
}

setWindowTitle(currentFile);

最佳答案

我格式化了您的代码并添加了显示正确文件名(包括扩展名但不包括路径)所需的代码。

QString fileName = QFileDialog::getOpenFileName(
this,
"TextEditor - Open" ,
"C:\\",
" Text File(*.txt);;All files (*.*)");

QFile file1(fileName);
if(!fileName.isEmpty())
{
currentFile = fileName;

file1.open(QIODevice::ReadOnly|QIODevice::Text);
QTextStream in(&file1);
QString str1 = in.readAll();
ui->plainTextEdit-> setPlainText(str1);
file1.close();

statusBar()-> showMessage(" File successfully loaded! ");
saveRecent(currentFile);
}
// Create the FileInfo
QFileInfo file1Info(file1);

// now get the fileName
QString file1Name(file1Info.fileName());

// Set the Title to the fileName
setWindowTitle(file1Name);

另请参阅 QFileInfo.fileName() 的文档.

关于c++ - 在 Qt 中更改主窗口标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33271961/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com