• 3707阅读
  • 4回复

[提问]SLOT传递参数 [复制链接]

上一主题 下一主题
离线silence.sx
 
只看楼主 倒序阅读 楼主  发表于: 2012-08-27
  1. QString test="ok";
  2.   animation = new QPropertyAnimation(xu,"geometry");
  3.     animation->setDuration(150);
  4.     animation->setStartValue(QRect(0,0,50,50));
  5.     animation->setEndValue(QRect(300,300,500,500));
  6.     animation->start();
  7.    connect(animation,SIGNAL(finished()),this,SLOT(xuFinishMessage([backcolor=#f7f7f7][color=#000000]test[/color][/backcolor] )));
代码大概是这个样子的、我想在动画完成后把那个test传递到他的槽函数里面去、但是这样做不行?
请问有什么办法吗?

离线jdwx

只看该作者 1楼 发表于: 2012-08-27
需要一个中介用的槽(没参数的和finished匹配),在里面调用xuFinishMessage并把test传过去。
发帖时要说明:操作系统、Qt版本、编译器,这样能更快的得到回复。
离线silence.sx
只看该作者 2楼 发表于: 2012-08-27
回 1楼(jdwx) 的帖子
不太理解???
如果用finished() 那么参数就不能传递了...
离线jdwx

只看该作者 3楼 发表于: 2012-08-27
回 2楼(silence.sx) 的帖子
没办法,信号和槽就是这么个用法。
参数必须一致,顺序要一致,就是信号的参数可以比槽多,多的被自动舍弃。
发帖时要说明:操作系统、Qt版本、编译器,这样能更快的得到回复。
离线silence.sx
只看该作者 4楼 发表于: 2012-08-28
谢谢啦!
快速回复
限100 字节
 
上一个 下一个