2017-04-11 4 views
0

ボタンやGenButtonの背景色を、線やクロスハッチなどのパターンでペイントする方法について、これまでに幅広く検索しました。私はwx DirectContextの例を見てきましたので、単色ではなくパターンでオブジェクトを描くことができますが、これはボタンオブジェクトの色ではなく特定の図形にしか当てはまらないようです。 dcまたはgcライブラリはこれらのオブジェクトにペイントすることができますか?私は、OnPaintとOnResizeのイベントハンドラを作成する必要があることを知っていますが、ボタン自体にこれを適用するためにいくつかの手順が欠落している可能性があります。WxPython:wx.Brushでボタンの背景を設定する

+0

カラーブラインドにやさしく、パターンを使用すると、使用する色を減らすことができます – NPaz

答えて

0

wx.Buttonオブジェクトは、ネイティブコントロールを表します。そして残念ながら、ネイティブコントロールがどのようにペイントしているかを操作することはできません。

あなたはSetBackgroundColour()/ SetForegroundColour()を試すことができますが、これは可能な限りです。

1

wxPythonパッケージは、コアウィジェットでネイティブウィジェットを可能な限り使用します。したがって、wx.Buttonウィジェットは、ドキュメントに記載されているメソッドでのみ変更できるネイティブウィジェットになります。 Igorが述べたように、SetBackgroundColour()またはSetForegroundColour()を試してみることはできますが、プラットフォームのボタンウィジェットによっては機能しない場合もあります。

本当に必要なのはカスタムウィジェットです。例としてGenericButtonsPlateButtonGradientButtonをチェックすることをおすすめします。 GenericButtonを直接使用して、その背景をペイントすることもできます。

関連する問題