Плагины
Плагины
Милостивые Государи !
как В PyCharm подключить библиотеку axipy.
При запуске выдает сообщение
File "C:\Аксиома\Proba\pythonProject2\main.py", line 15, in <module>
import axipy
ModuleNotFoundError: No module named 'axipy'
при создании проекта нет режима
• Требуется установить галочку Inherit global site-packages, чтобы Python смог
обнаружить axipy;
Примите мои уверения в почтении
как В PyCharm подключить библиотеку axipy.
При запуске выдает сообщение
File "C:\Аксиома\Proba\pythonProject2\main.py", line 15, in <module>
import axipy
ModuleNotFoundError: No module named 'axipy'
при создании проекта нет режима
• Требуется установить галочку Inherit global site-packages, чтобы Python смог
обнаружить axipy;
Примите мои уверения в почтении
Re: Плагины
Благодарю Вас за интерес!
Проблему решил.
Проблему решил.
Re: Плагины
Вы делаете так как описано на https://axioma-gis.ru/axipy/dev-guide/5.1/user_guide/development/pycharm_windows.html
В PyCharm интерфейс несколько поменялся и теперь окно создания проекта выглядит так: галочку "Inherit global site-packages" переименовали в "Inherit packeges from base interpreter"
Плохая новость в том, что эта галочка похоже перестала работать и это видимо баг в PyCharm.
Чтобы исправить ситуацию откройте файл pyvenv.cfg в созданной папке с виртуальным окружением и измените:
на
После чего перезапустите PyCharm
В PyCharm интерфейс несколько поменялся и теперь окно создания проекта выглядит так: галочку "Inherit global site-packages" переименовали в "Inherit packeges from base interpreter"
Плохая новость в том, что эта галочка похоже перестала работать и это видимо баг в PyCharm.
Чтобы исправить ситуацию откройте файл pyvenv.cfg в созданной папке с виртуальным окружением и измените:
Код: Выделить всё
include-system-site-packages = false
Код: Выделить всё
include-system-site-packages = true
Re: Плагины
Благодарю Вас Александр !
Я только приступил к трансляции ПО MapTopik , написанной на MapBasic Mapinfo , для ГИС Аксиома 5.
Я только приступил к трансляции ПО MapTopik , написанной на MapBasic Mapinfo , для ГИС Аксиома 5.
Re: Плагины
Вопросов будет ,к сожалению , еще много. Заранее приношу свои извинения. с API в Phyton только знакомлюсь.
Re: Плагины
Отсутствует модуль QtWidgets'
Тестовый пример из axipy-dev-guide-5.1.pdf
Список 3: Создание обработчика для взаимодействия
с панелью активного инструмента.
service = ActiveToolPanel()
# Любой пользовательский графический элемент
widget = QWidget()
# Создаём обработчик для панели активного инструмента через который
# будем управлять панелью.
tool_panel = service.make_acceptable(
title="Мой инструмент",
observer_id=DefaultKeys.SelectionEditable,
widget=widget)
# Подписываемся на сигнал отправляемый после нажатия на кнопку "Применить" в панели
работа в PyCharm 2023.3.2 (Community Edition)
=======================================
from QtWidgets import QWidget
from axipy import ActionButton, Position, tr, init_axioma, mainwindow, ActiveToolPanel, DefaultKeys
service = ActiveToolPanel()
# Любой пользовательский графический элемент
widget = QWidget()
# Создаём обработчик для панели активного инструмента через который
# будем управлять панелью.
tool_panel = service.make_acceptable(
title="Мой инструмент",
observer_id=DefaultKeys.SelectionEditable,
widget=widget)
# Подписываемся на сигнал отправляемый после нажатия на кнопку "Применить" в панели
tool_panel.accepted.connect(lambda: print("Применяем изменения"))
button = ActionButton("Простое действие", on_click=lambda: print("triggered"))
position = Position(tr("Основные"), tr("Команды"))
position.add(button)
# Инициализация ядра
app = init_axioma()
# Создание и отображение главного окна Аксиомы
mainwindow.show()
# Запуск основного цикла приложения
app.exec_()
===========================================================
' результат выполнения
"C:\Program Files\Axioma v5\bin\python\python.exe" C:\Аксиома\Proba\pythonProject8\main.py
Unhandled Python Exception:
Traceback (most recent call last):
File "C:\Аксиома\Proba\pythonProject8\main.py", line 1, in <module>
from QtWidgets import QWidget
ModuleNotFoundError: No module named 'QtWidgets'
Process finished with exit code 1
Тестовый пример из axipy-dev-guide-5.1.pdf
Список 3: Создание обработчика для взаимодействия
с панелью активного инструмента.
service = ActiveToolPanel()
# Любой пользовательский графический элемент
widget = QWidget()
# Создаём обработчик для панели активного инструмента через который
# будем управлять панелью.
tool_panel = service.make_acceptable(
title="Мой инструмент",
observer_id=DefaultKeys.SelectionEditable,
widget=widget)
# Подписываемся на сигнал отправляемый после нажатия на кнопку "Применить" в панели
работа в PyCharm 2023.3.2 (Community Edition)
=======================================
from QtWidgets import QWidget
from axipy import ActionButton, Position, tr, init_axioma, mainwindow, ActiveToolPanel, DefaultKeys
service = ActiveToolPanel()
# Любой пользовательский графический элемент
widget = QWidget()
# Создаём обработчик для панели активного инструмента через который
# будем управлять панелью.
tool_panel = service.make_acceptable(
title="Мой инструмент",
observer_id=DefaultKeys.SelectionEditable,
widget=widget)
# Подписываемся на сигнал отправляемый после нажатия на кнопку "Применить" в панели
tool_panel.accepted.connect(lambda: print("Применяем изменения"))
button = ActionButton("Простое действие", on_click=lambda: print("triggered"))
position = Position(tr("Основные"), tr("Команды"))
position.add(button)
# Инициализация ядра
app = init_axioma()
# Создание и отображение главного окна Аксиомы
mainwindow.show()
# Запуск основного цикла приложения
app.exec_()
===========================================================
' результат выполнения
"C:\Program Files\Axioma v5\bin\python\python.exe" C:\Аксиома\Proba\pythonProject8\main.py
Unhandled Python Exception:
Traceback (most recent call last):
File "C:\Аксиома\Proba\pythonProject8\main.py", line 1, in <module>
from QtWidgets import QWidget
ModuleNotFoundError: No module named 'QtWidgets'
Process finished with exit code 1
Re: Плагины
модуль PySide2.QtWidgets
соответственно:
соответственно:
Код: Выделить всё
from PySide2.QtWidgets import QWidget
Re: Плагины
Александр !
запустил исправленный пример
from PySide2.QtWidgets import QWidget
from axipy import ActiveToolPanel, DefaultKeys, init_axioma, mainwindow
service = ActiveToolPanel()
# Любой пользовательский графический элемент
widget = QWidget()
# Создаём обработчик для панели активного инструмента через который
# будем управлять панелью.
tool_panel = service.make_acceptable(
title="Мой инструмент",
observer_id=DefaultKeys.SelectionEditable,
widget=widget)
# Подписываемся на сигнал отправляемый после нажатия на кнопку "Применить" в панели
tool_panel.accepted.connect(lambda: print("Применяем изменения"))
# Инициализация ядра
app = init_axioma()
# Создание и отображение главного окна Аксиомы
mainwindow.show()
# Запуск основного цикла приложения
app.exec_()
****************************************
выдано сообщение
Process finished with exit code -1073740286 (0xC0000602)
Что опять не так
Запускал пример из раздела создание приложений - работает безупречно
запустил исправленный пример
from PySide2.QtWidgets import QWidget
from axipy import ActiveToolPanel, DefaultKeys, init_axioma, mainwindow
service = ActiveToolPanel()
# Любой пользовательский графический элемент
widget = QWidget()
# Создаём обработчик для панели активного инструмента через который
# будем управлять панелью.
tool_panel = service.make_acceptable(
title="Мой инструмент",
observer_id=DefaultKeys.SelectionEditable,
widget=widget)
# Подписываемся на сигнал отправляемый после нажатия на кнопку "Применить" в панели
tool_panel.accepted.connect(lambda: print("Применяем изменения"))
# Инициализация ядра
app = init_axioma()
# Создание и отображение главного окна Аксиомы
mainwindow.show()
# Запуск основного цикла приложения
app.exec_()
****************************************
выдано сообщение
Process finished with exit code -1073740286 (0xC0000602)
Что опять не так
Запускал пример из раздела создание приложений - работает безупречно
Re: Плагины
Для использования axipy вне Аксиомы необходимо выполнить инициализацию Аксиомы. Для этого следует вызвать метод init_axioma() перед вызовом остальных методов axipy.
В Вашем случае требуется переместить init_axioma сразу после импортов.
В Вашем случае требуется переместить init_axioma сразу после импортов.
Re: Плагины
Благодарю Вас Александр! Все получилось.