GUIをつくろう!でもどうやって?
まだもうちょっと細かいところを作らないといけないけど、基本的な物体検出処理は完成
そろそろ次のフェーズ、GUIの作成に着手したい!
当初はC++、WinRT、XAML、WinUI3で作るのがいいのだろうと思いましたが、どうにも事例や情報が少ない!
WinUI3にはWinUI3 Galleryという見た目とサンプルコードが確認できるMicrosoft謹製アプリがあるのですが、サンプルコードはXAMLとC#でしか書かれてない!
UWPのハローワールドのチュートリアルのドキュメントにも、C#とC++があるのですが、あきらかにボリュームや丁寧さが違うという・・・
同じ言語としておいた方が、GUIと処理が一体化したようなちょっと無理やりなコードもできて、やっつけるにはいいのかなーと思っていたのですが、どうにも一般人はC#で作れというMSの圧を感じます。
C++のプログラムもDLL化することでC#のコードから呼び出せるようなので、C++に続いてC#も知らない言語ではありますが、少しでも情報や事例が多そうなC#でGUIを作ろうかな?
幸い動画を扱うFFmpegは、C++でもffmpeg.exeを呼び出す形になるので、exeを呼び出すだけであればC#から呼び出してもあまり大きな差は無さそうに思います。またC#ならOPENCVよりは日本語との相性も良さそうなので、将来的には少し凝ったこともできるかもしれません。
XAMLがわからない!
GUIはXAMLというXMLみたいなタグで書いていくのですが、これがまたよくわからない!
どうやって書いていけばいい、みたいなのもあんまりなく、そもそも一般人はあまり扱ってない?
また、UWP、WPF、WinUI3と、似て非なるフレームワーク(?)があり、微妙にそのままでは使えなかったりします。
WinUI3は、それまで細分化していたフレームワークを最新化して統合したものではありますが、これまでの細分化の遺産が世の中には多く残っていて、WinUI3に関する情報はやや少なめ?
Qiitaに質問したりして、やっとボタンがボタンらしくなりました。
まだボタンはボタンの形をしているだけで押しても何の反応もありません。
しばらくはXAMLと格闘することになりそうです