Qt学习笔记4
来源:互联网 发布:知乎 大误 编辑:程序博客网 时间:2024/06/05 00:37
一。警告框:
bool MainWindow::okToContinue(){ if (isWindowModified() ) { int r = QMessageBox::warning(this, tr("Spreadsheet"), tr(" The document has been modified.\n Do you want to save your changes?"), QMessageBox::Yes|QMessageBox::No | QMesageBox::Cancel); if( r == QMesageBox::Yes) return save(); else if(r == QMessageBox::Cancel) return false; } return true;}
除了warning()之外,还有information(),question(),critical(),他们每一个都有自己特有的图标。
2.弹出用户框选择一个文件,不知道能不能选择文件夹
void MainWindow::open()
{
if(okToContinue() ){
QString fileName = QFileDialog::getOpenFileName(this(父窗口部件), tr()(标题), "."(从哪一级目录开始) , tr("Spreadsheet files (*.sp)") 文件过滤器);
if (!fileName.isEmpty) loadFile(fileName);
}}
bool MainWindow::loadFile(const QString &fileName)
{
if(! spreadsheet->readFile(fileName) ){ statusBar()->showMessage(tr("Loading canceled"), 2000);} return false;
setCurrentFile(fileName);
statusBar()->showMessage( tr("File loaded"), 2000);
return true;
}
page 46\47\48(已经使用过的文件列表)略过了。
文件另存为框:
bool MainWindow::saveAs()
{
QString fileName = QFileDialog::getSaveFileName( this, tr("Save Spreadsheet"), "." , tr("Spreadsheet files (*.sp)") );
if( fileName.isEmpty() ) return false;
return saveFile(fileName);
}
==========使用对话框==============
activateWindow()让窗口成为顶层窗口和激活状态。
show()是非模态对话框,但是之后又调用了setModal()才会变成模态对话框。
----spreadsheet特性操作:52page
QMessageBox::about( this, tr("<h2>Spreadsheet 1.1</h2>"), tr("<p>lalallalaalalalaxx.....</p>") );
=========================存储设置========================
QSettings把设置信息存储为键值对形式。
写入和保存应用的设置; writeSeetings() readSettings().比如窗口形状,最近打开的文件,以及选项的设置。
多文档 page 55
程序启动画面 page58
============第4章节===============
文件操作:
QFile,调用open打开这个文件,再创建QDataStream对象,由它操作这个QFile对象并且使用该对象输出数据。
QDataStream功能齐全,即可用于QFile中,也可以把它用于QBuffer,QProcess,QTcpSocket,QUdpSocket or QSslSocket中。
bool Spreadsheet::readFile(const QString &fileName){ QFile file(fileName); if(! file.open(QIODevice::ReadOnly) ){ } QDataStream in(&file); in.setVersion(QDataStream::QT_4_3); quint32 magic; in >> magic; if( magic != MagicNumber){ ......}}
..... to page 80. 电子表格操作特性
page81:创建自定意窗口部件。
- Qt学习笔记4
- Qt学习笔记 -- Qt简史
- Qt学习笔记,Qt国际化
- QT学习笔记_Hello QT!
- QT学习笔记4---登陆对话框
- Qt学习笔记4-Widget布局管理
- Qt学习笔记4---网络编程
- Qt 学习之路 2笔记4
- Qt学习笔记4-label显示时间
- Qt 4 学习笔记(一)
- Qt 4 学习笔记(二)
- Qt学习笔记一
- QT学习笔记
- QT学习笔记1
- Qt学习笔记【1】
- QT学习笔记【2】
- QT学习笔记-1
- QT学习笔记
- Cocos2d-x 2.0.4 如何制作一个基于Tile的游戏(2)
- 如何为应用创建短链接
- 动态规划---->0/1背包问题
- expdp和impdp备份和恢复oracle数据库
- 极客头条收获
- Qt学习笔记4
- 第四部分 个人理财风险防范8.当心银行汇款引发的诈骗
- tomcat java 内存
- ExtJS panel展开时加载数据或页面
- 表变量
- 代码注释及代码提交规范
- tomcat免安装和安装版区别以及分别的安装步骤
- How to create a Windows can run top of Metro UI under windows8c
- IT术语