как одновременно перемещать полосы прокрутки в qt

У меня есть два представления, перспективы которых xy и xz. Эти представления имеют свои собственные полосы прокрутки, и стороны x этих представлений равны. Когда я перемещаю полосу прокрутки x сторон, я хочу, чтобы x полос прокрутки перемещались одновременно.

Класс представлений — QGraphicsView, а полосы прокрутки этих представлений — это собственные полосы прокрутки. Как я могу это сделать? Любая помощь будет оценена.

Спасибо


person ibrahimyilmaz    schedule 11.11.2010    source источник


Ответы (2)


Если я правильно вас понимаю, вы можете просто сделать следующее (если вы используете QScrollBar в качестве полосы прокрутки)

connect(firstScrollbar, SIGNAL(valueChanged(int)), secondScrollbar, SLOT(setValue(int)));
connect(secondScrollbar, SIGNAL(valueChanged(int)), firstScrollbar, SLOT(setValue(int)));

Надеюсь, это ответит на ваш вопрос и сработает для вас.

person Live    schedule 11.11.2010

Я столкнулся с этим, пытаясь синхронизировать два PlainTextEdits. Для этого мне также пришлось реагировать на сигнал cursorPositionChanged, чтобы синхронизировать прокрутку при использовании клавиатуры (клавиши со стрелками, Page Up/Down) следующим образом:

firstScrollbar.connect(SIGNAL('cursorPositionChanged()')) do
  secondScrollbar.setValue(firstScrollBar.value)
end

Пример кода на Ruby через qtbindings

person Jason    schedule 23.06.2014