技術

PyQTでdmg作る(個人メモ)

dmgうさとど

Pythonでdmgの作り方が気になったので、
試してみることにする。
・使用環境
PC:macbookPro M1
OS:macOS Monterey v12.3.1

・開発環境
Python 3.9.12
デスクトップに「mac_app」のフォルダを作成。
端末を開いて、作業する。

①dmgbuildをインストール
pip install dmgbuild

②dmgbuildのソースにそのまま使えるサンプルをダウンロード
wget https://raw.githubusercontent.com/al45tair/dmgbuild/master/examples/settings.py

③Python QTアプリ作成
brew install pyqt5
pip install pyinstaller
「pyqt5_test.py」
以下のコードを作成
————————

import sys
from PyQt5.QtWidgets import QApplication, QWidget
if __name__ == "__main__":
    app = QApplication(sys.argv)
    w = QWidget()
    w.resize(300,100)
    w.setWindowTitle("テスト")
    w.show()
    sys.exit(app.exec_())

————————
python pyqt5_test.py
無事実行できた。
「pyqt5_test2.py」
—————————

import sys
from PyQt5.QtWidgets import (QWidget, QToolTip, QPushButton, QApplication)
from PyQt5.QtGui import QFont
from PyQt5.QtCore import QCoreApplication
class Example(QWidget):
    def __init__(self):
    super().__init__()
    self.initUI()
    def initUI(self):
    QToolTip.setFont(QFont('SansSerif', 10)) #font-familyとfontsizeの指定
    self.setToolTip('This is a <b>QWidget</b> widget')#マウスオンでツールチップを入れる。
    btn = QPushButton('Button', self) #ボタンの生成
    btn.setToolTip('This is a <b>QPushButton</b> widget') # マウスオンでツールチップを入れる。
    btn.clicked.connect(QCoreApplication.instance().quit) # ボタンを押すと画面が閉じる
    btn.resize(btn.sizeHint()) # いい感じのボタンサイズとボタンのエフェクトを指定してくれる。
    btn.move(50, 50)#ボタンのポジションの設定
    self.setGeometry(300, 300, 300, 200)
    self.setWindowTitle('Tooltips')
    self.show()
if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

—————————–
python pyqt5_test_2.py
こちらも無事実行できた。
スタンドアロンのアプリを生成する
pyinstaller –onefile –windowed pyqt5_test.py
pyinstaller –onefile –windowed pyqt5_test2.py
./distに
pyqt5_test
pyqt5_test2
のappができている。
④実行
dmgbuild -s settings.py -D app=./dist/pyqt5_test.app “My Application”
pyqt_test.dmg
dmgbuild -s settings.py -D app=./dist/pyqt5_test2.app “My Application”
pyqt_test2.dmg
実行できた、手軽で面白い。記事を書いてくれた人に感謝。
⑤アイコン画像を変えたい
③の段階でアイコンを変えてみる。
こちらを参考にした。

dmgbuild -s settings.py -D app=./dist/pyqt5_test.app “My Application”
pyqt_test.dmg

この手軽さは感動した。
あれ、③でapp作成でれきれば、
簡単に作れるのかな?
dmg生成は難しいイメージだったけど、
意外と簡単にできたので、面白い。

・参考
【Python入門】PyQt5でGUIを作ろう!導入から使い方まで解説
https://www.sejuku.net/blog/75467
[Mac]自作アプリの配布用ディスクイメージの作り方
https://qiita.com/knoguchi/items/2e71d835ee4c238c9611
PyQt5のインストール【PythonでGUIアプリ作成】
https://self-development.info/
pyqt5%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3
%83%BC%E3%83%AB%E3%80%90python%E3%81%A7gui%E3%82%A2%E3
%83%97%E3%83%AA%E4%BD%9C%E6%88%90%E3%80%91/

ABOUT ME
usatodo
仕事を充実させ、生活を楽しむ「仕事術」について模索中。人を助ける技術を伝承できるようなエンジニアを目指しています。うさみみが生えた白い生物が、日々、電子・情報処理技術に傾倒しています。趣味で気分転換に思い切った活動をしてしまうことも。サイトでは、生活に役立つ小ネタやスマホの豆知識など、いつもの暮らしがちょっとだけ便利になる情報をお届けします。

COMMENT

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA