在Qt中更改主窗口标题
Change main window title in Qt
我正在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()
的文档
QFileInfo fileInfo(file1);
QString filename(fileInfo.fileName());
相关文章:
- 如何在cpp文件之间切换窗口?在Qt中
- Qt5 C++将新窗口与Qt设计器链接
- 无法在 GLFW 窗口标题中显示'ä'
- 为什么抓取窗口标题的代码会导致应用崩溃?
- 如何正确获取 Unicode 窗口标题
- 如何随机化程序的窗口标题?
- 如何在QT中获取背景应用程序窗口标题
- 如何在 Ubuntu Qt 中获取活动窗口标题
- 最佳地将窗口标题替换为新的 QString
- 构造函数字符串参数未设置窗口标题
- 获取C++中的窗口标题
- C++:为什么此窗口标题被截断
- 窗口标题GLFW中的FPS计数器
- 如何永久删除主窗口标题栏
- 使用WM_GETTEXT获取窗口标题
- 如何组织隐藏父窗口的父窗口和子窗口系统.QT
- 在窗口标题和消息框中显示错误的语言:win32应用程序,opengl
- 在GLFW窗口标题中显示FPS
- 在Qt中更改主窗口标题
- 如何在Qt应用程序中编辑默认的窗口标题和框架?