0

wxPythonでボタンの装飾を変更する方法。通常、ボタンをクリックすると、ボタンに点線が表示されます。そのボタンに点線が表示されないようにする方法はありますか?

ありがとう

4

2 に答える 2

1

プログラムをWindowsで実行していると仮定すると(どのOSを指定していませんが、点線はWindows Classicの外観で使用されます)、点線はフォーカスレクと呼ばれ、ボタンまたはウィジェットをフォーカスされているとマークしているように見えます。これらはシステム設定であり、プログラムは正常に動作しています。wxWidgetsは、基盤となるOSのデフォルトの動作を可能な限りエミュレートすることを目的としています。


アップデート

プログラム内からこの動作を変更することはできないと思います。これはOSに依存し、Classicテーマの標準で正しい動作であるため、wxWidgetsにこの設定があるかどうかは本当に疑わしいです。ただし、フォーカスrectは、デフォルトでは、ほとんどの人が使用しないクラシックルックにのみ表示されます。

Lunaテーマ(XPのデフォルト)に切り替えてみてください。ウィンドウにフォーカスがあるときにTabキーを押し始めない限り、フォーカス長方形が表示されないことがわかります。ちなみに、Tabキーを使用してフォーカスを切り替える場合は、フォーカス長方形が必要です。結局のところ、焦点がどこにあるかを確認する必要があります。そうすれば、EnterキーまたはSpaceキーを押すと、どちらのボタンが押されるかがわかります。誰もがマウスだけを使うわけではありません。

于 2012-07-06T07:26:17.477 に答える
0

たとえばwx.lib.buttons.GenButton、純粋なPythonのカスタムボタンを使用して、外観や感触などを上書きできます。

SetUseFocusIndicatorこれには、点線のフォーカスインジケーターをオフにする方法もあります

于 2012-07-06T11:15:54.677 に答える