QDropEvent Class Reference
[QtGui module]
该类提供一个事件,他被发出,当一个拖放动作是完成的。
#include <QDropEvent>
继承
QEvent
和
QMimeSource
公共函数:
QDropEvent
( const QPoint &
pos
, Qt::DropActions
actions
, const QMimeData *
data
, Qt::MouseButtons
buttons
, Qt::KeyboardModifiers
modifiers
, Type
type
= Drop )
|
void
|
acceptProposedAction
()
|
Qt::DropAction
|
dropAction
() const
|
Qt::KeyboardModifiers
|
keyboardModifiers
() const
|
const QMimeData *
|
mimeData
() const
|
Qt::MouseButtons
|
mouseButtons
() const
|
const QPoint &
|
pos
() const
|
Qt::DropActions
|
possibleActions
() const
|
Qt::DropAction
|
proposedAction
() const
|
void
|
setDropAction
( Qt::DropAction
action
)
|
QWidget *
|
source
() const
|
重用的公共函数:
virtual QByteArray
|
encodedData
( const char *
format
) const
|
virtual const char *
|
format
( int
n
= 0 ) const
|
virtual bool
|
provides
( const char *
mimeType
) const
|
详细描述:
当一个
widget
接受
drop events
,他将接受这个事件,如果他已经接受大多数近来的
QDragEnterEvent
或者
QDragMoveEvent
。
这个
drop event
包含一个建议的动作。可得的从
proposedAction
(),对于
widget
要么接受要么忽略。如果这个动作能被处理。你应该调用
acceptProposedAction()
函数。因为建议的动作能是一个
Qt::DropAction
值的结合。它可能是有用的要么选择这些值的一个作为一个缺省的动作或者让用户来悬着他们更喜欢的动作。
如果建议的放动作是不合适的,可能因为你的
widget
不支持这个动作。你能替换它用任何可能的
drop actions
通过调用
setDropAction
()用你更喜欢的动作。如果你设置一个值,他不在
possibleActions()
的返回值的按位或结合,缺省的复制动作将被使用。一旦一个替换动作已经被设定,调用
accept
()代替
acceptProposeAction()
来完成放的操作。
mimeData
()函数提供数据放到
widget
在一个
QMimeData
对象。这包含信息关于
MIME
类型的数据。
成员函数文件:
QDropEvent::QDropEvent ( const QPoint & pos, Qt::DropActions actions, const QMimeData * data,Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers, Type type = Drop )
构建一个
drop event
,一定
type
相关的来
drop
在
pos
定位的地方。
这些
actions
代表哪种类型的拖放操作能被执行,拖动的数据是存储作为
MIME
编码的数据。
鼠标按钮的状态和键盘,在
drop
的同时,是指定被
buttons
和
modifiers
void QDropEvent::acceptProposedAction ()
设置放操作作为建议的动作。
Qt::DropAction QDropEvent::dropAction () const
返回动作被执行的在目标中。这可能是不同于动作在
proposedAction
(),如果你已经调用
setDropAction()
来明确的选择一个放的操作,。
Qt::KeyboardModifiers QDropEvent::keyboardModifiers () const
返回被按下的修饰键。
const QMimeData * QDropEvent::mimeData () const
返回数据被放在
widget
,和他的相关的
MIME
类型的信息。
Qt::MouseButtons QDropEvent::mouseButtons () const
返回鼠标按钮被按下的。
const QPoint & QDropEvent::pos () const
返回
drop
发生的位置。
Qt::DropActions QDropEvent::possibleActions () const
返回一个可能的
drop
动作的或操作的集合,。
Qt::DropAction QDropEvent::proposedAction () const
返回建议的动作行为,。
void QDropEvent::setDropAction ( Qt::DropAction action )
设置动作在目标中。使用这个来过载
proposed action
用一个
possible actions
如果你设置一个
drop
动作,他不是一个可能的动作,拖放操作将缺省到一个复制操作。
一旦你已经提供一个替换的
drop
操作,调用
accept
()替代
acceptProposedAction()
。
QWidget * QDropEvent::source () const
如果资源是一个在应用的
widget
。这个函数返回资源。否则他返回
0.
操作的资源是第一个参数到
QDrag
对象,被用在
drag
例子的。
这是有用的如果你的
widget
需要特别的行为,当拖到它本身。