回答編集履歴

3

モーダルダイアログの挙動について追記

2022/10/07 08:39

投稿

teamikl
teamikl

スコア8664

test CHANGED
@@ -36,6 +36,11 @@
36
36
  こちらの方法 (wxPython側) での原因究明は、あまりお勧めしない方向性です。
37
37
  他に選択肢がある場合は、競合するライブラリの利用は避けた方が無難です。
38
38
 
39
+ 追記: 他GUIライブラリの機能を使う方法では、
40
+ 正常なモーダルダイアログの挙動にならず、親ウィンドウが操作可能になっていて、
41
+ 例えばボタンを複数回クリックすると、ダイアログを閉じてから次のイベントが処理されるというような、
42
+ イベントがスタックしてる状態になってます。
43
+
39
44
 
40
45
  > style の最初や最後に wx.STAY_ON_TOP を付けてみましたが、うまく動作しませんでした。
41
46
  > FileDialog, ShowModal ではなく、Frame, Show で試したときはうまく動作したため、

2

試したことに対するコメント追記

2022/10/07 08:01

投稿

teamikl
teamikl

スコア8664

test CHANGED
@@ -35,3 +35,13 @@
35
35
 
36
36
  こちらの方法 (wxPython側) での原因究明は、あまりお勧めしない方向性です。
37
37
  他に選択肢がある場合は、競合するライブラリの利用は避けた方が無難です。
38
+
39
+
40
+ > style の最初や最後に wx.STAY_ON_TOP を付けてみましたが、うまく動作しませんでした。
41
+ > FileDialog, ShowModal ではなく、Frame, Show で試したときはうまく動作したため、
42
+ > 書き方が間違っているわけではないと思うのですが、、、FileDialog との併用はできない等あるのでしょうか。
43
+
44
+ 有効な FileDialog の style フラグではありません。https://docs.wxpython.org/wx.FileDialog.html
45
+ FileDialog は wxPython のウィジェットで作成されたダイアログ部品という訳ではなく、
46
+ プラットフォーム毎に異なる、ダイアログを呼び出す機能を扱えるようにしたクラスとなってます。
47
+

1

校正

2022/10/07 07:11

投稿

teamikl
teamikl

スコア8664

test CHANGED
@@ -31,8 +31,7 @@
31
31
  但し、システムダイアログに関しては、
32
32
  ウィンドウのフォーカスを制御しているのはシステム側なので、
33
33
  もしかすると、原因がわかれば解消する手段はあるかもしれませんが、
34
- システムダイアログのフォーカスを制御す手段はライブラリでは提供されてません。
34
+ 解決策があったとしても、プラットフォームによって挙動が保証されないといった事が有り得ので
35
35
 
36
- 解決策があったとしても、プラットフォームによって挙動が保証されないといった事が有り得るので、
37
36
  こちらの方法 (wxPython側) での原因究明は、あまりお勧めしない方向性です。
38
37
  他に選択肢がある場合は、競合するライブラリの利用は避けた方が無難です。