V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
DouiKo
V2EX  ›  问与答

这样的代码有办法改的简介一点吗?

  •  
  •   DouiKo · 2019-08-22 19:44:29 +08:00 · 446 次点击
    这是一个创建于 1680 天前的主题,其中的信息可能已经有所发展或是发生改变。
    是用 Qt 写的,这段是槽,接收信号传过来的值然后处理,感觉这段写起来很麻烦,dalao 们还有办法优化下吗?




    void Dialog::receive(QString type, QString cmd, QString value)
    {
    if(type=="0"){ui->wd->setText(value);wd=value.toFloat();}
    if(type=="1"){ui->sd->setText(value);sd=value.toFloat();}
    if(type=="2"){ui->gz->setText(value);gz=value.toFloat();}
    if(type=="3"){ui->yw->setText(value);yw=value.toFloat();}
    if(type=="4"){ui->rq->setText(value);rq=value.toFloat();}
    if(type=="5"){ui->pm->setText(value);pm=value.toFloat();}
    if(type=="6"){ui->co->setText(value);co=value.toFloat();}
    if(type=="7"){ui->qy->setText(value);qy=value.toFloat();}
    if(type=="8"){ui->rt->setText(value);rt=value.toFloat();}
    if(type=="9"){refs==1?ui->btnfs->setStyleSheet("border-image: url(:/i/wind_speed_pressed.png);"):ui->btnfs->setStyleSheet("border-image: url(:/i/wind_speed_unpressed.png);");}
    if(type=="10"){resd==1?ui->btnsd->setStyleSheet("border-image: url(:/i/lamp_speed_pressed.png);"):ui->btnsd->setStyleSheet("border-image: url(:/i/lamp_speed_unpressed.png);");}
    if(type=="11"){rebjd==1?ui->btnbjd->setStyleSheet("border-image: url(:/i/alarm_speed_pressed.png);"):ui->btnbjd->setStyleSheet("border-image: url(:/i/alarm_speed_unpressed.png);");}
    if(type=="12"){
    if(recl==1){ui->btno->setStyleSheet("border-image: url(:/i/curtain_open_pressed.png);");}
    if(recl==2){ui->btnc->setStyleSheet("border-image: url(:/i/curtain_close_pressed.png);");}
    if(recl==4){ui->btns->setStyleSheet("border-image: url(:/i/curtain_stop_pressed.png);");}
    }
    if(type=="13"){
    cmd.toInt()==0x05?ui->btndvd->setStyleSheet("border-image: url(:/i/channel_2_pressed.png);"):ui->btndvd->setStyleSheet("border-image: url(:/i/channel_2_unpressed.png);");
    cmd.toInt()==0x03?ui->btnds->setStyleSheet("border-image: url(:/i/channel_3_pressed.png);"):ui->btnds->setStyleSheet("border-image: url(:/i/channel_3_unpressed.png);");
    cmd.toInt()==0x01?ui->btnkt->setStyleSheet("border-image: url(:/i/channel_1_pressed.png);"):ui->btnkt->setStyleSheet("border-image: url(:/i/channel_1_unpressed.png);");
    }
    if(type=="15"){remj==1?ui->btnmj->setStyleSheet("border-image: url(:/i/door_control_pressed.png);"):ui->btnmj->setStyleSheet("border-image: url(:/i/door_control_unpressed.png);");}
    }
    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1000 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 19:53 · PVG 03:53 · LAX 12:53 · JFK 15:53
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.