本文整理汇总了Python中PyQt5.QtWidgets.QProgressBar.setAlignment方法的典型用法代码示例。如果您正苦于以下问题:Python QProgressBar.setAlignment方法的具体用法?Python QProgressBar.setAlignment怎么用?Python QProgressBar.setAlignment使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PyQt5.QtWidgets.QProgressBar
的用法示例。
在下文中一共展示了QProgressBar.setAlignment方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: BusyProgressDialog
# 需要导入模块: from PyQt5.QtWidgets import QProgressBar [as 别名]
# 或者: from PyQt5.QtWidgets.QProgressBar import setAlignment [as 别名]
class BusyProgressDialog(QDialog):
"""
This class implements a dialog showing a busy progress bar.
"""
def __init__(self, title='', parent=None):
"""
Initialize the form dialog.
:type title: str
:type parent: QWidget
"""
super().__init__(parent)
self.progressBar = QProgressBar(self)
self.progressBar.setAlignment(Qt.AlignHCenter)
self.progressBar.setRange(0, 0)
self.progressBar.setFixedSize(300, 30)
self.progressBar.setTextVisible(True)
self.progressBar.setFormat(title or 'Busy ...')
self.mainLayout = QVBoxLayout(self)
self.mainLayout.addWidget(self.progressBar)
self.setWindowIcon(QIcon(':/images/eddy'))
self.setWindowTitle(title or 'Busy ...')
self.setFixedSize(self.sizeHint())
####################################################################################################################
# #
# CONTEXT MANAGER #
# #
####################################################################################################################
def __enter__(self):
"""
Draw the dialog.
"""
self.show()
def __exit__(self, exc_type, exc_value, traceback):
"""
Close the dialog.
"""
self.close()
示例2: SearchWidget
# 需要导入模块: from PyQt5.QtWidgets import QProgressBar [as 别名]
# 或者: from PyQt5.QtWidgets.QProgressBar import setAlignment [as 别名]
#.........这里部分代码省略.........
replaceFileAll = pyqtSignal(str)
"""
replaceFileAll(replText)
**Signal** emitted, when 'Replace All' had been pressed
""" # pylint: disable=W0105
def __init__(self, plugin):
QFrame.__init__(self, core.workspace())
self._mode = None
self.plugin = plugin
uic.loadUi(os.path.join(os.path.dirname(__file__), 'SearchWidget.ui'), self)
self.cbSearch.setCompleter(None)
self.cbReplace.setCompleter(None)
self.cbMask.setCompleter(None)
self.fsModel = QDirModel(self.cbPath.lineEdit())
self.fsModel.setFilter(QDir.AllDirs | QDir.NoDotAndDotDot)
self.cbPath.lineEdit().setCompleter(QCompleter(self.fsModel,
self.cbPath.lineEdit()))
self._pathBackspaceShortcut = QShortcut(QKeySequence("Ctrl+Backspace"), self.cbPath, self._onPathBackspace)
self._pathBackspaceShortcut.setContext(Qt.WidgetWithChildrenShortcut)
# TODO QDirModel is deprecated but QCompleter does not yet handle
# QFileSystemodel - please update when possible."""
self.cbSearch.setCompleter(None)
self.pbSearchStop.setVisible(False)
self.pbReplaceCheckedStop.setVisible(False)
self._progress = QProgressBar(self)
self._progress.setAlignment(Qt.AlignCenter)
self._progress.setToolTip(self.tr("Search in progress..."))
self._progress.setMaximumSize(QSize(80, 16))
core.mainWindow().statusBar().insertPermanentWidget(1, self._progress)
self._progress.setVisible(False)
# cd up action
self.tbCdUp = QToolButton(self.cbPath.lineEdit())
self.tbCdUp.setIcon(QIcon(":/enkiicons/go-up.png"))
self.tbCdUp.setCursor(Qt.ArrowCursor)
self.tbCdUp.installEventFilter(self) # for drawing button
self.cbSearch.installEventFilter(self) # for catching Tab and Shift+Tab
self.cbReplace.installEventFilter(self) # for catching Tab and Shift+Tab
self.cbPath.installEventFilter(self) # for catching Tab and Shift+Tab
self.cbMask.installEventFilter(self) # for catching Tab and Shift+Tab
self._closeShortcut = QShortcut(QKeySequence("Esc"), self)
self._closeShortcut.setContext(Qt.WidgetWithChildrenShortcut)
self._closeShortcut.activated.connect(self.hide)
# connections
self.cbSearch.lineEdit().textChanged.connect(self._onSearchRegExpChanged)
self.cbSearch.lineEdit().returnPressed.connect(self._onReturnPressed)
self.cbReplace.lineEdit().returnPressed.connect(self._onReturnPressed)
self.cbPath.lineEdit().returnPressed.connect(self._onReturnPressed)
self.cbMask.lineEdit().returnPressed.connect(self._onReturnPressed)
self.cbRegularExpression.stateChanged.connect(self._onSearchRegExpChanged)
self.cbCaseSensitive.stateChanged.connect(self._onSearchRegExpChanged)
self.cbWholeWord.stateChanged.connect(self._onSearchRegExpChanged)
示例3: OWLTranslationForm
# 需要导入模块: from PyQt5.QtWidgets import QProgressBar [as 别名]
# 或者: from PyQt5.QtWidgets.QProgressBar import setAlignment [as 别名]
class OWLTranslationForm(QDialog):
"""
This class implements the form used to perform Graphol -> OWL ontology translation.
"""
def __init__(self, scene, filepath, parent=None):
"""
Initialize the form dialog.
:type scene: DiagramScene
:type filepath: str
:type parent: QWidget
"""
super().__init__(parent)
self.scene = scene
self.filepath = filepath
self.worker = None
self.workerThread = None
self.iriField = StringField(self)
self.iriField.setFixedWidth(300)
self.iriField.setValidator(QRegExpValidator(QRegExp('[\w:\/\[\]=?%#~\.\-\+]*'), self))
self.prefixField = StringField(self)
self.prefixField.setFixedWidth(300)
self.prefixField.setValidator(QRegExpValidator(QRegExp('[\w]*'), self))
self.syntaxField = ComboBox(self)
for syntax in OWLSyntax:
self.syntaxField.addItem(syntax.value, syntax)
self.syntaxField.setCurrentIndex(0)
self.progressBar = QProgressBar(self)
self.progressBar.setAlignment(Qt.AlignHCenter)
self.progressBar.setRange(0, 100)
self.progressBar.setValue(0)
self.buttonBox = QDialogButtonBox(QDialogButtonBox.Ok | QDialogButtonBox.Cancel, Qt.Horizontal, self)
self.buttonBox.button(QDialogButtonBox.Ok).setDisabled(True)
self.mainLayout = QFormLayout(self)
self.mainLayout.addRow('IRI', self.iriField)
self.mainLayout.addRow('Prefix', self.prefixField)
self.mainLayout.addRow('Syntax', self.syntaxField)
self.mainLayout.addRow(self.progressBar)
self.mainLayout.addRow(self.buttonBox)
self.setWindowTitle('OWL Translation')
self.setWindowIcon(QIcon(':/images/eddy'))
self.setFixedSize(self.sizeHint())
connect(self.buttonBox.accepted, self.run)
connect(self.buttonBox.rejected, self.reject)
connect(self.iriField.textChanged, self.iriChanged)
####################################################################################################################
# #
# SLOTS #
# #
####################################################################################################################
@pyqtSlot(Exception)
def errored(self, exception):
"""
Executed whenever the translation errors.
:type exception: Exception
"""
if isinstance(exception, MalformedDiagramError):
msgbox = QMessageBox(self)
msgbox.setIconPixmap(QPixmap(':/icons/warning'))
msgbox.setWindowIcon(QIcon(':/images/eddy'))
msgbox.setWindowTitle('Malformed Diagram')
msgbox.setText('Malformed expression detected on {}: {}'.format(exception.item, exception))
msgbox.setInformativeText('Do you want to see the error in the diagram?')
msgbox.setStandardButtons(QMessageBox.Yes|QMessageBox.No)
S = QSpacerItem(400, 0, QSizePolicy.Minimum, QSizePolicy.Expanding)
L = msgbox.layout()
L.addItem(S, L.rowCount(), 0, 1, L.columnCount())
msgbox.exec_()
if msgbox.result() == QMessageBox.Yes:
for view in self.scene.views():
if isinstance(view, MainView):
view.centerOn(exception.item)
else:
msgbox = QMessageBox(self)
msgbox.setIconPixmap(QPixmap(':/icons/error'))
msgbox.setWindowIcon(QIcon(':/images/eddy'))
msgbox.setWindowTitle('Unhandled exception!')
msgbox.setStandardButtons(QMessageBox.Close)
msgbox.setText('Diagram translation could not be completed!')
msgbox.setInformativeText('Please <a href="{}">submit a bug report</a> with detailed information.'.format(BUG_TRACKER))
msgbox.setDetailedText(''.join(traceback.format_exception(type(exception), exception, exception.__traceback__)))
S = QSpacerItem(400, 0, QSizePolicy.Minimum, QSizePolicy.Expanding)
L = msgbox.layout()
L.addItem(S, L.rowCount(), 0, 1, L.columnCount())
msgbox.exec_()
#.........这里部分代码省略.........
示例4: run
# 需要导入模块: from PyQt5.QtWidgets import QProgressBar [as 别名]
# 或者: from PyQt5.QtWidgets.QProgressBar import setAlignment [as 别名]
def run(self):
"""Run method that performs all the real work"""
# show the dialog
self.dlg.show()
self.dlg.comboBox.clear()
layers = QgsProject.instance().mapLayers().values()
for layer in layers:
if layer.type() == QgsMapLayer.VectorLayer :
self.dlg.comboBox.addItem( layer.name(), layer )
# Run the dialog event loop
result = self.dlg.exec_()
# See if OK was pressed
if result:
index = self.dlg.comboBox.currentIndex()
selection = self.dlg.comboBox.itemData(index)
checkedLayers = QgsProject.instance().layerTreeRoot().checkedLayers()
#search existence of output folder, if not create it
if not os.path.isdir(self.folderName):
raise FileNotFoundError(
errno.ENOENT, os.strerror(errno.ENOENT), self.folderName)
directory = self.folderName + "/vectors"
if not os.path.exists(directory):
os.makedirs(directory)
directory = self.folderName + "/rasters"
if not os.path.exists(directory):
os.makedirs(directory)
# Progress bar
progressMessageBar = iface.messageBar().createMessage("Clipping...")
progress = QProgressBar()
progress.setMaximum(len(checkedLayers) - 1)
progress.setAlignment(Qt.AlignLeft|Qt.AlignVCenter)
progressMessageBar.layout().addWidget(progress)
iface.messageBar().pushWidget(progressMessageBar, Qgis.Info)
progression = 0
#clip part
for layer in checkedLayers :
out = None
#clip vector layer (if displayed)
if layer.type() == QgsMapLayer.VectorLayer and layer != selection :
output = self.folderName + "/vectors/clip_" + layer.name() + ".shp"
# check file isn't openned and is writable
version = 0
while self.isFileOpened(output):
output = self.folderName + "/vectors/clip_" + layer.name() + "("+ str(version) + ").shp"
version +=1
processing.run("native:clip", {"INPUT" : layer.id(), "OVERLAY" : selection.id(), "OUTPUT" : output})
# load layer
if self.dlg.checkBox.isChecked():
out = iface.addVectorLayer(output, "", "ogr")
if not out:
iface.messageBar().pushMessage("Error", "Could not load " + output, level=Qgis.Warning)
#clip raster layer (if displayed)
if layer.type() == QgsMapLayer.RasterLayer :
# get extension about the raster
filename, file_extension = os.path.splitext(layer.source())
output = self.folderName + "/rasters/clip_" + layer.name() + file_extension
# check file isn't openned and is writable
version = 0
while self.isFileOpened(output):
output = self.folderName + "/rasters/clip_" + layer.name() + "("+ str(version) + ")" + file_extension
version +=1
processing.run("gdal:cliprasterbymasklayer", {"INPUT" : layer.id(), "MASK" : selection.id(), "CROP_TO_CUTLINE" : True, "OUTPUT" : output})
# load layer
if self.dlg.checkBox.isChecked():
out = iface.addRasterLayer(output, "")
if not out.isValid():
iface.messageBar().pushMessage("Error", "Could not load " + output, level=Qgis.Warning)
# Update progression
time.sleep(1)
progress.setValue(progression + 1)
progression += 1
iface.messageBar().clearWidgets()
示例5: QGISBaum
# 需要导入模块: from PyQt5.QtWidgets import QProgressBar [as 别名]
# 或者: from PyQt5.QtWidgets.QProgressBar import setAlignment [as 别名]
def QGISBaum(self, AktDB, User, prjNameInTree, qry4pri, qry, bGenDar, bPrjNeu, iDarGruppe, b3DDar, bDBTab, bSHPexp, bLeer, OutOfQGIS=False):
def Fortschritt(prgBar, msgBar, Step, Titel, Text):
# Fortschritt(prgBar, msgBar, Step, Text)
try:
prgBar.setValue(Step)
msgBar.setTitle(Titel)
msgBar.setText(Text)
QCoreApplication.processEvents()
return True
except:
QMessageBox.critical( None, "Abbruch","Vorgang dort durch Nutzereingriff beendet")
return False
idxLayer = -1
if bSHPexp:
s = QSettings( "EZUSoft", fncProgKennung() )
bSaveDar = True if s.value( "bSaveDar", "Ja" ) == "Ja" else False
bOnlyDarField = True if s.value( "bOnlyDarField", "Ja" ) == "Ja" else False
bNoGISDBIntern = True if s.value( "bNoGISDBIntern", "Ja" ) == "Ja" else False
txtCodePage = s.value( "txtCodePage", 0)
txtZielPfad = s.value( "txtSHPDir", "" )
# allgemeine Daten für Layereinbindung ermitteln
clsRendXML = clsRenderingByQML()
ConnInfo=AktDB.GetConnString()
Epsg=GetEPSG()
cgVersion = GetCGVersion()
# Teil 1 ======================= Ebenen laden und attributieren =============================
ltgProjekt = self.ErzeugeStruktur(prjNameInTree,qry) # Projektbaum generieren
iface.mapCanvas().setRenderFlag( False ) # Kartenaktualisierung abschalten
QApplication.setOverrideCursor(Qt.WaitCursor)
step=0
# Progressbar intitialisieren
GesAnz = qry4pri.size()
if bSHPexp:
GesAnz = GesAnz * 2 # zwischenschritt für Progressbar
GesAnz = GesAnz + 1
msgBar = iface.messageBar().createMessage("...")
prgBar = QProgressBar()
prgBar.setAlignment(Qt.AlignLeft)
prgBar.setValue(0)
prgBar.setMaximum(GesAnz)
msgBar.layout().addWidget(prgBar)
iface.messageBar().pushWidget(msgBar, 0) # 15.02.18 Fehler bei QGIS 2018/02 iface.messageBar().INFO --> 0
# 3.) Ebenen laden
# 0 1 2
# layername, lyrtable.layerid, lyrtable.layertyp, dbname, priority
i=0
while (qry4pri.next()):
# 17.07.18: im weiteren Verlauf crasht der Zugriff auf qry4pri.value(x), deshalb werden die Werte in eine Liste geschrieben
qry4priEbene=qry4pri.value(0)
qry4priLayerID=qry4pri.value(1)
qry4priLayerTyp=qry4pri.value(2)
qry4priDBname=qry4pri.value(3)
try:
i=i+1
#print (i, step, GesAnz, qry4priEbene)
except:
pass
#Progressbar weiterschalten
step = step + 1
if not Fortschritt(prgBar, msgBar, step, "Laden", qry4priEbene):
break
GISDBTabName=None
refObjID=None
"""
-> hat irgendwie nix gebracht, war langsam und vor allem hat sich der Speicher irgendwie aufgeschauckelt
if bLeer:
LayerMachWas = True
else:^
LayerMachWas = not (clsdb.sqlLayerIsEmpty(q ry4pri.value(2),qry4priLayerID))
"""
lName=toUTF8(qry4priEbene) # 11.04.19 weiter vorgeholt, falls in Fehlermelung gebraucht
if bDBTab and qry4priDBname:#
if dbExistsGISDBTab(qry4priDBname):
GISDBTabName=qry4priDBname.lower()
refObjID=dbObjID4GISDBTab(qry4priDBname)
else:
addFehler("Fehler Tabellenzugriff (Tabelle:" + qry4priDBname + ", Matchcode: like '%%\_objid', Ebene: " + lName )
vlp = VectorLayerPath (qry4priLayerTyp,ConnInfo,Epsg, qry4priLayerID,b3DDar, GISDBTabName, cgVersion, bSHPexp, refObjID)
# 17.07.18: ab hier crasht der Zugriff auf qry4pri.value, deshalb werden die Werte in ein normales array geschrieben
if vlp:
# ================== 1. Schritt Layer einbinden =============================
#print (vlp)
#print (lName)
Layer = QgsVectorLayer(vlp, lName , "postgres")
if Layer.isValid():
Layer.setReadOnly() # sicherheitshalbe ReadOnly auf PG-Layer
if bLeer or Layer.featureCount() > 0:
if bSHPexp:
# Bei Shape-Option: Layer als Shape speichern, Postgres lösen und Shape setzen
#.........这里部分代码省略.........
示例6: BusyLoaderDialog
# 需要导入模块: from PyQt5.QtWidgets import QProgressBar [as 别名]
# 或者: from PyQt5.QtWidgets.QProgressBar import setAlignment [as 别名]
class BusyLoaderDialog(QDialog):
"""
This class implements a loader showing a BusyProgressBar indicator.
"""
def __init__(self, worker, parent=None):
"""
Initialize the form dialog.
:type worker: Loader
:type parent: QWidget
"""
super().__init__(parent)
self.worker = worker
self.workerThread = None
self.progressBar = QProgressBar(self)
self.progressBar.setAlignment(Qt.AlignHCenter)
self.progressBar.setRange(-1, -1)
self.mainLayout = QVBoxLayout(self)
self.mainLayout.addWidget(self.progressBar)
self.setWindowTitle('Loading ...')
self.setWindowIcon(QIcon(':/images/eddy'))
self.setFixedSize(300, 100)
####################################################################################################################
# #
# EVENTS #
# #
####################################################################################################################
def showEvent(self, event):
"""
Executed when the dialog is shown
:type event: QShowEvent
"""
self.workerThread = QThread()
self.worker.moveToThread(self.workerThread)
connect(self.worker.completed, self.completed)
connect(self.worker.errored, self.errored)
connect(self.workerThread.started, self.worker.work)
self.workerThread.start()
####################################################################################################################
# #
# SLOTS #
# #
####################################################################################################################
@pyqtSlot(Exception)
def errored(self, err):
"""
Executed whenever the translation errors.
:type err: Exception
"""
msgbox = QMessageBox(self)
msgbox.setIconPixmap(QPixmap(':/icons/error'))
msgbox.setWindowIcon(QIcon(':/images/eddy'))
msgbox.setWindowTitle('Load failed!')
msgbox.setStandardButtons(QMessageBox.Close)
msgbox.setText('Failed to load {}!'.format(os.path.basename(self.worker.filepath)))
msgbox.setDetailedText(''.join(traceback.format_exception(type(err), err, err.__traceback__)))
msgbox.exec_()
self.workerThread.quit()
self.reject()
@pyqtSlot()
def completed(self):
"""
Executed whenever the translation completes.
"""
self.workerThread.quit()
self.worker.moveToThread(QApplication.instance().thread())
self.accept()