本文整理汇总了Python中qgis.core.QgsApplication.exec_方法的典型用法代码示例。如果您正苦于以下问题:Python QgsApplication.exec_方法的具体用法?Python QgsApplication.exec_怎么用?Python QgsApplication.exec_使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类qgis.core.QgsApplication
的用法示例。
在下文中一共展示了QgsApplication.exec_方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: RoamApp
# 需要导入模块: from qgis.core import QgsApplication [as 别名]
# 或者: from qgis.core.QgsApplication import exec_ [as 别名]
class RoamApp(object):
def __init__(self, sysargv, apppath, prefixpath, settingspath, libspath, i18npath):
self.sysargv = sysargv
self.apppath = apppath
self.prefixpath = prefixpath
self.settingspath = settingspath
self.libspath = libspath
self.i18npath = i18npath
self.app = None
self.translationFile = None
def init(self):
from qgis.core import QgsApplication
from PyQt4.QtGui import QApplication, QFont
from PyQt4.QtCore import QLocale, QTranslator
try:
import PyQt4.QtSql
except ImportError:
pass
self.app = QgsApplication(self.sysargv, True)
QgsApplication.setPrefixPath(self.prefixpath, True)
QgsApplication.initQgis()
locale = QLocale.system().name()
self.translationFile = os.path.join(self.i18npath, '{0}.qm'.format(locale))
translator = QTranslator()
translator.load(self.translationFile, "i18n")
self.app.installTranslator(translator)
QApplication.setStyle("Plastique")
QApplication.setFont(QFont('Segoe UI'))
return self
def exec_(self):
self.app.exec_()
def exit(self):
from qgis.core import QgsApplication
QgsApplication.exitQgis()
QgsApplication.quit()
def setActiveWindow(self, widget):
self.app.setActiveWindow(widget)
def dump_configinfo(self):
from qgis.core import QgsApplication, QgsProviderRegistry
from PyQt4.QtGui import QImageReader, QImageWriter
yield QgsProviderRegistry.instance().pluginList()
yield QImageReader.supportedImageFormats()
yield QImageWriter.supportedImageFormats()
yield QgsApplication.libraryPaths()
yield "Translation file: {}".format(self.translationFile)
示例2: qgisapp
# 需要导入模块: from qgis.core import QgsApplication [as 别名]
# 或者: from qgis.core.QgsApplication import exec_ [as 别名]
def qgisapp(args=None, guienabled=True, configpath=None, sysexit=True):
"""
Create a new QGIS Qt application.
You should use this before creating any Qt widgets or QGIS objects for
your custom QGIS based application.
usage:
from qgis.core.contextmanagers import qgisapp
def main(app):
# Run your main code block
with qgisapp(sys.argv) as app:
main(app)
args - args passed to the underlying QApplication.
guienabled - True by default will create a QApplication with a GUI. Pass
False if you wish to create no GUI based app, e.g a server app.
configpath - Custom config path QGIS will use to load settings.
sysexit - Call sys.exit on app exit. True by default.
"""
if not args:
args = []
app = QgsApplication(args, guienabled, configpath)
QgsApplication.initQgis()
yield app
if guienabled:
exitcode = app.exec_()
else:
exitcode = 0
QgsApplication.exitQgis()
if sysexit:
sys.exit(exitcode)
示例3: save
# 需要导入模块: from qgis.core import QgsApplication [as 别名]
# 或者: from qgis.core.QgsApplication import exec_ [as 别名]
def save(self):
with open(self.path, 'w') as f:
yaml.dump(data=self.settings, stream=f, default_flow_style=False)
settings = Settings(settingspath)
settings.load()
window = MainWindow(settings=settings)
sys.excepthook = partial(excepthook, window.raiseerror)
try:
projectpath = sys.argv[1]
except IndexError:
projectpath = os.path.join(os.getcwd(), "projects")
sys.path.append(projectpath)
projects = roam.project.getProjects(projectpath)
window.loadprojects(projects)
window.actionProject.toggle()
window.viewprojects()
window.updateUIState(1)
window.show()
roam.utils.info("Roam Loaded in {}".format(str(time.time() - start)))
app.exec_()
QgsApplication.exitQgis()
sys.exit()
示例4: RoamApp
# 需要导入模块: from qgis.core import QgsApplication [as 别名]
# 或者: from qgis.core.QgsApplication import exec_ [as 别名]
class RoamApp(object):
def __init__(self, sysargv, apppath, prefixpath, settingspath, libspath, i18npath, projectsroot):
self.sysargv = sysargv
self.apppath = apppath
self.prefixpath = prefixpath
self.settingspath = settingspath
self.libspath = libspath
self.i18npath = i18npath
self.app = None
self.translationFile = None
self.projectsroot = projectsroot
self._oldhook = sys.excepthook
def init(self, logo, title):
from qgis.core import QgsApplication
from PyQt4.QtGui import QApplication, QFont, QIcon
from PyQt4.QtCore import QLocale, QTranslator
try:
import PyQt4.QtSql
except ImportError:
pass
self.app = QgsApplication(self.sysargv, True)
import roam.roam_style
self.app.setStyleSheet(roam.roam_style.appstyle)
QgsApplication.setPrefixPath(self.prefixpath, True)
QgsApplication.initQgis()
locale = QLocale.system().name()
self.translationFile = os.path.join(self.i18npath, '{0}.qm'.format(locale))
translator = QTranslator()
translator.load(self.translationFile, "i18n")
self.app.installTranslator(translator)
QApplication.setStyle("Plastique")
QApplication.setFont(QFont('Segoe UI'))
QApplication.setWindowIcon(QIcon(logo))
QApplication.setApplicationName(title)
import roam.editorwidgets.core
roam.editorwidgets.core.registerallwidgets()
return self
def set_error_handler(self, errorhandler, logger):
sys.excepthook = functools.partial(self.excepthook, errorhandler)
self.logger = logger
def excepthook(self, errorhandler, exctype, value, traceback):
self.logger.error("Uncaught exception", exc_info=(exctype, value, traceback))
errorhandler(exctype, value, traceback)
def exec_(self):
self.app.exec_()
def exit(self):
sys.excepthook = self._oldhook
from qgis.core import QgsApplication
QgsApplication.exitQgis()
QgsApplication.quit()
def setActiveWindow(self, widget):
self.app.setActiveWindow(widget)
def dump_configinfo(self):
from qgis.core import QgsApplication, QgsProviderRegistry
from PyQt4.QtGui import QImageReader, QImageWriter
import roam
from qgis.core import QGis
config = []
config.append("====Providers===")
config.append(QgsProviderRegistry.instance().pluginList())
config.append("====Library paths===")
config.append('\n'.join(QgsApplication.libraryPaths()))
config.append("====Translation File===")
config.append(self.translationFile)
config.append("Roam Version: {}".format(roam.__version__))
config.append("QGIS Version: {}".format(str(QGis.QGIS_VERSION)))
return '\n'.join(config)