• 8617阅读
  • 10回复

[讨论]急!!!如何在QFileDialog 中设置默认的filename [复制链接]

上一主题 下一主题
离线isaacedvr
 
只看楼主 倒序阅读 楼主  发表于: 2012-05-07



问题是:在移植开发板时由于不能使用键盘,目前是要求按照系统的时间生成一个文件名,所以引出了这个问题:即
如何在filename中 设置默认的一个文件名:如 123.txt

要求:在打开对话框时就自动生成默认的文件名。

哎,移植真是坑爹啊,碰到同样的问题的Qt 朋友 帮助解决下,在此先谢谢了!

或者说:提出更好的解决方案 ,更加感谢!
离线isaacedvr
只看该作者 1楼 发表于: 2012-05-07
我感觉是在Qfiledialog 中有个函数能控制,但是找不到啊。。。。。
离线wxj120bw

只看该作者 2楼 发表于: 2012-05-07
回 1楼(isaacedvr) 的帖子
参考getSaveFileName的第三个参数
离线alexltr

只看该作者 3楼 发表于: 2012-05-07
楼上正解。

QString QFileDialog::getSaveFileName ( QWidget * parent = 0, const QString & caption = QString(), const QString & dir = QString(), const QString & filter = QString(), QString * selectedFilter = 0, Options options = 0 ) [static]

只要QString & dir 包含文件名就可以了。刚才试了,OK.
我不从事IT,只是喜欢Qt。
我不是程序员,只是与程序有缘。
我写程序,只是为了让工作变得简单有序!

                      ----  一个一直在入门的编程学习者
离线alexltr

只看该作者 4楼 发表于: 2012-05-07
不过楼主,我有一个问题不明白,显示这个对话框是为了取得储存文件名,但是你的文件名已按系统时间生成,为什么还要显示此对话框呢?选择目录?
我不从事IT,只是喜欢Qt。
我不是程序员,只是与程序有缘。
我写程序,只是为了让工作变得简单有序!

                      ----  一个一直在入门的编程学习者
离线haotao0723
只看该作者 5楼 发表于: 2012-05-07
QString fileName = QFileDialog::getSaveFileName(this,tr("保存聊天记录"),tr("聊天记录"),tr("文本(*.txt);;All File(*.*)"));
        if(!fileName.isEmpty()){
            saveInFile(fileName);
        }
不知道这样可不可以
Simple。
离线haotao0723
只看该作者 6楼 发表于: 2012-05-07
QString fileName = QFileDialog::getSaveFileName(this,tr("保存聊天记录"),tr("聊天记录"),tr("文本(*.txt);;All File(*.*)"));
        if(!fileName.isEmpty()){
            saveInFile(fileName);
        }
不知道这样可不可以
Simple。
离线isaacedvr
只看该作者 7楼 发表于: 2012-05-08
回 4楼(alexltr) 的帖子
要求用户只能改变路径,不能改变保存的文件名,哎,因为移植到开发板上后没有键盘,才导致这个问题的
离线benbenmajia

只看该作者 8楼 发表于: 2012-05-08
其实做一个软键盘不错,不然其他所有的输入都修改成这样的?
安然.....
离线ppdayz

只看该作者 9楼 发表于: 2012-05-08
软键盘麻烦啊
离线isaacedvr
只看该作者 10楼 发表于: 2012-05-08
嗯,我当时也曾这样做,但软键盘最困难的是中文输入。最终我采取了自己重新写个 类似的save as 的 对话框,问题解决了,移植也成功了。总结:真是感受到了移植的痛苦,其实有些事情不做是不行的,做了才知道自己哪里不足。
快速回复
限100 字节
 
上一个 下一个