• 6224阅读
  • 10回复

界面跳转 [复制链接]

上一主题 下一主题
离线kym2005
 
只看楼主 倒序阅读 楼主  发表于: 2010-03-29
我做了个登录界面,在登录界面中打开tcp 访问服务器,根据服务器返回信息做判断是否登录成功,可是我应该如何将在登录界面时的tcp传给我下一个界面呢,
有人说在登录界面中发送一个信号,在下一个界面接收,我试过了好像不行。该如何做呢
离线kym2005
只看该作者 1楼 发表于: 2010-03-29
等了半天没人回复
离线xtfllbl

只看该作者 2楼 发表于: 2010-03-29
在信号中可以自带参数哦,这个参数么基本没限制,容器数组变量,你想传什么就传什么
怎么样,满意了么。
上海欢迎您
离线kym2005
只看该作者 3楼 发表于: 2010-03-29
不满意,因为我试过了那是不行的
离线xtfllbl

只看该作者 4楼 发表于: 2010-03-29
引用第3楼kym2005于2010-03-29 16:31发表的  :
不满意,因为我试过了那是不行的

..能把你怎么用的贴出来么,你什么都不贴出来,我们怎么帮你,也不知道你是怎么实现的,按理来说,信号完全可以满足你的需求了,你是另外创建线程了还是什么
上海欢迎您
离线浪漫天使
只看该作者 5楼 发表于: 2010-03-29
fsdakfj alfj
mozi ftpkde4.0.rar (286 K) 下载次数:20
离线xtfllbl

只看该作者 6楼 发表于: 2010-03-29
引用第5楼浪漫天使于2010-03-29 16:48发表的  :
fsdakfj alfj
[图片]

好心人放出opensource,召唤楼主速速下载。
上海欢迎您
离线kym2005
只看该作者 7楼 发表于: 2010-03-29
***********************logon.cpp********************/
....
if(...){
next.show();
this->hide();
emit sendTcp(&tcpClient);
}
....
/***********************next.cpp*********************/
{
........
//sendTcp 信号是从登录界面发送的。
connect(this,SIGNAL(sendTcp(QTcpSocket *)),this,SLOT(reciveTcp(QTcpSocket *)));
}
void Teste::reciveTcp(QTcpSocket *tcpClient){

qDebug()<<"tcpClient hostname is"<<tcpClient->peerAddress()<<"host is-->"<<tcpClient->peerPort();

client = tcpClient;

qDebug()<<"tcpClient hostname is"<<client->peerAddress()<<"host is-->"<<client->peerPort();
connect(client,SIGNAL(readyRead()),this,SLOT(readyread()));
connect(client, SIGNAL(error(QAbstractSocket::SocketError)),
this, SLOT(displayError(QAbstractSocket::SocketError)));
}
离线xtfllbl

只看该作者 8楼 发表于: 2010-03-30
  1. //sendTcp 信号是从登录界面发送的。
  2. connect(this,SIGNAL(sendTcp(QTcpSocket *)),this,SLOT(reciveTcp(QTcpSocket *)));


大哥你发信号的是this,接受信号的还是this....
按照你的代码,next才是接收的吧
上海欢迎您
离线kym2005
只看该作者 9楼 发表于: 2010-03-30
恩,是写错了,我不用那种方法了,就在生成对象时传参
离线kym2005
只看该作者 10楼 发表于: 2010-03-30
这样我就可以实现了
快速回复
限100 字节
 
上一个 下一个