diff options
author | Vadim Toptunov <umnijtony@mail.ru> | 2017-04-05 13:04:08 +0300 |
---|---|---|
committer | ven <vendethiel@hotmail.fr> | 2017-04-05 12:04:08 +0200 |
commit | 134b24a24c175f563bb437af8d1ba5974ad54dbc (patch) | |
tree | c9f2cba0e745a1a9f7b6b84b3643ded5ece83da7 | |
parent | 7b3b415b41040fdad0c05ce5f9f55d89ab10ff2e (diff) |
[pyqt-ru] New translation (#2697)
* Create [pyqt-ru] New translation
* Update [pyqt/ru] pyqt-ru.html.markdown
Update [pyqt/ru] pyqt-ru.html.markdown with the correct filename
* Rename [pyqt-ru]pyqt-ru.html.markdown to pyqt-ru.html.markdown
* Update pyqt-ru.html.markdown
-rw-r--r-- | ru-ru/pyqt-ru.html.markdown | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/ru-ru/pyqt-ru.html.markdown b/ru-ru/pyqt-ru.html.markdown new file mode 100644 index 00000000..7693551c --- /dev/null +++ b/ru-ru/pyqt-ru.html.markdown @@ -0,0 +1,83 @@ +--- +category: tool +tool: PyQT +filename: learnpyqt-ru.py +translator: + - ["Vadim Toptunov", "https://github.com/VadimToptunov"] +--- + +**Qt** - широко известный кросс-платформенный фреймворк для разработки программного обеспечения, +который может быть использован на различных софтварных и хардварных платформах без какого-либо +изменения в коде. Данный фреймворк при этом обладает мощью и скоростью нативных приложений. +Qt и был изначально написан на *C++*. + +Данный текст является адаптацией введения в Qt на C++ под авторством Алексея Ковальчука для pyqt. + + +```python + +def window(): + # Создайте объект приложения + app = QtGui.QApplication(sys.argv) + # Создайте виджет, где будет находиться наш лейбл + w = QtGui.QWidget() + # Добавьте лейбл в виджет + b = QtGui.QLabel(w) + # Задайте текст для лейбла + b.setText("Hello World!") + # Задайте информация о размере и расположении + w.setGeometry(100, 100, 200, 50) + b.move(50, 20) + # Задайте заголовок окна + w.setWindowTitle("PyQt") + # Все ранее написанное выводится на экран + w.show() + # Настройка + sys.exit(app.exec_()) + +if __name__ == '__main__': + window() + +``` + +Для того, чтобы получить более продвинутые функции приложения в pyqt, нам необходимо +обратить внимание на создание дополнительных элементов. Ниже представлено создание всплывающего диалогового окна, которое просит пользователя подтвердить его решение или предоставить какую-либо +информацию. + +```Python +import sys +from PyQt4.QtGui import * +from PyQt4.QtCore import * + + +def window(): + app = QApplication(sys.argv) + w = QWidget() + # Создайте кнопку и прикрепите ее к виджету w + b = QPushButton(w) + b.setText("Press me") + b.move(50, 50) + # Укажите b вызвать эту функцию при клике мышкой + # Заметьте, что в вызове функции отсутствуют "()" + b.clicked.connect(showdialog) + w.setWindowTitle("PyQt Dialog") + w.show() + sys.exit(app.exec_()) + +Данная функция должна создавать диалоговое окно с кнопкой, которая ждет клика по себе +и затем завершает программу. + +def showdialog(): + d = QDialog() + b1 = QPushButton("ok", d) + b1.move(50, 50) + d.setWindowTitle("Dialog") + # Эта модальность сообщает всплывающему окну блокировать родительский элемент, пока он активен + d.setWindowModality(Qt.ApplicationModal) + # Процесс завершается по клику мышкой + b1.clicked.connect(sys.exit) + d.exec_() + +if __name__ == '__main__': + window() +``` |