Шаг 208.
Библиотека PyQt5.
Графическая сцена. Класс QGraphicsView: представление. Настройка представления
   
На этом шаге мы перечислим основные методы, которые применяются для выполнения этой операции.
   
Для настройки различных параметров представления применяются следующие методы класса QGraphicsView (здесь приведены только основные - полный их список доступен на странице 
https://doc.qt.io/qt-5/qgraphicsview.html):
 -  setScene (<QGraphicsScene>) - устанавливает выводимую на экран сцену;
 
 -  scene () - возвращает ссылку  на установленную  сцену в  виде экземпляра  класса QGraphicsScene;
 
 -  setSceneRect () - задает координаты и размеры сцены. Форматы метода:
  setSceneRect(<X>, <Y>, <Ширина>, <Высота>)
  setSceneRect(<QRectF>)
 
  -  sceneRect () - возвращает экземпляр класса QRectF с координатами и размерами сцены;
 
 -  setBackgroundBrush (<QBrush>) - задает кисть для заднего плана сцены (расположен под графическими объектами);
 
 -  setForegroundBrush (<QBrush>) - задает кисть для переднего плана сцены (расположен над графическими объектами);
 
 -  setCacheMode (<Режим>) - задает режим кэширования выводимых объектов. В качестве параметра могут быть указаны следующие атрибуты класса QGraphicsView:
 -  CacheNone (или 0) - без кэширования;
 
 -  CacheBackground (или 1) - кэшируется только задний фон;
 
 
 -  resetCachedContent () - сбрасывает кэш;
 
 -  setAlignment (<Выравнивание>) - задает выравнивание сцены в случае, если содержимое сцены полностью помещается в представлении. По умолчанию сцена центрируется 
по горизонтали и вертикали. Пример установки сцены в левом верхнем углу представления:
  view.setAlignment(QtCore.Qt.AlignLeft | QtCore.Qt.AlignTop)
 
  -  setInteractive (<Флаг>) - если в качестве параметра указано значение True, пользователь может взаимодействовать с объектами на сцене (интерактивный режим, 
используется по умолчанию). Значение False разрешает только просмотр сцены;
 
 -  isInteractive () - возвращает значение True, если задан интерактивный режим, и False - в противном случае;
 
 -  setDragMode (<Режим>) - задает действие,  которое  производится при  щелчке левой кнопкой мыши на фоне и перемещении мыши. Получить текущее действие позволяет 
метод dragMode(). В качестве параметра могут быть указаны следующие атрибуты класса QGraphicsView:
 -  NoDrag (или 0) - ничего не происходит;
 
 -  ScrollHandDrag (или 1) - перемещение мыши при нажатой левой кнопке будет приводить к прокрутке сцены. При этом указатель мыши примет вид сжатой или разжатой руки;
 
 -  RubberBandDrag (или 2) - создается область выделения. Объекты, частично или полностью (задается с помощью метода setRubberBandSelectionMode()) попавшие в эту 
область, будут выделены (при условии, что установлен флаг ItemIsSelectable). Действие выполняется только в интерактивном режиме;
 
 
 -  setRubberBandSelectionMode (<Режим>) - задает режим выделения объектов при установленном флаге RubberBandDrag. В параметре <Режим> могут быть указаны 
следующие атрибуты класса QtCore.Qt:
 -  ContainsItemShape (или 0) - объект будет выделен, если все точки объекта находятся внутри области выделения;
 
 -  IntersectsItemShape (или 1) - объект будет выделен, если любая точка объекта попадет в область выделения;
 
 -  ContainsItemBoundingRect (или 2) - объект будет выделен, если охватывающий прямоугольник полностью находится внутри области выделения;
 
 -  IntersectsItemBoundingRect (или 3) - объект будет выделен, если любая точка охватывающего прямоугольника попадет в область выделения.
 
 
   
На следующем шаге мы рассмотрим преобразования между координатами представления и сцены.
Предыдущий шаг 
 
Содержание 
 
Следующий шаг