이 (wxPython을 2.8.11.0, 파이썬 2.7.1+, 우분투 11.04를 사용하여 테스트, wxglade
생성),이 출력을 얻을 인스턴스화 중 레이블에서 은 여전히 이며 버튼을 누르면 렌더링됩니다. 그 효과를 어떻게 제거 할 수 있습니까? 라디오 버튼을 전체적으로 활성 상태로 유지하면서 레이블 만 비활성화 할 수 있습니까? 라디오 버튼이 선택되었는지 여부에 관계없이 radiobuttons circle에서 렌더링 한 다른 것은 원하지 않습니다.파이썬 wx에서 라디오 버튼 레이블의 시각적 강조 기능을 비활성화 하시겠습니까? 나는 텍스트를 제거하더라도</p> <p><img src="https://i.stack.imgur.com/sRBH2.png" alt="test.png"></p> <p>: 아래 게시 된 코드를 사용하여
EDIT : 라디오 버튼 원에 의해 렌더링 된 작은 사각형이 초점을 맞추기위한 것임을 발견했습니다. 질문은 다음과 같을 수 있습니다 : 다른 모든 기능을 유지하면서 라디오 버튼의 초점 표시를 비활성화 할 수 있습니까?
EDIT2 : 사이드 질문 : 버튼의 원을 항상 스페이서의 가운데에 가운데에 배치하려면 어떻게해야합니까?
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# generated by wxGlade 0.6.3 on Tue Jan 6 03:40:06 2015
import wx
# begin wxGlade: extracode
# end wxGlade
class MyFrame(wx.Frame):
def __init__(self, *args, **kwds):
# begin wxGlade: MyFrame.__init__
kwds["style"] = wx.DEFAULT_FRAME_STYLE
wx.Frame.__init__(self, *args, **kwds)
self.radio_btn_1 = wx.RadioButton(self, -1, "")
self.radio_btn_2 = wx.RadioButton(self, -1, "")
self.radio_btn_3 = wx.RadioButton(self, -1, "")
self.__set_properties()
self.__do_layout()
# end wxGlade
def __set_properties(self):
# begin wxGlade: MyFrame.__set_properties
self.SetTitle("Test Radiobuttons")
self.SetSize((160, 100))
# end wxGlade
def __do_layout(self):
# begin wxGlade: MyFrame.__do_layout
sizer_1 = wx.BoxSizer(wx.VERTICAL)
sizer_2 = wx.BoxSizer(wx.HORIZONTAL)
sizer_2.Add(self.radio_btn_1, 1, wx.EXPAND|wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL, 0)
sizer_2.Add(self.radio_btn_2, 1, wx.EXPAND|wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL, 0)
sizer_2.Add(self.radio_btn_3, 1, wx.EXPAND|wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL, 0)
sizer_1.Add(sizer_2, 1, wx.EXPAND, 0)
self.SetSizer(sizer_1)
self.Layout()
# end wxGlade
# end of class MyFrame
if __name__ == "__main__":
app = wx.PySimpleApp(0)
wx.InitAllImageHandlers()
frame_1 = MyFrame(None, -1, "")
app.SetTopWindow(frame_1)
frame_1.Show()
app.MainLoop()