ikkVisualKit
Overview
Pythonアプリケーション開発用の軽量GUIツールキット。tkinterとcustomtkinterをベースに、ウィンドウ、ダイアログ、システムトレイアプリケーション用の汎用コンポーネントを提供します。
主な機能
- ウィンドウベースクラス - CTkやtkinterベースのウィンドウを簡単に構築
- ダイアログコンポーネント - OK、YesNo、カスタムダイアログなど汎用ダイアログ
- システムトレイ対応 - トレイメニュー、常駐アプリケーション機能
- 画像管理 - パッケージ内の画像リソースを統一的に管理
インストール
pip install ikkVisualKit
Feature
- CustomTkinterベース
- DPIスケーリング対応
- フォームアプリの作成が容易になるBaseクラスの提供
- フォームアプリ向けに
- 常駐(タスクトレイ)アプリの作成を用意するテンプレートの提供
- サイズの大きいカスタムメッセージダイアログの提供
- 常に手前に表示のON/OFF
利用方法
from ikkVisualKit import WindowBaseModan #ファームアプリを作成する場合
from ikkVisualKit import DialogResult #ダイアログを利用する場合
フォームアプリケーションの作成方法
フォームの作成
WindowBaseModanを継承した任意のウインドウクラスを作成します。def _build(self, root):をオーバライドして,super()._build(root)を実行します。show_window()とrun()を実行するとWindowアプリケーションが起動します。
from ikkVisualKit import WindowBaseModan
class TestWindow(WindowBaseModan):
def __init__(self):
super().__init__(
title="MyWindowSample",#アプリ名
version="0.0.0", #バージョン
size=(600, 400), #ウィンドウサイズ
icon_path="resources/icon.dio.ico", #アイコンパス(.ico推奨)
tray_app=False #常駐アプリにしたいならTrue
)
def _build(self, root):
super()._build(root)
# UIパーツの配置
self.btn1 = self.make_ActionButton(16 ,16, image_key="setting.dio") #設定
#ツールチップの付加
self.btn1.tooltip_text = "設定を開く"
#ハンドラの設定
self.btn1.OnClicked += self.on_btn1_click
def on_btn1_click(self):
self.show_ok_dialog(title="ボタンがクリックされました", message="これはテスト用のダイアログです。")
self .WarningBlink() # 警告点滅を開始
@override
def _loadAppState(self):
pass #フォームロード後の処理(継承必須)ウインドウ状態の復元に利用してください
@override
def _backupAppState(self):
pass #フォームクローズ前の処理(継承必須)ウインドウ状態保存に利用してください
カスタムボタン
- 大中小3タイプのボタンサイズを用意
- ツールチップテキストをプロパティとして用意
- マウスホバー時の色変更
- ボタンに付与するアイコン画像を予め用意
小さいアイコン付きボタン
以下のコードは小さいサイズのアイコン付きボタンを作成する例です。 コンストラクタのx,yに配置する座標を指定し、image_keyでアイコンを指定してください。 ツールチップテキストと、イベントハンドラを後から登録することが可能です。
self.btnSetting = self.make_ActionButton(x=16 , y=176, image_key="setting.dio")
self.btnSetting.tooltip_text = "設定を開く" #ツールチップテキスト設定
self.btnSetting.command = self.on_setting #ボタン押下で実行する関数の登録
大きいサイズのボタン
大きいサイズのボタンを利用する場合ばsize_rank=1もしくはsize_rank=2を指定してください。また、text=で指定した文字がアイコンと共に表示されます。
self.btnScan = self.make_ActionButton(624, 16 , image_key="start.dio",size_rank=2,text="検査スタート")
self.btnClear = self.make_ActionButton(784, 16 , image_key="clear.dio",size_rank=1,text="クリア")
アイコンの一覧
| Name | Image |
|---|---|
| alert.dio | |
| alwaysTop.dio | |
| clear.dio | |
| disconnect.dio | |
| error.dio | |
| focus.dio | |
| folder.dio | |
| goto.dio | |
| handyReader.dio | |
| help.dio | |
| info.dio | |
| link.dio | |
| lock.dio | |
| log.dio | |
| open.dio | |
| recipe.dio | |
| save.dio | |
| search.dio | |
| setting.dio | |
| start.dio | |
| swap.dio | |
| unlock.dio | |
| warning.dio |
常に手前に表示
ui.isAlwaysOnTop = True
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
ikkvisualkit-0.2.0.tar.gz
(141.9 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
ikkvisualkit-0.2.0-py3-none-any.whl
(171.0 kB
view details)
File details
Details for the file ikkvisualkit-0.2.0.tar.gz.
File metadata
- Download URL: ikkvisualkit-0.2.0.tar.gz
- Upload date:
- Size: 141.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.12.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fc8190a6274d3d28ce9e9b9bdfb2816ccd7c48b991923820da50c27d1e0aea5d
|
|
| MD5 |
c162b5252af28feb573fd2211b1bc0c4
|
|
| BLAKE2b-256 |
d27a7cf812715e3e61d0b0dc8cb8c0a07d5c551d1f00f3207fafde610ce09ec5
|
File details
Details for the file ikkvisualkit-0.2.0-py3-none-any.whl.
File metadata
- Download URL: ikkvisualkit-0.2.0-py3-none-any.whl
- Upload date:
- Size: 171.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.12.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5b7acb7461a5c638f2e5cd6e0f1a826fc131c8252d6cba1f20d1738052e0847f
|
|
| MD5 |
f84199b141ca7e3f5933c1b2cffa1af4
|
|
| BLAKE2b-256 |
7acbc817a8b9a879d5e5bf12a63b784704291b71ef81e95b7b20883d4d7574f8
|