找回密码
 立即注册
收起左侧

Lineedit回车自动判断输入内容问题

5
回复
10272
查看
[复制链接]
累计签到:3 天
连续签到:1 天
来源: 2015-10-28 10:58:26 显示全部楼层 |阅读模式
2Qter豆
用Qt做一个对话框,里面有lineedit和button,想实现的功能是lineedit里输入内容后回车,自动判断输入内容是否合法,合法的话,button变为可以点击,再点击button,执行其他操作。现在的问题是,验证正确时,button变成可以点击,但是会自动执行点击后的函数。请问这是什么原因,如何解决?谢谢!

初始化时,ui->Generate_Button->setEnabled(false);  
lineedit用
void Dialog:n_LineEdit_editingFinished()
{
   .............//ret为验证结果
     if(!ret)
    {        ui->VerifiedResultLabel->setText("验证码错误");        ui->Generate_Button->setEnabled(false);        return;    }    else        {            ui->VerifiedResultLabel->setText("验证码正确");            ui->Generate_Button->setEnabled(true);
    }
}

最佳答案

查看完整内容

猜测是你回车就执行了点击button的槽函数,就直接执行了,用过滤器试试?
回复

使用道具 举报

累计签到:256 天
连续签到:1 天
2015-10-28 10:58:27 显示全部楼层
猜测是你回车就执行了点击button的槽函数,就直接执行了,用过滤器试试?
参与人数 1人气 +2 收起 理由
bigbigmouse + 2 很实用!

查看全部评分总评分 : 人气 +2

回复

使用道具 举报

累计签到:3 天
连续签到:1 天
2015-11-9 12:23:59 显示全部楼层
顶一下,有没有哪位大侠能帮忙回答回答。//bow
回复

使用道具 举报

累计签到:461 天
连续签到:1 天
2015-11-30 09:22:10 显示全部楼层
有可能是当你输入完成时按了回车键,而focus又在button,这样也就一起执行button的槽

点评

按道理当他输入的时候focus就应该在lineeidt里面吧  详情 回复 发表于 2015-11-30 11:16
参与人数 1人气 +2 收起 理由
bigbigmouse + 2 很实用!

查看全部评分总评分 : 人气 +2

回复

使用道具 举报

累计签到:3 天
连续签到:1 天
2015-11-30 10:00:47 显示全部楼层
谢谢以上两位的回答。
回复

使用道具 举报

累计签到:256 天
连续签到:1 天
2015-11-30 11:16:46 显示全部楼层
爱德华小遥 发表于 2015-11-30 09:22
有可能是当你输入完成时按了回车键,而focus又在button,这样也就一起执行button的槽 ...

按道理当他输入的时候focus就应该在lineeidt里面吧
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了