本文整理汇总了Python中PyQt5.QtWidgets.QProgressBar.setContextMenuPolicy方法的典型用法代码示例。如果您正苦于以下问题:Python QProgressBar.setContextMenuPolicy方法的具体用法?Python QProgressBar.setContextMenuPolicy怎么用?Python QProgressBar.setContextMenuPolicy使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PyQt5.QtWidgets.QProgressBar
的用法示例。
在下文中一共展示了QProgressBar.setContextMenuPolicy方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: ProgressBar
# 需要导入模块: from PyQt5.QtWidgets import QProgressBar [as 别名]
# 或者: from PyQt5.QtWidgets.QProgressBar import setContextMenuPolicy [as 别名]
class ProgressBar(vip_base):
def cb_initialize_plugin(self):
# ---------------------------
# Read configuration
# ---------------------------
# Note: this cfg items have to exist!
self.config = self.pl_get_current_config_ref()
self.progress_value = self.config['progress_value']['value']
self.trigger_value = self.config['trigger_value']['value']
self.reset_trigger_value = self.config['reset_trigger_value']['value']
self.show_percent = self.config['show_percent']['value'] == '1'
self.show_current_max = self.config['show_current_max']['value'] == '1'
self.round_digit = int(self.config['round_digit']['value'])
self.min_range = float(self.config['min_rage']['value'])
self.max_range = float(self.config['max_range']['value'])
# --------------------------------
# Create Widget
# --------------------------------
# Create Widget needed for this plugin
self.progressbar = QProgressBar()
self.progressbar.setRange(0, 100)
self.progressbar.setTextVisible(True)
self.progressbar.setValue(0)
self.progressbar.setContextMenuPolicy(QtCore.Qt.CustomContextMenu)
self.progressbar.customContextMenuRequested.connect(self.show_context_menu)
# This call is important, because the background structure needs to know the used widget!
# In the background the qmidiwindow will becreated and the widget will be added
self.set_value(self.min_range)
self.pl_set_widget_for_internal_usage(self.progressbar)
# ---------------------------
# Create Parameters
# ---------------------------
para_list = []
# create a parameter object
self.para_trigger = DParameter('trigger', default=0)
self.para_change_progress_value = DParameter('ProgressValue', default=self.progress_value)
self.para_change_reset_value = DParameter('ResetValue', default=self.reset_trigger_value)
self.para_change_trigger_value = DParameter('TriggerValue', default=self.trigger_value)
self.para_change_min_range = DParameter('MinRange', default=self.min_range, Regex=pc.REGEX_SIGNED_FLOAT_OR_INT)
self.para_change_max_range = DParameter('MaxRange', default=self.max_range, Regex=pc.REGEX_SIGNED_FLOAT_OR_INT)
self.para_show_percent = DParameter('ShowPercent', default=self.config['show_percent']['value'], Regex=pc.REGEX_BOOL_BIN)
self.para_show_current_max = DParameter('ShowCurrentMax', default=self.config['show_current_max']['value'], Regex=pc.REGEX_BOOL_BIN)
para_list.append(self.para_trigger)
para_list.append(self.para_change_progress_value)
para_list.append(self.para_change_reset_value)
para_list.append(self.para_change_trigger_value)
para_list.append(self.para_change_min_range)
para_list.append(self.para_change_max_range)
para_list.append(self.para_show_percent)
para_list.append(self.para_show_current_max)
# build parameter list to send to Core
self.pl_send_new_parameter_list(para_list)
return True
def show_context_menu(self, pos):
gloPos = self.progressbar.mapToGlobal(pos)
self.cmenu = self.pl_create_control_context_menu()
self.cmenu.exec_(gloPos)
def cb_pause(self):
# will be called, when plugin gets paused
# can be used to get plugin in a defined state before pause
# e.a. close communication ports, files etc.
pass
def cb_resume(self):
# will be called when plugin gets resumed
# can be used to wake up the plugin from defined pause state
# e.a. reopen communication ports, files etc.
pass
def cb_execute(self, Data=None, block_name = None, plugin_uname = None):
# Do main work here!
# If this plugin is an IOP plugin, then there will be no Data parameter because it wont get data
# If this plugin is a DPP, then it will get Data with data
# param: Data is a Data hash and block_name is the block_name of Data origin
# Data is a hash, so use ist like: Data[CORE_TIME_SIGNAL] = [t1, t2, ...] where CORE_TIME_SIGNAL is a signal_name
# hash signal_name: value
# Data could have multiple types stored in it e.a. Data['d1'] = int, Data['d2'] = []
if self.reset_trigger_value in Data:
self.reset()
#.........这里部分代码省略.........