Python/PyQt
表示
< Python
Python/PyQtの概要
[編集]PyQt(パイクューティ)は、Pythonで利用できるQtフレームワークのラッパーライブラリであり、GUIアプリケーションの開発をサポートします。Qtは、C++で開発されたマルチプラットフォームのアプリケーションフレームワークであり、PyQtを使用することでPythonからQtの機能を利用することができます。PyQtは、Qtの全ての機能にアクセスできる強力なツールキットであり、デスクトップアプリケーションやグラフィカルなユーザーインターフェースを持つアプリケーションの開発に広く利用されています。
主な機能
[編集]- GUIアプリケーション開発: PyQtは、Qtの各種ウィジェットを利用してGUIアプリケーションを開発するためのモジュールを提供します。ウィンドウ、ボタン、テキストボックス、テーブルなどの各種ウィジェットを組み合わせて、グラフィカルなユーザーインターフェースを簡単に構築できます。
- イベント処理: PyQtは、ユーザーからのイベント(ボタンクリックなど)を処理するための仕組みを提供します。イベントに対するコールバック関数を定義することで、ユーザーの操作に応じてアプリケーションの動作を制御できます。
- グラフィックスとアニメーション: PyQtは、2Dおよび3Dグラフィックスをサポートしており、グラフィックスプログラムを簡単に作成することができます。また、アニメーション機能も提供されており、アプリケーションに動きや効果を追加することが可能です。
- データベースアクセス: PyQtは、データベースとの連携をサポートしており、SQLiteやMySQLなどのデータベースに対してデータの読み書きを行うことができます。
Python/PyQtのコード例
[編集]シンプルなGUIアプリケーションの例
[編集]import sys from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QVBoxLayout app = QApplication(sys.argv) window = QWidget() layout = QVBoxLayout() label = QLabel("Hello, PyQt!") layout.addWidget(label) window.setLayout(layout) window.show() sys.exit(app.exec_())
ボタンクリックイベント処理の例
[編集]import sys from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QLabel, QVBoxLayout def on_button_click(): label.setText("Button Clicked!") app = QApplication(sys.argv) window = QWidget() layout = QVBoxLayout() button = QPushButton("Click Me!") button.clicked.connect(on_button_click) layout.addWidget(button) label = QLabel("Press the button to change this text.") layout.addWidget(label) window.setLayout(layout) window.show() sys.exit(app.exec_())
データベースアクセスの例
[編集]import sys import sqlite3 from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QVBoxLayout # SQLiteデータベースに接続 conn = sqlite3.connect('mydatabase.db') cursor = conn.cursor() # テーブル作成 cursor.execute('CREATE TABLE IF NOT EXISTS mytable (id INTEGER PRIMARY KEY, name TEXT)') # データ挿入 cursor.execute('INSERT INTO mytable (name) VALUES (?)', ('Alice',)) cursor.execute('INSERT INTO mytable (name) VALUES (?)', ('Bob',)) conn.commit() # データ取得 cursor.execute('SELECT * FROM mytable') data = cursor.fetchall() app = QApplication(sys.argv) window = QWidget() layout = QVBoxLayout() for row in data: label = QLabel(row[1]) layout.addWidget(label) window.setLayout(layout) window.show() sys.exit(app.exec_())
PyQtのインストール方法
[編集]PyQtはpipコマンドを使用して簡単にインストールすることができます。以下のコマンドを実行してください:
pip install PyQt5