亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

基于PyQT實(shí)現(xiàn)區(qū)分左鍵雙擊和單擊

 更新時(shí)間:2020年05月19日 11:55:21   作者:Surpassme  
這篇文章主要介紹了基于PyQT實(shí)現(xiàn)區(qū)分左鍵雙擊和單擊,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

 在PyQt中沒有直接提供左鍵雙擊的判斷方法,需要自己實(shí)現(xiàn),其思路主要如下所示:

1、起動一個(gè)定時(shí)器,判斷在指定的時(shí)間之內(nèi),點(diǎn)擊次數(shù)超過2次,則視為雙擊(其主要思路判斷兩次點(diǎn)擊的時(shí)間差在預(yù)測的條件以內(nèi))

2、 起動一個(gè)定時(shí)器,判斷在指定的時(shí)間之內(nèi),點(diǎn)擊次數(shù)超過2次,另外再獲取鼠標(biāo)點(diǎn)擊的坐標(biāo),如果前后兩次點(diǎn)擊的坐標(biāo)位置,屬于同一個(gè)位置,滿足這兩個(gè)條件則判斷為雙擊(其主要思路判斷兩次點(diǎn)擊的時(shí)間差在預(yù)測的條件以內(nèi),且點(diǎn)擊的坐標(biāo)在預(yù)設(shè)的坐標(biāo)之內(nèi),允許存在一定的偏差)

from PyQt5.QtCore import QTimer
from PyQt5 import QtCore, QtGui, QtWidgets

class myWidgets(QtWidgets.QTableWidget): 

  def __init__(self, parent=None):
    super(myWidgets, self).__init__(parent)
    self.isDoubleClick = False
    self.mouse = ""
  def mousePressEvent(self, e): 
    # 左鍵按下
    if e.buttons() == QtCore.Qt.LeftButton:
      QTimer.singleShot(0, lambda: self.judgeClick(e))
    # 右鍵按下
    elif e.buttons() == QtCore.Qt.RightButton:
      self.mouse = "右"
    # 中鍵按下
    elif e.buttons() == QtCore.Qt.MidButton:
      self.mouse = '中'
    # 左右鍵同時(shí)按下
    elif e.buttons() == QtCore.Qt.LeftButton | QtCore.Qt.RightButton:
      self.mouse = '左右'
    # 左中鍵同時(shí)按下
    elif e.buttons() == QtCore.Qt.LeftButton | QtCore.Qt.MidButton:
      self.mouse = '左中'
    # 右中鍵同時(shí)按下
    elif e.buttons() == QtCore.Qt.MidButton | QtCore.Qt.RightButton:
      self.mouse = '右中'
    # 左中右鍵同時(shí)按下
    elif e.buttons() == QtCore.Qt.LeftButton | QtCore.Qt.MidButton | QtCore.Qt.RightButton:
      self.mouse = '左中右'
  def mouseDoubleClickEvent(self,e):
    # 雙擊
    self.mouse = "雙擊"
    self.isDoubleClick=True

  def judgeClick(self,e):
    if self.isDoubleClick== False:
      self.mouse="左"
    else:
      self.isDoubleClick=False
      self.mouse = "雙擊"

from PyQt5.QtCore import QTimer
from PyQt5 import QtCore, QtGui, QtWidgets

class myWidgets(QtWidgets.QTableWidget):

  def __init__(self, parent=None):
    super(myWidgets, self).__init__(parent)
    self.mouse = ""
    self.timer=QTimer(self)
    self.timer.timeout.connect(self.singleClicked)

  def singleClicked(self):
    if self.timer.isActive():
      self.timer.stop()
      self.mouse="左"

  def mouseDoubleClickEvent(self,e):
    if self.timer.isActive() and e.buttons() ==QtCore.Qt.LeftButton:
      self.timer.stop()
      self.mouse="雙擊"
    super(myWidgets,self).mouseDoubleClickEvent(e)

  def mousePressEvent(self,e):
    if e.buttons()== QtCore.Qt.LeftButton:
      self.timer.start(1000)
    elif e.buttons()== QtCore.Qt.RightButton:
      self.mouse="右"
    super(myWidgets,self).mousePressEvent(e)

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • echarts動態(tài)獲取Django數(shù)據(jù)的實(shí)現(xiàn)示例

    echarts動態(tài)獲取Django數(shù)據(jù)的實(shí)現(xiàn)示例

    本文主要介紹了echarts動態(tài)獲取Django數(shù)據(jù)的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • python人工智能算法之差分進(jìn)化算法的實(shí)現(xiàn)

    python人工智能算法之差分進(jìn)化算法的實(shí)現(xiàn)

    DE基于GA,正如進(jìn)化基于遺傳,和遺傳算法相比,差分進(jìn)化引入了差分變異模式,相當(dāng)于開辟了一條嶄新的進(jìn)化路徑,下面就來看看差分優(yōu)化算法是如何實(shí)現(xiàn)的吧
    2023-08-08
  • Python中異常處理及最佳實(shí)踐舉例詳解

    Python中異常處理及最佳實(shí)踐舉例詳解

    異常處理在任何一門編程語言里都是值得關(guān)注的一個(gè)話題,良好的異常處理可以讓你的程序更加健壯,下面這篇文章主要給大家介紹了關(guān)于Python中異常處理及最佳實(shí)踐的相關(guān)資料,需要的朋友可以參考下
    2024-03-03
  • Python使用multiprocessing如何實(shí)現(xiàn)多進(jìn)程

    Python使用multiprocessing如何實(shí)現(xiàn)多進(jìn)程

    這篇文章主要介紹了Python使用multiprocessing如何實(shí)現(xiàn)多進(jìn)程問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • Python基于pyecharts實(shí)現(xiàn)關(guān)聯(lián)圖繪制

    Python基于pyecharts實(shí)現(xiàn)關(guān)聯(lián)圖繪制

    這篇文章主要介紹了Python基于pyecharts實(shí)現(xiàn)關(guān)聯(lián)圖繪制,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-03-03
  • 如何解決cmd運(yùn)行python提示不是內(nèi)部命令

    如何解決cmd運(yùn)行python提示不是內(nèi)部命令

    在本篇文章里小編給大家整理了關(guān)于如何解決cmd運(yùn)行python提示不是內(nèi)部命令的相關(guān)內(nèi)容,有興趣的朋友們學(xué)習(xí)下。
    2020-07-07
  • Python工程師面試必備25條知識點(diǎn)

    Python工程師面試必備25條知識點(diǎn)

    這篇文章主要為大家詳細(xì)介紹了Python工程師面試必備25條知識點(diǎn),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • Python爬取肯德基官網(wǎng)ajax的post請求實(shí)現(xiàn)過程

    Python爬取肯德基官網(wǎng)ajax的post請求實(shí)現(xiàn)過程

    這篇文章主要介紹了Python爬取肯德基官網(wǎng)ajax的post請求實(shí)現(xiàn)過程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家學(xué)有所得,多多進(jìn)步
    2021-10-10
  • 最新評論