[英]Qt connecting a slider to a doublespinbox
這是我用來將滑塊的int轉換為double的代碼。
void simMotionControl::on_horizontalSlider_speed_valueChanged(int value)
{
value = double (value/100); //i set the range of the slider from 0 to 10000
ui->doubleSpinBox_speed->setValue(value);
}
當我將滑塊連接到雙旋轉盒時,它僅更改每個整數的數字,我如何才能讓滑塊將雙旋轉盒更改為兩位小數的精度? 另外,我也想將旋轉框重新連接到我的滑塊,因此,如果我更改旋轉框中的值,則滑塊也會改變。 謝謝!!
您將兩個整數相除,這總是會得到一個整數值。 您應該將value
除以100.0
,即十進制:
void simMotionControl::on_horizontalSlider_speed_valueChanged(int value)
{
double val = value/100.0; //i set the range of the slider from 0 to 10000
ui->doubleSpinBox_speed->setValue(val);
}
也可以在除法之前將值轉換為兩倍:
double val = (double)value/100;
要在更改Spinbox時更新滑塊的值,可以使用:
void simMotionControl::on_doubleSpinBox_speed_valueChanged(double arg1)
{
ui->horizontalSlider_speed->setValue(arg1*100);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.