C#ATIA

↑タイトル詐欺 主にFusion360API 偶にCATIA V5 VBA(絶賛ネタ切れ中)

Python

ルーティングを行いたい2

こちらの続きです。 ルーティングを行いたい1 - C#ATIA こちらも関連してます。 Canvasでon_hoverイベント3 - C#ATIA早い話が、くっ付けました。 # python using-flet import flet as ft import flet.canvas as cv import math def main(page: ft.Page): can…

ルーティングを行いたい1

あまり複雑にはしたくなかったのですが、どうしても1画面では 無理そうなため、ルーティングを行う事にします。幸い以前にルーティングのサンプルを読んでいたので、こちらを お借りしました。 Fletを試す(3) - 画面遷移(ルーティング)の調査 - Qiita理解…

Canvasでon_hoverイベント3

こちらの続きです。 Canvasでon_hoverイベント2 - C#ATIAtextfieldに"x,y,直径"を入力するとそれに該当する円を描くように 修正します。 TextField | Flet 描かれた円上でホバーすると色が変わります。 # python using-flet import flet as ft import flet.c…

Canvasでon_hoverイベント2

こちらの続きです。 Canvasでon_hoverイベント1 - C#ATIA単にマウスカーソルの座標値だけでは無く、Canvas内の要素上の 判断を付け加えます。shapeの中でもCircleを利用したいです。 Canvas | Flet shape自体でon_hoverイベントが利用出来ると楽なのですが、…

Canvasでon_hoverイベント1

やっと出来た・・・。ちょっと2DCAD的な画面を作りたいと思っているのですが、fletの場合は Canvasを利用するのだろうと思います。 Canvas | FletImageを利用してsvgをゴリゴリ作って・・・とも思いましたが、Canvasの 方が楽そうです。そこでこの様な(セン…

コントロールにコンテキストメニューを追加したい2

こちらの続きです。 コントロールにコンテキストメニューを追加したい1 - C#ATIAコンテキストメニュー代わりにアラートを表示させてみました。 import flet as ft def main(page: ft.Page): def close_dlg(e): dlg_modal.open = False page.update() dlg_mod…

コントロールにコンテキストメニューを追加したい1

コントロールにコンテキストメニュー(右クリックのメニュー)を 追加したい。最悪、出来ない様であればボタンを配置しますが、 イチイチボタンを配置するとスペースが狭くなるので避けたいのが 本音です。コントロールそのものにコンテキストメニューを表示す…

スクロールバーを使いたい2

こちらの続きです。 スクロールバーを使いたい1 - C#ATIAcolumnの中にD&Dのコントロールを配置します。 ft.Draggableを他のコントロールのcontentに入れてしまうと、 D&D出来なかった事が度々あったのでそちらの確認です。CharacterクラスとDragAndDropItem…

スクロールバーを使いたい1

コンテンツが多い場合、スクロールバーを利用出来るようにしたい のですサンプル探した所、公式のものが有りました。 examples/column-scroll.py at main · flet-dev/examples · GitHub https://www.youtube.com/watch?v=ooDiZAiIVUo何でこんなに清楚に書け…

ツールツリー

こちらの続きです。 ツールクラスとマネージャー - C#ATIAツールを管理するツールマネージャーとD&Dリストビューを 組み合わせました。D&Dリストビューはこちらを成長させたものです。 D&Dで入れ替わるリストビュー4 - C#ATIA既にコードが肥大化し、とても…

ツールクラスとマネージャー

これを作らないと先に進まない気がしてきたので、機能不足ながら、 取りあえず作りました。 import json class Tool(): ''' ツール ''' def __init__(self, infos: dict) -> None: self._type = infos['type'] self._dia = infos["dia"] self._feed = infos[…

D&Dで入れ替わるリストビュー4

こちらの続きです。 D&Dで入れ替わるリストビュー3 - C#ATIAほぼ進展ないのですが、コントロールのdataに文字列ではなく、 オブジェクト的なものを代入出来るものかどうかをテストしました。 # python using-flet import flet as ft class Character(): def…

D&Dで入れ替わるリストビュー3

こちらの続きです。 D&Dで入れ替わるリストビュー2 - C#ATIA 欲しかった動作が出来たような気がします。 左はいそのグループで、右はさくらグループです。 あぁ境界線ぐらい設けるべきでしたね。 お互いのグループ内での入れ替えはOKです。 しかし、いその…

D&Dで入れ替わるリストビュー2

こちらの続きです。 D&Dで入れ替わるリストビュー1 - C#ATIAListViewでは無く、ListTileの方が綺麗だからそちらを使おうと 試したのですが、ちょっと思った様な書き方が出来ずに断念。 (恐らく力量不足)結局ListViewにしてみた所、前回のものがほぼ流用出…

D&Dで入れ替わるリストビュー1

デモ用の社内アプリを社内で公開したので、ちょっと時間が 確保出来そうなので次のものに取り組みます。リスト表示された項目をドラッグアンドドロップで、入れ替わるような 物が欲しいです。こんな感じです。 JavaScriptとHTMLを使ってドラッグアンドドロッ…

auto-py-to-exe

大まかに社内アプリが出来てきたので、exeファイル化して 確認作業中です。こちらのサイトを参考に"auto-py-to-exe"を利用させてもらっています。 Pythonだけでクロスプラットフォームなアプリを作れるFletについて - Qiita これだけでexeファイル出来上がる…

FilePickerのデフォルトファイル名を動的に設定したい

こちらにあるサンプルは複数選択を行うFilePickerです。 FilePicker | Fletデータを保存する機能を付けたいので、ファイル保存ダイアログとして 変更しました。 # python using-flet import flet as ft def main(page: ft.Page): def save_file_result(e: ft…

ファイルが"読み取り専用"か調べ、切り替える

"読み取り専用"は、ファイルのプロパティを開いた際の ここのお話です。 VBAであれば、この辺で調べられますね。 Office TANAKA - FileSystemObject[Attributesプロパティ] 簡単に見つかると思ったのですが、見つからず・・・。 言葉のニュアンスの問題なの…

日付を判断する

こちらで使った文字を日付として判断するis_date関数の お話です。 Fletのテキストフィールドでのバリデーション2 - C#ATIA必要だったため、もうちょっと改修します。datetime.strptimeメソッドの場合、 '2023-05-22'は日付として変換出来ますが、 '2023/05/…

Fletのテキストフィールドでのバリデーション2

こちらの続きです。 Fletのテキストフィールドでのバリデーション1 - C#ATIAこんな感じっぽいです。 #python import flet as ft from datetime import datetime class ValidateTextField(ft.UserControl): ''' バリデーション付きテキストフィールド ''' def…

Fletのテキストフィールドでのバリデーション1

文字を入力した際のバリデーションをしたいんです。例えばマクロで要素を選択してOKボタンを押すと"平面を選択して下さい!"とか、 ファイルを開こうとしてフォルダの深い階層のファイルを選択してOKボタンを 押すと”現在のファイルは変更されています。それ…

FletAppで終了時のイベントを取得したい2

こちらの続きです。 FletAppで終了時のイベントを取得したい1 - C#ATIA前回思い付きコメントした事を実装しました。 #python import flet as ft def main(page: ft.Page): set_page(page) page.add( ft.ElevatedButton( text='押すと終了', on_click=lambda …

FletAppで終了時のイベントを取得したい1

この辺りを見たり Introduction | Flet こちらのIssuesを見たりしているのですが、 Issues · flet-dev/flet · GitHub 見つからずに困っています。(見落としの可能性あり)テスト用にこの様なものを作りました。 (Fusion360APIと違い、素のpythonは実行する…

社内用アプリ

先日までのものを諦めました。 練習として取り組んでいましたが、能力が不足し過ぎで完全に詰みました。Fletを利用したい一番の目的は、社内用のアプリの作成です。 練習ばかりに時間を取られて進まないので、必要なものを作りつつ 悩む事にします。かなり不…

FletでReactチュートリアルを真似る6

こちらの続きです。 FletでReactチュートリアルを真似る5 - C#ATIAStateのリフトアップです。 チュートリアル:React の導入 – ReactSquareクラスのコンストラクタでStateを受け取る様にしました。 class Square(ft.UserControl): def __init__(self, state:…

FletでReactチュートリアルを真似る5

こちらの続きです。 FletでReactチュートリアルを真似る4 - C#ATIAそうか、と思い書き換えました。 #python import flet as ft from state import State class Square(ft.UserControl): def __init__(self): super().__init__(self) self.state = State(None…

FletでReactチュートリアルを真似る4

こちらの続きです。 FletでReactチュートリアルを真似る3 - C#ATIAhatenaがメンテナンスになっていたので投げていなかったのですが、もう何度も 作り直してます・・・。悩みに悩んだ末、こちらの素晴らしいStateクラスをお借りしました。 Python(Flet)でリア…

FletでReactチュートリアルを真似る3

こちらの続きです。 FletでReactチュートリアルを真似る2 - C#ATIAこちら相当の変更をしたつもりですが、やっぱり無理有ります。 チュートリアル:React の導入 – Reactまずは、説明通りにクリックイベントを追加し、’click’の文字を出力します。 Squareクラ…

FletでReactチュートリアルを真似る2

こちらの続きです。 FletでReactチュートリアルを真似る1 - C#ATIA やっぱりprops,stateが無いので、無理が有る・・・。こちらを進めました。 チュートリアル:React の導入 – ReactBoardクラスのrenderSquareメソッドを修正します。 class Board(ft.UserCon…

FletでReactチュートリアルを真似る1

Fletのチュートリアルが、"コード長いからgithubからコピペして!" と 言う状態なので、あまりお勉強にならなそうな気がしているので、 React公式のチュートリアルをFletで出来ないものか?と挑戦中です。 元のReact公式チュートリアルはこちらです。 チュー…