• 12347阅读
  • 15回复

请问qt中如何打开新窗口,而不显示原来的窗口 [复制链接]

上一主题 下一主题
离线xhf
 
只看楼主 倒序阅读 楼主  发表于: 2006-05-25
qt的一个form1中的button被push后,怎么把它connect连接到另外一个form2,显示form2而不显示form1.
[ 此贴被XChinux在2006-05-25 19:04重新编辑 ]
离线浪漫天使
只看该作者 1楼 发表于: 2006-05-26
qt的一个form1中的button被push后,怎么把它connect连接到另外一个form2,显示form2而不显示form1.

step1 :

connect(pushbutton,SIGNAL(clicked()),form2_classname,SLOT(form2_slot_name()));


notice:
the slot form2_slot_name() must be the the member slot of form2_classname;

step 2
添加一个form1_classname 的成员变量到form2_classname里面,如 form1_classname *f1;

step 3
void form2_classname::form2_slot_name()
{
    if(f1->isShown())
      f1->hide();

    show();
}

不知道我说明白了没有?
离线xhf
只看该作者 2楼 发表于: 2006-05-26
我试试 但愿能行 呵呵 多谢多谢
离线xhf
只看该作者 3楼 发表于: 2006-05-26
Form1::Form1( QWidget *parent, const char *name )
  : QDialog( parent, name )
{
...................
connect(pushbutton,SIGNAL(clicked()),Form2,SLOT(form2_slot_name()));
}
//--------------------------------------------------------

#include "form1.h"

Form2::Form2( QWidget *parent, const char *name )
  : QDialog( parent, name )
{
  f1 = new Form1( this ) ;
}
void Form2::form2_slot_name()
{
  if(f1->isShown())
    f1->hide();

  show();
}


你的意思是这样吗? 编译不过去呀 ,说找不到 f1.还有其他的问题.
离线浪漫天使
只看该作者 4楼 发表于: 2006-05-26
要在类Form2里面添加f1的声明啊!!
class Form2
{

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

public :

    Form1 *f1;

..............
}
我很有耐心的!!我要以德服人(雷老虎语……)
离线xhf
只看该作者 5楼 发表于: 2006-05-29
我在类FORM2的 .h 文件里加了声明.

呵呵
离线xhf
只看该作者 6楼 发表于: 2006-05-29
上层大虾,我还有一个问题,20多日不得其解,苦于无法解答.多谢赐教!!!
              关于文件读写操作
QT:::::在form1中,输入用户名和密码,然后点击button(登陆),进入form2. 在form2中有四个lineEdit(分别输入一行不同的信息),以及一个textEdit(可输入多行信息). 这些信息都保存在同一个文件里( readme.txt ).同一个用户名和密码每进入一次form2,可保存相关输入的信息在readme.txt中,不同的用户名和密码进入也一样.   form2中还有两个pushbutton ,一个用于保存该用户的信息,一个用于显示信息.   呵呵 我这样说意思应该明白吧.

我会每天多次关注你的回信,直到解决这个问题.
离线浪漫天使
只看该作者 7楼 发表于: 2006-05-29
引用第6楼xhf2006-05-29 10:38发表的“”:
上层大虾,我还有一个问题,20多日不得其解,苦于无法解答.多谢赐教!!!
              关于文件读写操作
QT:::::在form1中,输入用户名和密码,然后点击button(登陆),进入form2. 在form2中有四个lineEdit(分别输入一行不同的信息),以及一个textEdit(可输入多行信息). 这些信息都保存在同一个文件里( readme.txt ).同一个用户名和密码每进入一次form2,可保存相关输入的信息在readme.txt中,不同的用户名和密码进入也一样.   form2中还有两个pushbutton ,一个用于保存该用户的信息,一个用于显示信息.   呵呵 我这样说意思应该明白吧.
我会每天多次关注你的回信,直到解决这个问题. [表情]


首先说一下你做了些什么工作,遇到到了什么问题?你又做了那些尝试?
其次,就上面的文字,你的问题是什么?
离线xhf
只看该作者 8楼 发表于: 2006-05-30
我想,四个lineEdit和一个textEdit可以和一个struct结构相对应,然后,象c语言中那样以记录的方式将struct保存在文件中fread( buffer,size,count,fp ),也以记录的方式读取.fwrite( buffer,size,count,fp); 可在QT中,f.readBlock()和f.writeBlock()不能读写记录吧.
第二个想法是,每个lineEdit和textEdit在文件中以固定长度读写,但是浪费很大空间不可取.

我想请教的问题如何实现下面的二个功能
第一个功能是,当有众多的用户登陆后,输入相关信息,然后都保存在readme.txt中
第二个功能是,按照form1中输入的用户和密码,从readme.txt读出相关的信息.比如说,用户:小李,密码:qt,4次登陆,输入4次相关信息,那么在readme.txt中能读出他的这四个信息.
当然,用同一个用户和密码可多次登陆,每次登陆在form2中输入不同的信息.保存后当做不同的记录进行理解.
离线gothicane

只看该作者 9楼 发表于: 2006-05-31
Form1 *f1;
f1 = new Form1( this ) ;


这段生成的f1就是原来的那个f1么?
离线浪漫天使
只看该作者 10楼 发表于: 2006-05-31
引用第9楼gothicane2006-05-31 21:03发表的“”:
Form1 *f1;
f1 = new Form1( this ) ;
这段生成的f1就是原来的那个f1么?

生成的f1??
原来的那个f1??
有点晕~_~
离线xhf
只看该作者 11楼 发表于: 2006-06-01
QUOTE:
引用第7楼xhf于2006-05-29 10:38发表的“”:

首先说一下你做了些什么工作,遇到到了什么问题?你又做了那些尝试?
其次,就上面的文字,你的问题是什么?


是不是我没把问题说清楚而没得到你的进一步回答??
简单说吧:在form1中输入用户名和密码后,点击button进入form2,form2中有四个lineEdit以及一个textEdit,可分别书入不同的信息.
我想请教的是:怎么将这四个lineEdit以及textEdit的内容保存在一个文件中,然后能从文件中读出来.

急 急 急 盼 回复
离线浪漫天使
只看该作者 12楼 发表于: 2006-06-20
如果楼主还来这个论坛的话,看看下面这个例子,不知道是否能有所帮助,
仅供参考,水平有限,错误在所难免,还请楼主多多指教
windows2000,vc6,qt4.1.0开源版
描述:xfl
附件: xfl.rar (39 K) 下载次数:105
离线xhf
只看该作者 13楼 发表于: 2006-06-20
上楼兄弟发的例子程序写的地道,思路清晰,方法简单而技巧性强,读后启发多多.多谢,多谢.
文件操作真是让我欢喜让我忧.
文件的读写问题解决了.可修改和删除还是不会.
比如说, QT 2.3.7 , 文件是以IO_WriteOnly |IO_Append方式保存
            文件是以IO_WriteOnly |IO_Append方式保存
在in.text文件中删除其中的任意一行或是多行(或是一次保存的信息),用什么方法解决.
将in.text中的内容读出来,并且在四个lineEdit 和textEdit 上显示出来,然后修改,把修改后的信息保存在文件中(覆盖掉原来的信息),又该怎么办?

上楼如有文件读写删除修改方面的书籍或是网站,请告诉我.
上面的删除和修改问题,还请不吝指教.
弄懂了文件读写删除修改复制等操作,才能进一步学习文件系统方面的知识.


 


离线浪漫天使
只看该作者 14楼 发表于: 2006-06-20
将in.text中的内容读出来,并且在四个lineEdit 和textEdit 上显示出来,然后修改,把修改后的信息保存在文件中(覆盖掉原来的信息),又该怎么办?

这个好像可以了吧,你试一下。

文件操作方面的我没有什么经验,说不出什么来。
你就拿一个文件,然后写测试函数,用什么lseek啊之类的c的文件操作函数,一个一个的玩,直到效果出来为止,也可以用qt提供的文件操作函数玩,祝你玩得高兴
离线kingbox

只看该作者 15楼 发表于: 2008-10-23
我的程序 dialog.rar (4 K) 下载次数:33 你好,这是我写得一个程序,就一个dialog里面就一个button,点击之后应该能弹出另一个dialog,但是始终有问题,请大侠帮忙看看
快速回复
限100 字节
 
上一个 下一个