C# 当计时器处于';她在跑步吗?

C# 当计时器处于';她在跑步吗?,c#,unity3d,C#,Unity3d,我想做的是,在计时器运行时更改滑块值时,实时更改其中一个计时器值,例如变量s(秒),每次更改s值时,保持计时器从当前的新秒值开始倒计时。或者是m(分钟)或h(小时) 如果在该行之后: next = EditorGUILayout.Slider(next, 1, 100); 我正在做: next = EditorGUILayout.Slider(next, 1, 100); 计时器永远不会开始工作。 我想做的是实时更改计时器倒计时值/s,并从当前的新值更改中继续倒计时。 不要停止计时器并重新启

我想做的是,在计时器运行时更改滑块值时,实时更改其中一个计时器值,例如变量s(秒),每次更改s值时,保持计时器从当前的新秒值开始倒计时。或者是m(分钟)或h(小时)

如果在该行之后:

next = EditorGUILayout.Slider(next, 1, 100);
我正在做:

next = EditorGUILayout.Slider(next, 1, 100);
计时器永远不会开始工作。 我想做的是实时更改计时器倒计时值/s,并从当前的新值更改中继续倒计时。
不要停止计时器并重新启动,而是从下一个更改的值开始继续运行。

仅当滑块更改时,才应设置这些变量

s = (int)next;

仅当滑块发生更改时,才应设置这些变量

s = (int)next;
您是否尝试过:timer.Stop();timer.Interval=YourNewValueAsInt timer.Start()?time.stop()有点误导我,因为它确实会暂停计时器。。。我会使用一个滑块值更改事件,然后在更改时停止计时器,调整间隔,然后再次启动;这就是你要找的吗?你试过了吗:timer.Stop();timer.Interval=YourNewValueAsInt timer.Start()?time.stop()有点误导我,因为它确实会暂停计时器。。。我会使用一个滑块值更改事件,然后在更改时停止计时器,调整间隔,然后再次启动;这就是你要找的吗?
EditorGUI.BeginChangeCheck();
next = EditorGUILayout.Slider(next, 1, 100);
if(EditorGUI.EndChangeCheck())
{
    //set h/m/s here
}