一段简单的代码 输入单价自动计算金额 输入金额自动计算单价。
为了避免干扰, 这里动用了我的一个全局变量 mySQL::SendString 作为临时判断
void FormAssets_input::on_txtAssetsPrice_textChanged(const QString &arg1) { //本模块用来输入单价自动计算出金额 bool flag=false; float QTY=0; float Price=0; float Amount=0; Price=arg1.toFloat(&flag); if (mySQL::SendString=="") { mySQL::SendString="计算单价"; if(flag==true){ flag=false; QTY=ui->txtAssetsQTY->text().toFloat(&flag); if(flag==true){ Amount=QTY*Price; QString str=""; str=str.sprintf ("%.2f",Amount); ui->txtAssetsAmount->setText(str); } } mySQL::SendString=""; } } void FormAssets_input::on_txtAssetsAmount_textChanged(const QString &arg1) { //本模块用来输入金额自动计算出单价 bool flag=false; float QTY=0; float Price=0; float Amount=0; Amount=arg1.toFloat(&flag); if (mySQL::SendString=="") { mySQL::SendString="计算金额"; if(flag==true){ flag=false; QTY=ui->txtAssetsQTY->text().toFloat(&flag); if(flag==true && QTY>0){ Price=Amount/QTY; QString str=""; str=str.sprintf ("%.2f",Price); ui->txtAssetsPrice->setText(str); } } mySQL::SendString=""; } }
发表评论