中易网

qt中buttons()与button()的区别

答案:3  悬赏:80  
解决时间 2021-02-20 00:04
qt中buttons()与button()的区别
最佳答案
qt中对于buttons()与button()的官方介绍如下
  Qt::MouseButton QMouseEvent::button () const
  返回产生事件的按钮;
  Qt::MouseButtons QMouseEvent::buttons () const
  返回产生事件的按钮状态;
  前者是鼠标move事件总是返回 Qt::NoButton,后者函数返回当前按下的所有按钮。
全部回答
The QToolButton class provides a quick-access button to commands or options, usually used inside a QToolBar.
A
tool button is a special button that provides quick-access to specific
commands or options. As opposed to a normal command button, a tool
button usually doesn't show a text label, but shows an icon instead.
追问:Qt::MouseButton QMouseEvent::button()和Qt::MouseButtons QMouseEvent::buttons ()
有好几个类中有buttons()和button(),不知道你指的是不是鼠标事件
Qt::MouseButton QMouseEvent::button () const
返回产生事件的按钮,鼠标move事件总是返回 Qt::NoButton
Qt::MouseButtons QMouseEvent::buttons () const
返回产生事件的按钮状态。 按钮状态是Qt::LeftButton, Qt::RightButton, Qt::MidButton的或运算组合。对于鼠标move事件,函数返回当前按下的所有按钮。对于鼠标按下或双击事件,返回导致事件发生的按钮。对于鼠标释放事件,不包含导致事件发生的按钮。
追问:就是对事件不是很了解,在click事件中用的是button(),在move事件中用的是buttons(),不能通用吗
追答:假设你的鼠标左键已经按下。
如果移动鼠标,会发生的move事件,button返回Qt::NoButton,buttons返回LeftButton。
再按下了右键,会发生press事件,button返回RightButton,buttons返回LeftButton|RightButton
再移动鼠标,会发生move事件,button返回Qt::NoButton,buttons返回LeftButton|RightButton
再松开左键,会发生Release事件,button返回LeftButton,buttons返回RightButton
也就是说,button返回“那个按钮发生了此事件”,buttons返回"发生事件时哪些按钮还处于按下状态"
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
红话筒国际教育这个地址在什么地方,我要处理
在体重秤中,哪个牌子的好吗?
地下城堡2先锋月阶选择 狂战神和蛮荒之王哪个
上台演出的好处
淘宝卖家怎么解决跳失率高的问题啊
兰溪永球医院我想知道这个在什么地方
我的手机截图怎么现我手机型号
游泳完之后脸部疼痛灼热,还很红,有什么好办法
惠州哪里有腌果批发?像路边摊卖那些梨子,杨桃
小孩怎样变憨的?
王画匠圪旦我想知道这个在什么地方
招行周周发能随时赎回吗
STP与IGES文件 区别在哪 ???
天秤座的男的生气了要怎么弥补?怎么哄?
江联小区东门在什么地方啊,我要过去处理事情
推荐资讯
凯亿广告文化传媒公司地址有知道的么?有点事
求用microusb接口充电的蓝牙耳机
宝马是根据显示保养还是根据4s通知
安溪正味铁观音分几种香型
语文中状语的位置是在哪
估算1956约等于几
甘油三酯:5.88mmol
五华餐馆在什么地方啊,我要过去处理事情
我想把笔记本性能提高下 换什么件能行?
2016年内初班录取通知书什么时候发呀,这都8.
无为县城市建设投资有限公司在什么地方啊,我
有束缚游戏的百度云资源吧跪求
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?