2016-03-22 12 views
0

私のパネルにハイパーリンクがあります。場合によっては無効にして、ラベルを通常のテキストとして表示する必要があります。wxPythonのwx.Hyperlikctrl()のテキストの色を変更してアンダーラインを削除する方法

self.linking = wx.HyperlinkCtrl(self, -1, "", "~")

私はself.linking.Disable()を使用し、それ以外の場合のためにEnable()を有効にするには、リンクを無効にします。

リンクは無効ですが、ラベルは下線と「青」の色でリンクとして表示されます。

私は色を設定してアンダーラインを削除するいくつかのハイパーリンクメソッドを試しましたが、できませんでした。

wxwidgetsでこれを行う方法はありますか?

可能であれば教えてください。

おかげで無効になった場合のために

答えて

0

は、ちょうどwx.StaticTextを使用しています。 wx.HyperlinkCtrlはハイパーリンクコントロールなので、ハイパーリンクとして表示されます。

if some_condition: 
    link = wx.HyperlinkCtrl(self.window, url="yourlink") 
else: 
    link = wx.StaticText(self.window, label="yourlink") 
+0

、私はまだそれが唯一のhyperlinkctrlであるredefine.butしようとした... – Nithya

+0

@Nithyaは、あなたがそのラベルを作成していないと言っていますか? – Igor

+0

実際にラベルが作成されていますが、問題はサイザーです.SiTextをハイパーリンクのサイザーに追加することはできませんでした。サイザーに追加する方法は他にありません。すべてのサイザーは共通の機能です。最初に呼び出され、そのラベルが割り当てられた後に呼び出されます。 – Nithya

関連する問題