Добавление списка слоёв в приложение PyQGIS

Обсуждение материалов сайта: вопросы, замечания, предложения
real673
Интересующийся
Сообщения: 33
Зарегистрирован: 06 фев 2012, 21:54
Репутация: 0

Re: Добавление списка слоёв в приложение PyQGIS

Сообщение real673 »

возникла такая проблема в QT Designer я добавил новое действие сразу после mpActionPan
и назвал его mpActionMAC которое должно выводить мне новое окно

добавил
в mainwindow.py
from win_ui import Ui_Win

затем задал действие как и до этого было для mpActionPan

self.connect( self.mpActionMAC, SIGNAL( "triggered()" ), self.win);
потом прописал

def win ( self) :
print("Here open WIN")
self.child = Ui_Win()
self.child.show()

но при запуске получаю следующее

File "mainwindow.py", line 57
self.connect( self.mpActionMAC, SIGNAL( "triggered()" ), self.win);

ПОЧЕМУ?
Cathrin
Участник
Сообщения: 67
Зарегистрирован: 16 май 2012, 10:38
Репутация: 0

Re: Добавление списка слоёв в приложение PyQGIS

Сообщение Cathrin »

Подскажите,пожалуйста!
я столкнулась с проблемой,описываемой в начале этого форума. в легенде нет списка слоев,и он их вообще не открывает.
прочитала, что решением может быть если доработать виджет, чтобы он автоматически принудительно загружал слои с использованием старой символики.

помогите,пожалуйста,это сделать
Voltron
Гуру
Сообщения: 2627
Зарегистрирован: 29 мар 2007, 14:12
Репутация: 34
Откуда: Ukraine

Re: Добавление списка слоёв в приложение PyQGIS

Сообщение Voltron »

Что именно у вас не получается?
Cathrin
Участник
Сообщения: 67
Зарегистрирован: 16 май 2012, 10:38
Репутация: 0

Re: Добавление списка слоёв в приложение PyQGIS

Сообщение Cathrin »

как именно доработать виджет, чтобы он автоматически принудительно загружал слои с использованием старой символики ?
air139
Новоприбывший
Сообщения: 3
Зарегистрирован: 13 апр 2014, 14:32
Репутация: 0

Re: Добавление списка слоёв в приложение PyQGIS

Сообщение air139 »

День добрый, я использую QGIS Valmiera, проблема в том, что при добавлении слоев выводится ошибка cmd, ну и как следствие не добавляются слои.
Подскажите что делать?

Спасибо.
Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Репутация: 529
Ваше звание: Author
Контактная информация:

Re: Добавление списка слоёв в приложение PyQGIS

Сообщение Denis Rykov »

Текст ошибки приведите.
Spatial is now, more than ever, just another column- The Geometry Column.
air139
Новоприбывший
Сообщения: 3
Зарегистрирован: 13 апр 2014, 14:32
Репутация: 0

Re: Добавление списка слоёв в приложение PyQGIS

Сообщение air139 »

Вот что получается...
Вложения
Безымянный.png
Безымянный.png (54.66 КБ) 11739 просмотров
Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Репутация: 529
Ваше звание: Author
Контактная информация:

Re: Добавление списка слоёв в приложение PyQGIS

Сообщение Denis Rykov »

Вы используете последнюю версию QGIS с новым API. В статье написано, что работоспособность примеров проверена для QGIS 1.7, поэтому у вас и не работает.
Spatial is now, more than ever, just another column- The Geometry Column.
air139
Новоприбывший
Сообщения: 3
Зарегистрирован: 13 апр 2014, 14:32
Репутация: 0

Re: Добавление списка слоёв в приложение PyQGIS

Сообщение air139 »

Как выйти из этой ситуации?)
Brykov
Новоприбывший
Сообщения: 6
Зарегистрирован: 17 май 2015, 16:30
Репутация: 0

Re: Добавление списка слоёв в приложение PyQGIS

Сообщение Brykov »

В новом API функция getLayerID() стала id()
Brykov
Новоприбывший
Сообщения: 6
Зарегистрирован: 17 май 2015, 16:30
Репутация: 0

Re: Добавление списка слоёв в приложение PyQGIS

Сообщение Brykov »

Но вот загвоздка- слои добавляются и отображаются, а вот в список добавляться не хотят. В чем может быть причина? Командная строка никаких ошибок не выдает. Добавляю слой командой:

Код: Выделить всё

QgsMapLayerRegistry.instance().addMapLayer( layer1 );
Brykov
Новоприбывший
Сообщения: 6
Зарегистрирован: 17 май 2015, 16:30
Репутация: 0

Re: Добавление списка слоёв в приложение PyQGIS

Сообщение Brykov »

Добрый вечер. Переписал легенду на новый API. Но теперь проблема... Пытаюсь открыть таблицу атрибутов

Код: Выделить всё

        self.attr_form=attr_table()
        cache = QgsVectorLayerCache(item.canvasLayer.layer(), 10000)
        model = QgsAttributeTableModel(cache)
        model.loadLayer()
        table = self.attr_form.tableView
        table.setModel(model)
        self.attr_form.attr_table_show()
Выводит таблицу, но только с ID объектов, т.е. я так понял он не видит DBF-ку, идущую с shp-файлом... Есть у кого предположения?
Ответить

Вернуться в «Материалы сайта»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость