• 5856阅读
  • 8回复

请教如何实现部件之间带连线的拖拽?? [复制链接]

上一主题 下一主题
离线darrenmu
 

只看楼主 倒序阅读 楼主  发表于: 2009-05-15
比如我有两个基于QWidget的类,之间用线连起来,我拖拽一个部件,连线也跟着动。

请问QT4有现成的类做这些拖拽,连线的接口么?


谢谢!!!
离线leehomexu
只看该作者 1楼 发表于: 2009-05-15
不明白“用线连起来。。”等连线的意思,只解答拖拽的问题。

可以派生一个类,在构造函数中setAcceptDrop(true),然后重新实现拖和放相关的虚函数dragEnterEvent()、dragMoveEvent()和dropEvent(),还有鼠标动作mousePressEvent()和mouseMoveEvent()等。
离线darrenmu

只看该作者 2楼 发表于: 2009-05-15
多谢楼上。我是说,把两个部件连接起来。拖动一个部件,连线也会跟着动
离线tianykun
只看该作者 3楼 发表于: 2009-05-15
QGraphicItemLine就可以了
离线20044454
只看该作者 4楼 发表于: 2009-05-15
如果两个Item用QGraphicItemLine连接,我只想一个点中的item动 同时lineItem的endPoint也和点中的item动 该如何实现?
让我做一个Qt的大牛!!!!
离线tianykun
只看该作者 5楼 发表于: 2009-05-15
自己看demo的例子吧
那里有很好的例子



graphicsview/diagramscene/arrow.cpp
graphicsview/diagramscene/arrow.h
graphicsview/diagramscene/diagramitem.cpp
graphicsview/diagramscene/diagramitem.h
graphicsview/diagramscene/diagramscene.cpp
graphicsview/diagramscene/diagramscene.h
graphicsview/diagramscene/diagramtextitem.cpp
graphicsview/diagramscene/diagramtextitem.h
graphicsview/diagramscene/mainwindow.cpp
graphicsview/diagramscene/mainwindow.h
graphicsview/diagramscene/main.cpp
graphicsview/diagramscene/diagramscene.pro
graphicsview/diagramscene/diagramscene.qrc
离线darrenmu

只看该作者 6楼 发表于: 2009-05-16
如何查看楼上的这些例子?
离线tianykun
只看该作者 7楼 发表于: 2009-05-16
demos
离线olhho

只看该作者 8楼 发表于: 2015-08-06
看了demo是连接两个Item,但如何连接两个控件呢?比如两个tableWidget
快速回复
限100 字节
 
上一个 下一个