Size: a a a

2021 January 29

S

Sergey eSKon in Qt
А, ну и пара книг, о которых упоминалось:
источник

S

Sergey eSKon in Qt
источник

S

Sergey eSKon in Qt
источник

МК

Мгер Карапетян... in Qt
   connect(ui->btnGetGraphicData, &QPushButton::clicked, this, [this] {
       _toChartThePoint = !_toChartThePoint;
       if (_toChartThePoint) {
           connect(_devInclinometer, &DeviceParent::getResultData, this, &MainWindow::getResultDataToGraphic);
       } else {
           disconnect(_devInclinometer, &DeviceParent::getResultData, this, &MainWindow::getResultDataToGraphic);
       }
   });

Можно ли как нибудь узнать, соединен ли уже объект, что бы его отсоединить, или нужно как у меня через флаг?
источник

FS

Flower Surgeon in Qt
можно взять то, что вернёт коннект и кастануть в bool
источник

МК

Мгер Карапетян... in Qt
Flower Surgeon
можно взять то, что вернёт коннект и кастануть в bool
а разве двойной коннект не получится?
источник

FS

Flower Surgeon in Qt
Мгер Карапетян
а разве двойной коннект не получится?
Где?
источник

FS

Flower Surgeon in Qt
   connect(ui->btnGetGraphicData, &QPushButton::clicked, this, [this] {
       if (!_connection) {
           _connection = connect(_devInclinometer, &DeviceParent::getResultData, this, &MainWindow::getResultDataToGraphic);
       } else {
           disconnect(_connection);
       }
   });

Вот как-то так должно получиться.
источник

МК

Мгер Карапетян... in Qt
Flower Surgeon
   connect(ui->btnGetGraphicData, &QPushButton::clicked, this, [this] {
       if (!_connection) {
           _connection = connect(_devInclinometer, &DeviceParent::getResultData, this, &MainWindow::getResultDataToGraphic);
       } else {
           disconnect(_connection);
       }
   });

Вот как-то так должно получиться.
понял. Посмотрел что возвращают connect & disconnect и подумал можно проверять по дисконнекту:
if (!disconnect(_devInclinometer, &DeviceParent::getResultData, this, &MainWindow::getResultDataToGraphic)) {
   connect(_devInclinometer, &DeviceParent::getResultData, this, &MainWindow::getResultDataToGraphic);
}
источник

FS

Flower Surgeon in Qt
Мгер Карапетян
понял. Посмотрел что возвращают connect & disconnect и подумал можно проверять по дисконнекту:
if (!disconnect(_devInclinometer, &DeviceParent::getResultData, this, &MainWindow::getResultDataToGraphic)) {
   connect(_devInclinometer, &DeviceParent::getResultData, this, &MainWindow::getResultDataToGraphic);
}
Если соединение одно, то возможно и так сойдёт, да.
источник

МК

Мгер Карапетян... in Qt
Flower Surgeon
Если соединение одно, то возможно и так сойдёт, да.
спасибо) про ваш вариант только узнал)
источник

FS

Flower Surgeon in Qt
Пожалуйста. :)
источник

DE

Dan Eel in Qt
Добрый день, я пытаюсь сделать маленькую программку программу для планов/чертежей. И у меня вопрос: мне нужно нарисовать линию, с двумя точками на конце, чтобы за них ее таскать и редактировать (как прямая линия в пэинте).
Кругам я задал флаг ItemIsMovable. Так вот, как я могу узнать позицию, куда переместился круг, чтобы передать координаты в setLine() линии?
источник

IM

Ian Mcewan in Qt
Dan Eel
Добрый день, я пытаюсь сделать маленькую программку программу для планов/чертежей. И у меня вопрос: мне нужно нарисовать линию, с двумя точками на конце, чтобы за них ее таскать и редактировать (как прямая линия в пэинте).
Кругам я задал флаг ItemIsMovable. Так вот, как я могу узнать позицию, куда переместился круг, чтобы передать координаты в setLine() линии?
scenePos
источник

DE

Dan Eel in Qt
Ian Mcewan
scenePos
А на какой сигнал это повесить мне?
источник

IM

Ian Mcewan in Qt
Dan Eel
А на какой сигнал это повесить мне?
чтобы работали сигналы надо круги наследовать от QGraphicsObject
источник

DE

Dan Eel in Qt
Ian Mcewan
чтобы работали сигналы надо круги наследовать от QGraphicsObject
Получается у меня есть QGraphicsObject, его я меняю, а внутри у меня просто лежит круг?
источник

DE

Dan Eel in Qt
Или нужно множественное наследование? 0_0
источник

IM

Ian Mcewan in Qt
Dan Eel
Получается у меня есть QGraphicsObject, его я меняю, а внутри у меня просто лежит круг?
ну как я понял, надо отнаследоваться от QGraphicsObject, там переорюпределить paint чтобы рисовался, ещё mouseMoveEvent чтобы потом кидать свой сигнал с координатами scenePos
источник

IM

Ian Mcewan in Qt
в примерах наверняка есть подобное
источник