記事を書こうと思ったきっかけ
初めての投稿でtkinterを使っていましたが見た目が古くさい感じがしたので代わりに使えそうなGUIライブラリを探していると使いやすそうなライブラリを見つけたので記録として残そうと思いました。
from nicegui import ui
ui.button()
ui.run()
基本的な書き方はui.作りたい部品()、最後にui.run()で表示されます。
ボタンだけでなく、チェックボックスやラジオボタンもui.checkbox(),ui.radio()で作成可能です。
ui.button('check', on_click=lambda: print('hello world!'))
ui.run()
ボタンなどに文字を表示させるときは引数に文字列を指定し、ユーザーからの入力後処理をさせたいときにはon_click, on_changeに処理をさせる関数を指定します。
with ui.row():
ui.button('click', on_click=lambda: output.set_text('ok'))
ui.checkbox('check me!')
ui.icon('home')
output=ui.label('').classes('text-bold')
ui.run()
作った部品を行方向に並べたいときはui.row()を使い,ui.column()を使えば列方向に並べることができます。
with ui.card():
with ui.row():
ui.button('click')
ui.checkbox('check me!')
ui.icon('home')
with ui.row():
ui.button('click')
ui.checkbox('check me!')
ui.icon('home')
with ui.card():
with ui.row():
ui.button('click')
ui.checkbox('check me!')
ui.icon('home')
with ui.column():
ui.button('click')
ui.checkbox('check me!')
ui.icon('home')
ui.run()
ui.card()を使えば、ボタンやチェックボックスをグループ分けして使うことができます。
最後に
niceguiは引数を変更するだけで様々な見た目に変更できるので、今後guiを使うときは活用したいと思います。
ドキュメントにわかりやすく、いろいろな部品の説明がされているので是非見てみてください。