根据ComboBox中的单位自动转换

时间:2019-01-03 01:40:53

标签: python time

我正在使用python创建一个时间转换应用程序。所以我要在项目中实现的是,当用户更改组合框时,该值会根据单位自动更改/转换。例如,我的基本值为1秒,如果我选择millisec,则将转换该值。如果我再次在组合框下选择一个单位,则将转换基数“ 1”,而不是转换为毫秒数。

这是否有很好的逻辑?尝试过类似的操作,例如当用户单击组合框时,将存储最后一个值。但是再次,我希望转换基值。

1 个答案:

答案 0 :(得分:0)

我假设通过某种方式(例如输入框等)输入了“值”。我还假设您试图在同一输入框(或使用的任何组件)中显示结果。

如果是这种情况,则可以在更改值时将其挂钩,并将更改后的值存储在某个变量中-基值。当以编程方式用转换后的值更新输入框时,请确保已更新组件,但挂钩函数是未调用。如果您使用的任何UI框架都不支持此功能,则可以使用布尔标志:

  1. 声明一个标志,该标志应存储是否已输入基本值(最初为false)
  2. 声明一个变量以存储基本值
  3. 更改组件的时间。
  4. 更改组件时,如果标志为false,则将组件的值存储在您声明的基值变量中,并将标志设置为true。否则,如果该标志为真,则不要执行任何操作。
  5. 进行计算等并以编程方式更新组件
  6. 以编程方式更新组件后,请将标志重置为false。