From 3825ce86470bed11e016fcd105c44d2e58c78032 Mon Sep 17 00:00:00 2001 From: "DIASPORA\\chris" Date: Thu, 1 Jan 2026 02:40:12 +0100 Subject: [PATCH] Added init after timer. single shot. --- bcmainwindow.cpp | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/bcmainwindow.cpp b/bcmainwindow.cpp index 14bc42c..bf83904 100644 --- a/bcmainwindow.cpp +++ b/bcmainwindow.cpp @@ -30,7 +30,7 @@ ***************************************************************************/ -//#include +#include #include "qassert.h" #include @@ -51,8 +51,11 @@ BCMainWindow::BCMainWindow(QWidget *parent) qRegisterMetaType>("BCValueList"); setupUi(this); - initMainWindow(); + // BESTE PRAXIS: QTimer::singleShot mit Lambda + QTimer::singleShot(0, this, [this]() { + initMainWindow(); + }); } @@ -111,6 +114,7 @@ void BCMainWindow::initMainWindow() } }; + // Wir wollen die Devices den Views zuordnen können _devicePanels[BCDevice::ID::Console] = _consolePanel; _devicePanels[BCDevice::ID::Battery] = _batteryPanel; @@ -145,13 +149,10 @@ void BCMainWindow::initMainWindow() // besser: model::emit dataChanged // also: emit dataChanged(index, index, {Qt::DisplayRole, Qt::EditRole, ValueRole}); - connect( _connectButton, &QToolButton::clicked, &_transmitter, &BCTransmitter::onToggleConnectionState ); + connect( _connectButton, &QToolButton::clicked, &_transmitter, &BCTransmitter::onToggleConnectionState ); connect( _syncButton, &QToolButton::clicked, this, &BCMainWindow::onSyncFromDevice ); + connect( &_transmitter, &BCTransmitter::valueUpdated, this, &BCMainWindow::onValueUpdated ); - connect( &_transmitter, &BCTransmitter::valueUpdated, this, &BCMainWindow::onValueUpdated ); - - // die Daten des eBikes laden - _dataManager.loadXmlBikeData(":/bikeinfo.xml"_L1); _transmitter.moveToThread(&_worker); @@ -160,6 +161,10 @@ void BCMainWindow::initMainWindow() _worker.start(); + bc::processEventsFor(2000); + + // die Daten des eBikes laden + _dataManager.loadXmlBikeData(":/bikeinfo.xml"_L1); _consoleAction->trigger(); }