Если вы хотите изменить шаг, вы должны перезаписать метод stepBy()
.
В следующей части я изменяю шаг на 100 мс, если текущий раздел равен MSecSection
, в других разделах поддерживается шаг по умолчанию:
#include <QtWidgets>
class TimeEdit: public QTimeEdit
{
public:
using QTimeEdit::QTimeEdit;
void stepBy(int steps) override{
if(currentSection() == MSecSection){
setTime(time().addMSecs(steps*100));
return;
}
QTimeEdit::stepBy(steps);
}
};
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
TimeEdit t;
t.setDisplayFormat ("m:ss.zzz");
t.setTime ({0,0,1,234});
t.show();
return a.exec();
}
Следующий пример, если вы хотите шаг 100 мс для любого раздела:
#include <QtWidgets>
class TimeEdit: public QTimeEdit
{
public:
using QTimeEdit::QTimeEdit;
void stepBy(int steps) override{
setTime(time().addMSecs(steps*100));
}
};
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
TimeEdit t;
t.setDisplayFormat ("m:ss.zzz");
t.setTime ({0,0,1,234});
t.show();
return a.exec();
}