Перейти к содержимому

Pyqt5 stubs что это

  • автор:

Нужна методология разработки кода GUI

Тут подойдёт гибкая методология разработки (agile). Сделай как понял и покажи заказчику. Обсудите и уточните, что же должно быть.

fluorite ★★★★★
( 06.05.22 21:05:21 MSK )

  • Ответить на это сообщение
  • Показать ответы
  • Ссылка

в таких гуях ты рисуешь в canvas — то есть обьект класса холст. он никуда не исчезает — хоть сжимай, хоть разжимай.

создаешь канвас правильным способом, и рисуешь в него. и все.

alysnix ★★★
( 06.05.22 21:06:33 MSK )

  • Ответить на это сообщение
  • Показать ответ
  • Ссылка

Ответ на: комментарий от alysnix 06.05.22 21:06:33 MSK

карочи ищи пример работы с Canvas какого-нить гуя, это и есть то, что тебе надо.

alysnix ★★★
( 06.05.22 21:08:15 MSK )

  • Ответить на это сообщение
  • Ссылка

Ответ на: комментарий от fluorite 06.05.22 21:05:21 MSK

Тут подойдёт гибкая методология разработки (agile)

Сбрось свой код с пояснениями. Язык, любой.

saufesma ★
( 06.05.22 21:14:41 MSK ) автор топика

  • Ответить на это сообщение
  • Показать ответ
  • Ссылка

Ответ на: комментарий от saufesma 06.05.22 21:14:41 MSK

fluorite ★★★★★
( 06.05.22 21:27:47 MSK )

  • Ответить на это сообщение
  • Ссылка

Какова методология разработки кода для следующей задачи

нужно создать окно
поводив в окне мышкой
получаем кривую

Сбрось свой код с пояснениями. Язык, любой.

# Drawings.py # $ sudo apt install python3-pyqt5 # $ python Drawings.py import sys from PyQt5.QtCore import Qt from PyQt5.QtGui import QPainter, QColor from PyQt5.QtWidgets import QApplication, QWidget class MouseTracker(QWidget): def __init__(self): super().__init__() self.initUI() self.setMouseTracking(True) self.setAttribute(Qt.WA_OpaquePaintEvent, True) def initUI(self): self.show() self.posN = None self.posO = None def mouseMoveEvent(self, event): self.posO = self.posN self.posN = event.pos() self.update() def paintEvent(self, event): if self.posN and self.posO: q = QPainter(self) q.setPen(QColor(200, 0, 0)) q.drawLine(self.posO.x(), self.posO.y(), self.posN.x(), self.posN.y()) app = QApplication(sys.argv) ex = MouseTracker() sys.exit(app.exec_()) 

окно сжимаем -> раскрываем, кривая не исчезла
окно сворачиваем -> разворачиваем, кривая не исчезла

Входят в дополнительные DLC по $20 каждый.

EXL ★★★★★
( 06.05.22 21:46:34 MSK )

  • Ответить на это сообщение
  • Показать ответ
  • Ссылка

Нинада никаких окон, устанавливашь compiz или если нельзя расширение для гнома. И на любом варианте накатываешь рисовалку на экран поверх всего. Рисуешь кривые как хоца! С тибя пять тыщ пясот пидисят пят рублёф

LINUX-ORG-RU ★★★★★
( 06.05.22 21:51:47 MSK )
Последнее исправление: LINUX-ORG-RU 06.05.22 21:52:38 MSK (всего исправлений: 1)

  • Ответить на это сообщение
  • Ссылка

Ответ на: комментарий от fluorite 06.05.22 21:05:21 MSK

Тут подойдёт гибкая методология разработки (agile)

Aber ★★★★★
( 06.05.22 22:11:39 MSK )

  • Ответить на это сообщение
  • Ссылка

Ответ на: комментарий от EXL 06.05.22 21:46:34 MSK

Как ты к этому шёл?

saufesma ★
( 06.05.22 22:30:22 MSK ) автор топика

  • Ответить на это сообщение
  • Показать ответ
  • Ссылка

Что значит ОО? Объектно-ориентированность? Но так грамматически сомнительно писать, а два раза букву П потерять в ООП это .

mydibyje ★★★
( 06.05.22 22:33:12 MSK )

  • Ответить на это сообщение
  • Ссылка

Ответ на: комментарий от saufesma 06.05.22 22:30:22 MSK

  1. Родился в Сибири.
  2. Пошёл в школу.
  3. Купил мобильный телефон.
  4. В телефоне был Linux и оболочка на базе Qt 2.
  5. Я заинтересовался как формошлёпить под свой телефон.
  6. По итогу пришлось учить C++, Qt и немного заниматься реверс-инжинирингом.
  7. Позже жизнь заставила учить Python на уровне простого скриптинга.
  8. Совместив все эти знания, скилл поиска в Google и щепотку пасты с StackOverflow я смог написать подобный код под псевдо-ТЗ.

Такого ответа ты ждал? Или что?

EXL ★★★★★
( 06.05.22 22:39:31 MSK )
Последнее исправление: EXL 06.05.22 22:42:58 MSK (всего исправлений: 1)

  • Ответить на это сообщение
  • Показать ответ
  • Ссылка

Ответ на: комментарий от EXL 06.05.22 22:39:31 MSK

У меня уже мозг взрывается от чтения чужого кода. А именно с этой задачей у меня картинка кода в голове не появляется, сам код есть, но не понятно как к нему пришёл автор. Может плохо владею CAPI?

Начитавшись чужого кода я начал писать свой, сомнительно.

Код на CAPI Lispworks.

Ответ который наведет на мысль, а какой именно не знаю.

saufesma ★
( 06.05.22 22:47:37 MSK ) автор топика
Последнее исправление: saufesma 06.05.22 22:48:45 MSK (всего исправлений: 1)

  • Ответить на это сообщение
  • Показать ответы
  • Ссылка

Здесь не принято в теги смотреть. 😀 Продублируй «lisp» в тексте поста.

Gentooshnik ★★★★★
( 06.05.22 22:48:56 MSK )

  • Ответить на это сообщение
  • Ссылка

Ответ на: комментарий от saufesma 06.05.22 22:47:37 MSK

Нет, ну я конечно смог бы решить подобную задачу с помощью какой-нибудь привязки Lisp к SDL, но это выходит за рамки моей зоны комфорта, увы.

EXL ★★★★★
( 06.05.22 22:52:28 MSK )

  • Ответить на это сообщение
  • Показать ответ
  • Ссылка

Ответ на: комментарий от EXL 06.05.22 22:52:28 MSK

Да ничего страшного.

saufesma ★
( 06.05.22 22:56:25 MSK ) автор топика

  • Ответить на это сообщение
  • Ссылка

Ответ на: комментарий от saufesma 06.05.22 22:47:37 MSK

Я только начал осваивать лисп и еще не разобрался в GUI срдствах для него, но судя по быстрому гуглежу это какая-то проприетарная жесть, на которой даже никто за столько лет в инет не выложил туториал как написать свой Paint на лиспе в этом CAPI. Как в CAPI отслеживать движения мыши я вообще не нашел. Так что я бы наверное использовал Ltk, там хоть примеры есть канваса http://www.peter-herth.de/ltk/ltkdoc/node39.html и мыши http://www.peter-herth.de/ltk/ltkdoc/node41.html

mydibyje ★★★
( 06.05.22 23:07:04 MSK )

  • Ответить на это сообщение
  • Показать ответы
  • Ссылка

Если интересует именно мыслепроцесс при решении задачи, то в общем описано тут https://htdp.org/2022-2-9/Book/part_preface.html#(part._sec~3asystematic-design)

mydibyje ★★★
( 07.05.22 20:31:25 MSK )

  • Ответить на это сообщение
  • Показать ответы
  • Ссылка

Ответ на: комментарий от mydibyje 07.05.22 20:31:25 MSK

Спасибо за участие, дело не в книжках, а во мне. Я что-то упускаю, а вот, что не могу понять. Я не вижу как язык работает, именно CAPI. Картинки в голове нет. Может это и есть ответ?

Ltk не так уж прост, там багов пруд пруди, McCLIM то же самое.

saufesma ★
( 07.05.22 21:04:45 MSK ) автор топика

  • Ответить на это сообщение
  • Ссылка

Ответ на: комментарий от mydibyje 07.05.22 20:31:25 MSK

 1 From Problem Analysis to Data Definitions Identify the information that must be represented and how it is represented in the chosen programming language. Formulate data definitions and illustrate them with examples. 2 Signature, Purpose Statement, Header State what kind of data the desired function consumes and produces. Formulate a concise answer to the question what the function computes. Define a stub that lives up to the signature. 3 Functional Examples Work through examples that illustrate the function’s purpose. 4 Function Template Translate the data definitions into an outline of the function. 5 Function Definition Fill in the gaps in the function template. Exploit the purpose statement and the examples. 6 Testing Articulate the examples as tests and ensure that the function passes all. Doing so discovers mistakes. Tests also supplement examples in that they help others read and understand the definition when the need arises—and it will arise for any serious program. Figure 1: The basic steps of a function design recipe 

Вот это у меня и не получается применить с CAPI.

saufesma ★
( 07.05.22 21:59:36 MSK ) автор топика

  • Ответить на это сообщение
  • Ссылка

В чем проблема?PyQt5

выводит: Could not find the Qt platform plugin «windows» in «» This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem. Уже качал PyQt5

Отслеживать

задан 22 ноя 2022 в 14:29

1 1 1 бронзовый знак

у меня все работает, переустанови

22 ноя 2022 в 14:34

можешь подсказать что именно? Просто Qt уже переустанавливал, редактор тоже

22 ноя 2022 в 14:42

редактор и ос назови

22 ноя 2022 в 14:50

VS code, windows

22 ноя 2022 в 14:58

У меня тоже работает. Установлены версии в системе: PyQt5 5.15.7 PyQt5-Qt5 5.15.2 PyQt5-sip 12.11.0 PyQt5-stubs 5.15.6.0

Pyqt5 stubs что это

To install this package run one of the following:
conda install conda-forge::pyqt-stubs

Description

The stub files released within the PyQt5 packages have been modified to allow using them for type-checking via mypy. Improvements over the default stubs include: Signals are properly typed as signals and not as methods QFlags derived classes correctly support all combination operations Many methods accepting an optional None have been annotated so

By data scientists, for data scientists

Mypy stubs for the PyQt5 framework

This repository holds the stubs of the PyQt5 framework. The stub files released within the PyQt5 packages have been modified to allow using them for type-checking via mypy. Improvements over the default stubs include:

  • Signals are properly typed as signals and not as methods
  • QFlags derived classes correctly support all combination operations
  • Many methods accepting an optional None have been annotated so
  • and more.

This repository can always be improved and the authors will appreciate any PRs or Issues that help making this stub-repository more reliable.

Installation

Simply install PyQt5-stubs with pip:

$ pip install PyQt5-stubs 

Or clone the latest version from Github and install it via Python setuptools:

$ git clone https://github.com/python-qt-tools/PyQt5-stubs $ python setup.py install 

Supported Modules

The modules supported by PyQt5-stubs include modules from the PyQt5 package as well as modules from the other packages released by Riverbank Computing (PyQt3D, PyQtCharts, . ). Here is the full list of packages and modules:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *