PyQt5をやってみよう! とおもって色々と探してみました。そしてついにいい資料にであえたので、そのメモと感動を記録しておきます! っておおげさ(笑)
PyQt5チュートリアルの資料について
ZetCodeのPyQt5チュートリアルが素晴らしかったので、これを使って学習しました。この記事ではPyQt5の初学者を対象に、PyQt5でのプログラミングを各部品(ウィジェットといいます)ごとに一つ一つ実際に動くコードを掲載、説明しています。説明も最低限に絞られていて、とても読みやすい文章です。PyQt5をやってみようという方にはうってつけのコンテンツです。写経するにもコードもシンプルで、写経にも最適です。
翻訳があるかな、と思って探したのですが見つからなかったので、目次だけでもと思って日本語にしてみました。ついでに各章のセクションと、その学習対象のPyQt5オブジェクトもまとめておきました。
なおZetCodeでは他にも色々とチュートリアルが掲載されているので、これからもお世話になりそうです。ざっと読んで概要を把握するにも便利なのに、なんであまり有名じゃないんだろう…
本文の英語はGoogle Dictionaryなどのブラウザの辞書ツールを使えば、意外と簡単に読めるシンプルな文章でした。
対象バージョン
項目 | バージョン |
---|---|
言語 | Python 3.x |
GUI FW | Qt 5 |
Pythonバインディング | PyQt5 |
PyQt5チュートリアル 目次
タイトル | 日本語 | 主要なPyQt5オブジェクト |
---|---|---|
Prelude | まえがき | |
1.Introduction to PyQt5 | 1.PyQtの紹介 | |
– About PyQt5 | – PyQt5とは | |
– PyQt4 and PyQt5 differences | – PyQt4とPyQt5の違い | |
– Python | – Pythonとは | |
2.First programs | 2.初めてのプログラム | |
– Simple example | – シンプルな例 | QApplication, QWidget |
– An application icon | – アプリケーションのアイコン | QIcon |
– Showing a tooltip | – ツールチップの表示 | QToolTip |
– Closing a window | – ウィンドウを閉じる | QCoreApplication |
– Message Box | – メッセージボックス | QMessageBox |
– Centering window on the screen | – ウィンドウのセンタリング (対デスクトップ) |
QDesktopWidget |
3.Menus and toolbars | 3.メニューとツールバー | |
– Main Window | – メインウィンドウ | QMainWindow |
– Statusbar | – ステータスバー | QMainWindow |
– Menubar | – メニューバー | QAction, qApp |
– Toolbar | – ツールバー | QAction, qApp |
– Putting it together | – 全部一緒にのせてみる | QTextEdit |
4.Layout management | 4.レイアウト管理 | |
– Absolute positioning | – 絶対位置指定 | QLabel |
– Box layout | – ボックスレイアウト | QHBoxLayout, QVBoxLayout |
– QGridLayout | – グリッドレイアウト | QGridLayout |
– Review example | – レビューアプリケーション | QLineEdit |
5.Events and signals | 5.イベントとシグナル | |
– Events | – イベント | - |
– Signals & slots | – シグナルとスロット | QLCDNumber, QSlider |
– Reimplementing event handler | – イベントハンドラの再実装 | Qt |
– Event sender | – イベント発行者 | (QtObject.sender()) |
– Emitting signals | – シグナルの発火 | pyqtSignal, QObject |
6.Dialogs | 6.ダイアログ | |
– QInputDialog | – 入力用ダイアログ | QInputDialog |
– QColorDialog | – 色選択ダイアログ | QFrame, QColorDialog |
– QFontDialog | – フォント選択ダイアログ | QFontDialog, QSizePolicy |
– QFileDialog | – ファイル選択ダイアログ | QFileDialog |
7.Widgets | 7.ウィジェット | |
– QCheckBox | – チェックボックス | QCheckBox |
– Toggle button | – トグルボタン | QColor |
– QSlider | – スライダー | QSlider, QPixmap |
– QProgressBar | – プログレスバー | QProgressBar, QBasicTimer |
– QCalendarWidget | – カレンダー | QCalendarWidget, QDate |
8.Widgets II | 8.ウィジェット2 | |
– QPixmap | – 画像を扱うQPixmap | QPixmap |
– QLineEdit | – ラインエディタ | QLineEdit |
– QSplitter | – スプリッター | QFrame, QSplitter, |
– QComboBox | – コンボボックス | QComboBox |
9.Drag and drop | 9.ドラッグ&ドロップ | |
– Simple drag and drop | – 簡単なドラッグ&ドロップ | (QWidget.setAcceptDrops() |
– Drag & drop a button widget | – ボタンをドラッグ&ドロップ | QDrag, QMimeData |
10.Painting | 10.グラフィックの描画 | |
– Drawing text | – テキストの描画 | QPainter, QColor, QFont |
– Drawing points | – 点の描画 | QPainter, QColor, QPen |
– Colours | – 色 | QPainter, QColor, QBrush |
– QPen | – ペン | QPainter, QColor, QPen |
– QBrush | – ブラシ | QPainter, QBrush |
11.Custom widgets | 11.カスタムウィジェットの作成 | |
– Burning widget | – CD作成ソフトの画面 | (新出オブジェクトなし) |
12.The Tetris game | 12.テトリス | |
– Tetris | – テトリス | (新出オブジェクトなし) |
参考サイト
- ZetCode, tutorials for programmers
PyQt5 tutorial - learn GUI programming with PyQt5
PyQt5の良質なチュートリアル。各部品についてシンプルな使い方を説明していて、初学者にわかりやすい。ZetCodeでは他にもいいチュートリアルが揃っているので、また今度使ってみたいです。Google Dictionary (by Google) - Chrome ウェブストア
これ、単語をダブルクリックすると意味をポップアップしてくれるので、とっても便利です!
気づいたこと、不具合、ご意見など、コメント待ってます!