• 10883阅读
  • 12回复

保存对话框问题(求助) [复制链接]

上一主题 下一主题
离线zhenzhenniun
 
只看楼主 正序阅读 楼主  发表于: 2009-10-16
我用 designer 画了一个对话框,编译成功,定义两个按钮cancel 和save ,cancel 点击退出没有问题,我想点击save 能把这个对话框保存到我的“/home"目录下,该怎么定义save 槽呢。比方说我想保存为.txt格式吧。

Visit::Visit( QWidget* parent, const char* name, bool modal, WFlags fl )
    : QDialog( parent, name, modal, fl )
{
    if ( !name )
    setName( "Visit" );

.......
......

    PushButton1 = new QPushButton( privateLayoutWidget_2, "PushButton1" );

  Layout4->addWidget( PushButton1 );

    PushButton2 = new QPushButton( privateLayoutWidget_2, "PushButton2" );
    Layout4->addWidget( PushButton2 );

connect( PushButton2, SIGNAL( clicked() ), this, SLOT( reject() ) );
    connect( PushButton1, SIGNAL( clicked() ), this, SLOT( save() ) );}
void  Visit::save( )
{          该怎么定义呢     ?、???    }


貌似该用QFileDialog类,还有就是我用的qt 2.2.0,该怎么用QFileDialog 呢?我弄了几天都没弄好,高人来帮忙啊





离线zhenzhenniun
只看该作者 12楼 发表于: 2009-10-19
引用第3楼dbzhang800于2009-10-16 14:11发表的  :
还是不清楚你具体描述的东西,大概知道你需要什么。
程序退出时,将需要保存的东西都写到文件(或注册表)中去,程序打开时,打开文件或者读注册表将你保存的东西读回来!
借助 QSettings 会方便些



QSetting 是啥?没有这个类啊?我版本2.2.0的,是不是太低了
离线dbzhang800

只看该作者 11楼 发表于: 2009-10-19
看我3楼的回复,去掉第一句
离线zhenzhenniun
只看该作者 10楼 发表于: 2009-10-19
引用第9楼jorneyr于2009-10-18 16:16发表的  :
哈哈, 你是要保存对话框中的数据, 而不是对话框本身吧?
自己实现一个方法, 把对话框的数据保存下来, 窗口打开时, 在构造函数中把这些数据再读进来, 重新设置到相应的widget中不就可以了吗?




怎么操作?我以为保存对话框就是把数据和对话框一块保存下来呢.......汗颜的说
离线jorneyr

只看该作者 9楼 发表于: 2009-10-18
哈哈, 你是要保存对话框中的数据, 而不是对话框本身吧?
自己实现一个方法, 把对话框的数据保存下来, 窗口打开时, 在构造函数中把这些数据再读进来, 重新设置到相应的widget中不就可以了吗?
离线zhenzhenniun
只看该作者 8楼 发表于: 2009-10-18
怎么老提示我得QFileDialog使用错误,提示信息是:incomplete type  ‘QFileDialog' used in  nested name specifier,怎么回事?
离线zhenzhenniun
只看该作者 7楼 发表于: 2009-10-16
引用第5楼machou于2009-10-16 16:49发表的  :
Visit::Visit( QWidget* parent, const char* name, bool modal, WFlags fl )
    : QDialog( parent, name, modal, fl )
建议你Visit继承QWidget,然后在里面 new QDialog 在加上你的那个槽应该就没问题了



继承QWidget 的话就可以保存了么?
离线machou

只看该作者 6楼 发表于: 2009-10-16
QFileDialog::getSaveFileName(this, tr("保存"),
                                          previousFileName,
                                          tr("XML Files (*.txt);;ALL Files (*.*)"));
离线machou

只看该作者 5楼 发表于: 2009-10-16
Visit::Visit( QWidget* parent, const char* name, bool modal, WFlags fl )
    : QDialog( parent, name, modal, fl )
建议你Visit继承QWidget,然后在里面 new QDialog 在加上你的那个槽应该就没问题了
离线zhenzhenniun
只看该作者 4楼 发表于: 2009-10-16
引用第3楼dbzhang800于2009-10-16 14:11发表的  :
还是不清楚你具体描述的东西,大概知道你需要什么。
程序退出时,将需要保存的东西都写到文件(或注册表)中去,程序打开时,打开文件或者读注册表将你保存的东西读回来!
借助 QSettings 会方便些



    就是附近里面的这种对话框,输入信息之后怎么把信息保存下来
离线dbzhang800

只看该作者 3楼 发表于: 2009-10-16
还是不清楚你具体描述的东西,大概知道你需要什么。

程序退出时,将需要保存的东西都写到文件(或注册表)中去,程序打开时,打开文件或者读注册表将你保存的东西读回来!

借助 QSettings 会方便些
离线zhenzhenniun
只看该作者 2楼 发表于: 2009-10-16
引用第1楼dbzhang800于2009-10-16 12:14发表的  :
把这个对话框保存到我的“/home"目录下
请详细一点解释你这句话要表达的含义



我想能把对话框的东西保存下来,下次能再打开,现在我得的程序每次打开都是空白的,输入信息之后也没发保存,我想这东西是不是和word似的,可以随便指定个位置把对话框作为一个文件保存下来?
我是新手,很汗颜的说
离线dbzhang800

只看该作者 1楼 发表于: 2009-10-16
把这个对话框保存到我的“/home"目录下

请详细一点解释你这句话要表达的含义
快速回复
限100 字节
 
上一个 下一个